diff --git a/focuspoints.lrdevplugin/FocusPoint.lua b/focuspoints.lrdevplugin/FocusPoint.lua index 566ea49..4c65928 100644 --- a/focuspoints.lrdevplugin/FocusPoint.lua +++ b/focuspoints.lrdevplugin/FocusPoint.lua @@ -17,6 +17,7 @@ local LrSystemInfo = import 'LrSystemInfo' local LrFunctionContext = import 'LrFunctionContext' local LrApplication = import 'LrApplication' +local LrApplicationView = import 'LrApplicationView' local LrDialogs = import 'LrDialogs' local LrView = import 'LrView' local LrColor = import 'LrColor' @@ -37,8 +38,23 @@ local function showDialog() local photoView = nil local dialogScope = nil local rendererTable = nil - - -- throw up this dialog as soon as possible as it blocks input which keeps the plugin from potentially launching + local switchedToLibrary = nil + + -- only on WIN (issue #199): + -- when launched in Develop module switch to Library to enforce that a preview of the image is available + -- must switch to loupe view because only in this view previews will be rendered + -- perform module switch as early as possible to give Library time to create a preview if none exists + if WIN_ENV then + local moduleName = LrApplicationView.getCurrentModuleName() + if moduleName == "develop" then + LrApplicationView.switchToModule("library") + LrApplicationView.showView("loupe") + switchedToLibrary = true + LrTasks.sleep(2.5) -- timing-specific; might need to be increased on certain systems. Perhaps make it configurable? + end + end + + -- throw up this dialog as soon as possible as it blocks input which keeps the plugin from potentially launching -- twice if clicked on really quickly -- let the renderer build the view now and show progress dialog LrFunctionContext.callWithContext("innerContext", function(dialogContext) @@ -50,7 +66,7 @@ local function showDialog() functionContext = dialogContext, } dialogScope:setIndeterminate() - + if (targetPhoto:checkPhotoAvailability()) then local photoW, photoH = FocusPointDialog.calculatePhotoDimens(targetPhoto) rendererTable = PointsRendererFactory.createRenderer(targetPhoto) @@ -59,21 +75,21 @@ local function showDialog() if photoView == nil then errorMsg = "No Focus-Point information found" end - else + else errorMsg = "Unmapped points renderer" end - else + else errorMsg = "Photo is not available. Make sure hard drives are attached and try again" end end) LrTasks.sleep(0) -- this actually closes the dialog. go figure. - + -- by displaying the error outside of the dialogContext, it allows the progress dialog to close if (errorMsg ~= nil) then LrDialogs.message(errorMsg, nil, nil) return end - + if (dialogScope:isCanceled() or photoView == nil) then return end @@ -86,7 +102,11 @@ local function showDialog() contents = FocusPointDialog.createDialog(targetPhoto, photoView) } rendererTable.cleanup() - + + if WIN_ENV and switchedToLibrary then + LrApplicationView.switchToModule("develop") + end + end) end diff --git a/focuspoints.lrdevplugin/Info.lua b/focuspoints.lrdevplugin/Info.lua index de72e18..c4c2b52 100644 --- a/focuspoints.lrdevplugin/Info.lua +++ b/focuspoints.lrdevplugin/Info.lua @@ -53,7 +53,7 @@ return { }, }, - VERSION = { major=2, minor=0, revision=0, build=1, }, + VERSION = { major=2, minor=1, revision=0, build=0, }, LrPluginInfoProvider = 'FocusPointsInfoProvider.lua', diff --git a/focuspoints.lrdevplugin/bin/exiftool.exe b/focuspoints.lrdevplugin/bin/exiftool.exe index 5db5ed1..d9bd09b 100755 Binary files a/focuspoints.lrdevplugin/bin/exiftool.exe and b/focuspoints.lrdevplugin/bin/exiftool.exe differ diff --git a/focuspoints.lrdevplugin/bin/exiftool/README b/focuspoints.lrdevplugin/bin/exiftool/README index ae4f7b5..b9a0782 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/README +++ b/focuspoints.lrdevplugin/bin/exiftool/README @@ -109,8 +109,8 @@ your home directory, then you would type the following commands in a terminal window to extract and run ExifTool: cd ~/Desktop - gzip -dc Image-ExifTool-13.10.tar.gz | tar -xf - - cd Image-ExifTool-13.10 + gzip -dc Image-ExifTool-13.15.tar.gz | tar -xf - + cd Image-ExifTool-13.15 ./exiftool t/images/ExifTool.jpg Note: These commands extract meta information from one of the test images. @@ -167,7 +167,7 @@ for calculating digest values and providing other features listed below: COPYRIGHT AND LICENSE -Copyright 2003-2024, Phil Harvey +Copyright 2003-2025, Phil Harvey This is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/exiftool b/focuspoints.lrdevplugin/bin/exiftool/exiftool index 1e58e5e..1d52aeb 100755 --- a/focuspoints.lrdevplugin/bin/exiftool/exiftool +++ b/focuspoints.lrdevplugin/bin/exiftool/exiftool @@ -11,7 +11,7 @@ use strict; use warnings; require 5.004; -my $version = '13.10'; +my $version = '13.15'; # add our 'lib' directory to the include list BEFORE 'use Image::ExifTool' my $exePath; @@ -641,7 +641,7 @@ for (;;) { } # require MWG module if used in any argument # (note: doesn't cover the -p option because these tags will be parsed on the 2nd pass) - $useMWG = 1 if not $useMWG and grep /^mwg:/i, @tags, @requestTags; + $useMWG = 1 if not $useMWG and grep /^([--_0-9A-Z]+:)*1?mwg:/i, @tags, @requestTags; if ($useMWG) { require Image::ExifTool::MWG; Image::ExifTool::MWG::Load(); @@ -1093,7 +1093,7 @@ for (;;) { # prevent processing file unnecessarily for simple case of failed '$ok' or 'not $ok' $cond =~ /^\s*(not\s*)\$ok\s*$/i and ($1 xor $rtnValPrev) and $failCondition=1; # add to list of requested tags - push @requestTags, $cond =~ /\$\{?((?:[-\w]+:)*[-\w?*]+)/g; + push @requestTags, $cond =~ /\$\{?((?:[-_0-9A-Z]+:)*[-_0-9A-Z?*]+)/ig; push @condition, $cond; next; } @@ -1181,7 +1181,7 @@ for (;;) { if ($pass) { LoadPrintFormat($fmt, $1 || $binaryOutput); # load MWG module now if necessary - if (not $useMWG and grep /^mwg:/i, @requestTags) { + if (not $useMWG and grep /^([-_0-9A-Z]+:)*1?mwg:/i, @requestTags) { $useMWG = 1; require Image::ExifTool::MWG; Image::ExifTool::MWG::Load(); @@ -1380,11 +1380,11 @@ for (;;) { push @newValues, { SaveCount => ++$saveCount }; } push @newValues, $_; - if (/^mwg:/i) { + if (/^([-_0-9A-Z]+:)*1?mwg:/i) { $useMWG = 1; - } elsif (/^([-\w]+:)*(filename|directory|testname)\b/i) { + } elsif (/^([-_0-9A-Z]+:)*(filename|directory|testname)\b/i) { $doSetFileName = 1; - } elsif (/^([-\w]+:)*(geotag|geotime|geosync|geolocate)\b/i) { + } elsif (/^([-_0-9A-Z]+:)*(geotag|geotime|geosync|geolocate)\b/i) { if (lc $2 eq 'geotime') { $addGeotime = ''; } else { @@ -1402,25 +1402,23 @@ for (;;) { if ($setTagsFile) { push @{$setTags{$setTagsFile}}, $_; if ($1 eq '>') { - $useMWG = 1 if /^(.*>\s*)?mwg:/si; + $useMWG = 1 if /^(.*>\s*)?([-_0-9A-Z]+:)*1?mwg:/si; if (/\b(filename|directory|testname)#?$/i) { $doSetFileName = 1; } elsif (/\bgeotime#?$/i) { $addGeotime = ''; } } else { - $useMWG = 1 if /^([^<]+<\s*(.*\$\{?)?)?mwg:/si; - if (/^([-\w]+:)*(filename|directory|testname)\b/i) { + $useMWG = 1 if /^([^<]+<\s*(.*\$\{?)?)?([-_0-9A-Z]+:)*1?mwg:/si; + if (/^([-_0-9A-Z]+:)*(filename|directory|testname)\b/i) { $doSetFileName = 1; - } elsif (/^([-\w]+:)*geotime\b/i) { + } elsif (/^([-_0-9A-Z]+:)*geotime\b/i) { $addGeotime = ''; } } } else { my $lst = s/^-// ? \@exclude : \@tags; - unless (/^([-\w*]+:)*([-\w*?]+)#?$/) { - Warn(qq(Invalid TAG name: "$_"\n)); - } + Warn(qq(Invalid TAG name: "$_"\n)) unless /^([-_0-9A-Z*]+:)*([-_0-9A-Z*?]+)#?$/i; push @$lst, $_; # (push everything for backward compatibility) } } @@ -1763,9 +1761,11 @@ if (@newValues) { $wrn and Warning($mt, $wrn); } # exclude specified tags - foreach (@exclude) { - $mt->SetNewValue($_, undef, Replace => 2); - $needSave = 1; + unless ($csv) { + foreach (@exclude) { + $mt->SetNewValue($_, undef, Replace => 2); + $needSave = 1; + } } unless ($isWriting or $outOpt or @tags) { Warn "Nothing to do.\n"; @@ -2296,6 +2296,10 @@ sub GetImageInfo($$) $et->Options(Duplicates => 1, Sort => "Group$showGroup", Verbose => 0); $et2 = Image::ExifTool->new; $et2->Options(%{$$et{OPTIONS}}); + # must set list options specifically because they may have been + # set incorrectly from deprecated List settings + $et2->Options(ListSep => $$et{OPTIONS}{ListSep}); + $et2->Options(ListSplit => $$et{OPTIONS}{ListSplit}); @found2 = @foundTags; $info2 = $et2->ImageInfo($file2, \@found2); } else { @@ -2352,14 +2356,15 @@ sub GetImageInfo($$) # print differences if requested if (defined $diff) { - my (%done2, $wasDiff, @diffs, @groupTags2); + my (%done, %done2, $wasDiff, @diffs, @groupTags2); my $v = $verbose || 0; print $fp "======== diff < $file > $file2\n"; my ($g2, $same) = (0, 0); # start with $g2 false, but not equal to '' to avoid infinite loop for (;;) { + my ($g, $tag2, $i, $key, @dupl, $val2, $t2, $equal, %used); my $tag = shift @foundTags; - my ($g, $tag2); if (defined $tag) { + $done{$tag} = 1; $g = $et->GetGroup($tag, $showGroup); } else { for (;;) { @@ -2369,7 +2374,6 @@ sub GetImageInfo($$) } } if ($g ne $g2) { - my $t2; # add any outstanding tags from diff file not yet handled in previous group ($g2) foreach $t2 (@groupTags2) { next if $done2{$t2}; @@ -2408,33 +2412,50 @@ sub GetImageInfo($$) my $val = $et->GetValue($tag); next unless defined $val; # (just in case) my $name = GetTagName($tag); - # get matching tag key from diff file + my $desc = $outFormat < 1 ? $et->GetDescription($tag) : $name; + # get matching tag key(s) from diff file my @tags2 = grep /^$name( |$)/, @groupTags2; - $name = $et->GetDescription($tag) if $outFormat < 1; - my ($val2, $t2); - foreach $t2 (@tags2) { +T2: foreach $t2 (@tags2) { next if $done2{$t2}; $tag2 = $t2; $val2 = $et2->GetValue($t2); + next unless defined $val2; + IsEqual($val, $val2) and $equal = 1, last; + # look ahead for upcoming duplicate tags in this group to see + # if any would later match this value (and skip those for now) + if ($$et{DUPL_TAG}{$name} and not @dupl) { + for ($i=0, $key=$name; $i<=$$et{DUPL_TAG}{$name}; ++$i, $key="$name ($i)") { + push @dupl, $key unless $done{$key} or $g ne $et->GetGroup($key, $showGroup); + } + @dupl = sort { $$et{FILE_ORDER}{$a} <=> $$et{FILE_ORDER}{$b} } @dupl if @dupl > 1; + } + foreach (@dupl) { + next if $used{$_}; + my $v = $et->GetValue($_); + next unless defined($v) and IsEqual($v, $val2); + $used{$_} = 1; # would match this upcoming tag + undef($tag2); undef($val2); + next T2; + } last; } - if (defined $val2 and IsEqual($val, $val2)) { + if ($equal) { ++$same; } else { - my $len = LengthUTF8($name); + my $len = LengthUTF8($desc); my $pad = $outFormat < 2 ? ' ' x ($len < 32 ? 32 - $len : 0) : ''; if ($allGroup) { my $grp = "[$g]"; $grp .= ' ' x (15 - length($grp)) if length($grp) < 15 and $outFormat < 2; - push @diffs, sprintf "< %s %s%s: %s\n", $grp, $name, $pad, Printable($val); + push @diffs, sprintf "< %s %s%s: %s\n", $grp, $desc, $pad, Printable($val); if (defined $val2) { - $grp = ' ' x length($grp), $name = ' ' x $len if $v < 3; - push @diffs, sprintf "> %s %s%s: %s\n", $grp, $name, $pad, Printable($val2); + $grp = ' ' x length($grp), $desc = ' ' x $len if $v < 3; + push @diffs, sprintf "> %s %s%s: %s\n", $grp, $desc, $pad, Printable($val2); } } else { - push @diffs, sprintf "< %s%s: %s\n", $name, $pad, Printable($val); - $name = ' ' x $len if $v < 3; - push @diffs, sprintf "> %s%s %s\n", $name, $pad, Printable($val2) if defined $val2; + push @diffs, sprintf "< %s%s: %s\n", $desc, $pad, Printable($val); + $desc = ' ' x $len if $v < 3; + push @diffs, sprintf "> %s%s: %s\n", $desc, $pad, Printable($val2) if defined $val2; } } $done2{$tag2} = 1 if defined $tag2; @@ -3147,7 +3168,7 @@ sub SetImageInfo($$$) next; } elsif (ref $dyFile eq 'SCALAR') { # set new values from CSV or JSON database - my ($f, $found, $tag); + my ($f, $found, $csvTag, $tryTag, $tg); undef $evalWarning; local $SIG{'__WARN__'} = sub { $evalWarning = $_[0] }; # force UTF-8 if the database was JSON @@ -3169,11 +3190,39 @@ sub SetImageInfo($$$) print $vout 'Including tags: ',join(' ',@tags),"\n" if @tags; print $vout 'Excluding tags: ',join(' ',@exclude),"\n" if @exclude; } - foreach $tag (OrderedKeys($csvInfo)) { - next if $tag =~ /\b(SourceFile|Directory|FileName)$/i; # don't write these - next if @tags and not grep /^\Q$tag\E$/i, @tags; - next if @exclude and grep /^\Q$tag\E$/i, @exclude; - my ($rtn, $wrn) = $et->SetNewValue($tag, $$csvInfo{$tag}, + my @tryTags = (@exclude, @tags); # (exclude first because it takes priority) + foreach (@tryTags) { + tr/-0-9a-zA-Z_:#?*//dc; # remove illegal characters + s/(^|:)(all:)+/$1/ig; # remove 'all' group names + s/(^|:)all(#?)$/$1*$2/i; # convert 'all' tag name to '*' + tr/?/./; s/\*/.*/g; # convert wildcards for regex + } + foreach $csvTag (OrderedKeys($csvInfo)) { + # don't write SourceFile, Directory or FileName + next if $csvTag =~ /^([-_0-9A-Z]+:)*(SourceFile|Directory|FileName)$/i; + if (@tryTags) { + my ($i, $tryGrp, $matched); +TryMatch: for ($i=0; $i<@tryTags; ++$i) { + $tryTag = $tryTags[$i]; + if ($tryTag =~ /:/) { + next unless $csvTag =~ /:/; # db entry must also specify group + my @csvGrps = split /:/, $csvTag; + my @tryGrps = split /:/, $tryTag; + my $tryName = pop @tryGrps; + next unless pop(@csvGrps) =~ /^$tryName$/i; # tag name must match + foreach $tryGrp (@tryGrps) { + # each specified group name must match db entry + next TryMatch unless grep /^$tryGrp$/i, @csvGrps; + } + $matched = 1; + last; + } + # no group specified, so match by tag name only + $csvTag =~ /^([-_0-9A-Z]+:)*$tryTag$/i and $matched = 1, last; + } + next if $matched ? $i < @exclude : @tags; + } + my ($rtn, $wrn) = $et->SetNewValue($csvTag, $$csvInfo{$csvTag}, Protected => 1, AddValue => $csvAdd, ProtectSaved => $csvSaveCount); $wrn and Warn "$wrn\n" if $verbose; @@ -4363,7 +4412,7 @@ sub AddPrintFormat($) $printFmt{$type} or $printFmt{$type} = [ ]; push @{$printFmt{$type}}, $expr; # add to list of requested tags - push @requestTags, $expr =~ /\$\{?((?:[-\w]+:)*[-\w?*]+)/g; + push @requestTags, $expr =~ /\$\{?((?:[-_0-9A-Z]+:)*[-_0-9A-Z?*]+)/ig; $printFmt{SetTags} = 1 if $expr =~ /\bSetTags\b/; } @@ -4718,7 +4767,7 @@ sub FilterArgfileLine($) $arg =~ s/^\s+//; # remove leading white space $arg =~ s/[\x0d\x0a]+$//s; # remove trailing newline # remove white space before, and single space after '=', '+=', '-=' or '<=' - $arg =~ s/^(-[-:\w]+#?)\s*([-+<]?=) ?/$1$2/; + $arg =~ s/^(-[-_0-9A-Z:]+#?)\s*([-+<]?=) ?/$1$2/i; return undef if $arg eq ''; } return $arg; @@ -5598,9 +5647,13 @@ deleted). Also, FileName and Directory columns are ignored if they exist all other columns are imported. To force a tag to be deleted, use the B<-f> option and set the value to "-" in the CSV file (or to the MissingTagValue if this API option was used). Multiple databases may be imported in a -single command. Specific tags may be imported from the database by adding -B<->I options to the command, or excluded with B<-->I options. -If no tags are specified, then all except FileName and Directory are used. +single command. + +Specific tags may be imported from the CSV database by adding B<->I +options to the command, or excluded with B<-->I, with exclusions taking +priority. Group names and wildcards are allowed. If no tags are specified, +then all except FileName and Directory are used. Tags are imported in the +same order as the database entries. When exporting a CSV file, the B<-g> or B<-G> option adds group names to the tag headings. If the B<-a> option is used to allow duplicate tag names, the @@ -5783,9 +5836,13 @@ that options exporting JSON objects instead of simple values are not compatible with the import file format (ie. export with B<-D>, B<-H>, B<-l>, or B<-T> is not compatible, and use B<-G> instead of B<-g>). Additionally, tag names in the input JSON file may be suffixed with a C<#> to disable -print conversion. Specific tags may be imported from the database by adding -B<->I options to the command, or excluded with B<-->I options. -If no tags are specified, then all except FileName and Directory are used. +print conversion. + +Specific tags may be imported from the JSON database by adding B<->I +options to the command, or excluded with B<-->I, with exclusions taking +priority. Group names and wildcards are allowed. If no tags are specified, +then all except FileName and Directory are used. Tags are imported in the +same order as the database entries. Unlike CSV import, empty values are not ignored, and will cause an empty value to be written if supported by the specific metadata type. Tags are @@ -5926,7 +5983,7 @@ with this command: produces output like this: - -- Generated by ExifTool 13.10 -- + -- Generated by ExifTool 13.15 -- File: a.jpg - 2003:10:31 15:44:19 (f/5.6, 1/60s, ISO 100) File: b.jpg - 2006:05:23 11:57:38 @@ -5943,8 +6000,8 @@ name, a value of 1 is returned if any tag exists in the specified group, or values of all matching tags are joined). The B<-p> output iterates through the family 3 group names, with each -sub-document producing additional output. This feature is most useful when -used in combination with the B<-ee> option to extract embedded documents. +sub-document producing additional output when combined with the B<-ee> +(ExtractEmbedded) option. If a specified tag does not exist, a minor warning is issued and the line with the missing tag is not printed. However, the B<-f> option may be used @@ -6778,9 +6835,10 @@ System tags: The B<-g> and B<-G> options may be used to organize the output by the specified family of groups, with B<-G1> being the default. The B<-a> option is implied. Adding B<-v> includes a count of the number of tags that are -the same in each group. The following text formatting options are valid -when B<-diff> is used: B<-c>, B<-charset>, B<-d>, B<-E>, B<-ec>, B<-ex>, -B<-L>, B<-lang>, B<-n>, B<-s>, B<-sep>, B<-struct> and B<-w>. +the same in each group, and B<-v2> also indicates when zero tags were the +same. The following text formatting options are valid when B<-diff> is +used: B<-c>, B<-charset>, B<-d>, B<-E>, B<-ec>, B<-ex>, B<-L>, B<-lang>, +B<-n>, B<-s>, B<-sep>, B<-struct> and B<-w>. =item B<-geotag> I @@ -7281,13 +7339,13 @@ avoid processing hidden files (provided Win32API::File is available): B: Beware when cutting and pasting these examples into your terminal! Some characters such as single and double quotes and hyphens may have been changed into similar-looking yet functionally-different characters by the -text formatter used to display this documentation. Also note that Windows -users must use double quotes instead of single quotes as below around -arguments containing special characters. +text formatter used to display this documentation. Also note that in the +Windows cmd shell double quotes must be used instead of the single quotes +used in the examples. =over 5 -=item exiftool -a -u -g1 a.jpg +=item C Print all meta information in an image, including duplicate and unknown tags, sorted by group (for family 1). For performance reasons, this command @@ -7296,89 +7354,89 @@ metadata extracted by external utilities, and metadata requiring excessive processing time may not be extracted). Add C<-ee3> and C<-api RequestAll=3> to the command to extract absolutely everything available. -=item exiftool -common dir +=item C Print common meta information for all images in C. C<-common> is a L representing common EXIF meta information. -=item exiftool -T -createdate -aperture -shutterspeed -iso dir > out.txt +=item C out.txt> List specified meta information in tab-delimited column form for all images in C to an output text file named "out.txt". -=item exiftool -s -ImageSize -ExposureTime b.jpg +=item C Print ImageSize and ExposureTime tag names and values. -=item exiftool -l -canon c.jpg d.jpg +=item C Print standard Canon information from two image files. -=item exiftool -r -w .txt -common pictures +=item C Recursively extract common meta information from files in C directory, writing text output to C<.txt> files with the same names. -=item exiftool -b -ThumbnailImage image.jpg > thumbnail.jpg +=item C thumbnail.jpg> Save thumbnail image from C to a file called C. -=item exiftool -b -JpgFromRaw -w _JFR.JPG -ext NEF -r . +=item C Recursively extract JPG image from all Nikon NEF files in the current directory, adding C<_JFR.JPG> for the name of the output JPG files. -=item exiftool -a -b -W %d%f_%t%-c.%s -preview:all dir +=item C Extract all types of preview images (ThumbnailImage, PreviewImage, JpgFromRaw, etc.) from files in directory "dir", adding the tag name to the output preview image file names. -=item exiftool -d '%r %a, %B %e, %Y' -DateTimeOriginal -S -s -ext jpg . +=item C Print formatted date/time for all JPG files in the current directory. -=item exiftool -IFD1:XResolution -IFD1:YResolution image.jpg +=item C Extract image resolution from EXIF IFD1 information (thumbnail image IFD). -=item exiftool '-*resolution*' image.jpg +=item C Extract all tags with names containing the word "Resolution" from an image. -=item exiftool -xmp:author:all -a image.jpg +=item C Extract all author-related XMP information from an image. -=item exiftool -xmp -b a.jpg > out.xmp +=item C out.xmp> Extract complete XMP data record intact from C and write it to C using the special C tag (see the Extra tags in L<Image::ExifTool::TagNames|Image::ExifTool::TagNames>). -=item exiftool -p '$filename has date $dateTimeOriginal' -q -f dir +=item C<exiftool -p '$filename has date $dateTimeOriginal' -q -f dir> Print one line of output containing the file name and DateTimeOriginal for each image in directory C<dir>. -=item exiftool -ee3 -p '$gpslatitude, $gpslongitude, $gpstimestamp' a.m2ts +=item C<exiftool -ee3 -p '$gpslatitude, $gpslongitude, $gpstimestamp' a.m2ts> Extract all GPS positions from an AVCHD video. -=item exiftool -icc_profile -b -w icc image.jpg +=item C<exiftool -icc_profile -b -w icc image.jpg> Save complete ICC_Profile from an image to an output file with the same name and an extension of C<.icc>. -=item exiftool -htmldump -w tmp/%f_%e.html t/images +=item C<exiftool -htmldump -w tmp/%f_%e.html t/images> Generate HTML pages from a hex dump of EXIF information in all images from the C<t/images> directory. The output HTML files are written to the C<tmp> directory (which is created if it didn't exist), with names of the form 'FILENAME_EXT.html'. -=item exiftool -a -b -ee -embeddedimage -W Image_%.3g3.%s file.pdf +=item C<exiftool -a -b -ee -embeddedimage -W Image_%.3g3.%s file.pdf> Extract embedded JPG and JP2 images from a PDF file. The output images will have file names like "Image_#.jpg" or "Image_#.jp2", where "#" is the @@ -7396,130 +7454,130 @@ be used (eg. -Comment=E<34>This is a new commentE<34>). =over 5 -=item exiftool -Comment='This is a new comment' dst.jpg +=item C<exiftool -tagsfromfile src.jpg -exif:all --subifd:all dst.jpg> Write new comment to a JPG image (replaces any existing comment). -=item exiftool -comment= -o newdir -ext jpg . +=item C<exiftool -comment= -o newdir -ext jpg .> Remove comment from all JPG images in the current directory, writing the modified images to a new directory. -=item exiftool -keywords=EXIF -keywords=editor dst.jpg +=item C<exiftool -keywords=EXIF -keywords=editor dst.jpg> Replace existing keyword list with two new keywords (C<EXIF> and C<editor>). -=item exiftool -Keywords+=word -o newfile.jpg src.jpg +=item C<exiftool -Keywords+=word -o newfile.jpg src.jpg> Copy a source image to a new file, and add a keyword (C<word>) to the current list of keywords. -=item exiftool -exposurecompensation+=-0.5 a.jpg +=item C<exiftool -exposurecompensation+=-0.5 a.jpg> Decrement the value of ExposureCompensation by 0.5 EV. Note that += with a negative value is used for decrementing because the -= operator is used for conditional deletion (see next example). -=item exiftool -credit-=xxx dir +=item C<exiftool -credit-=xxx dir> Delete Credit information from all files in a directory where the Credit value was C<xxx>. -=item exiftool -xmp:description-de='k&uuml;hl' -E dst.jpg +=item C<exiftool -xmp:description-de='k&uuml;hl' -E dst.jpg> Write alternate language for XMP:Description, using HTML character escaping to input special characters. -=item exiftool -all= dst.jpg +=item C<exiftool -all= dst.jpg> Delete all meta information from an image. Note: You should NOT do this to RAW images (except DNG) since proprietary RAW image formats often contain information in the makernotes that is necessary for converting the image. -=item exiftool -all= -comment='lonely' dst.jpg +=item C<exiftool -all= -comment='lonely' dst.jpg> Delete all meta information from an image and add a comment back in. (Note that the order is important: C<-comment='lonely' -all=> would also delete the new comment.) -=item exiftool -all= --jfif:all dst.jpg +=item C<exiftool -all= --jfif:all dst.jpg> Delete all meta information except JFIF group from an image. -=item exiftool -Photoshop:All= dst.jpg +=item C<exiftool -Photoshop:All= dst.jpg> Delete Photoshop meta information from an image (note that the Photoshop information also includes IPTC). -=item exiftool -r -XMP-crss:all= DIR +=item C<exiftool -r -XMP-crss:all= DIR> Recursively delete all XMP-crss information from images in a directory. -=item exiftool '-ThumbnailImageE<lt>=thumb.jpg' dst.jpg +=item C<exiftool '-ThumbnailImageE<lt>=thumb.jpg' dst.jpg> Set the thumbnail image from specified file (Note: The quotes are necessary to prevent shell redirection). -=item exiftool '-JpgFromRawE<lt>=%d%f_JFR.JPG' -ext NEF -r . +=item C<exiftool '-JpgFromRawE<lt>=%d%f_JFR.JPG' -ext NEF -r .> Recursively write JPEG images with filenames ending in C<_JFR.JPG> to the JpgFromRaw tag of like-named files with extension C<.NEF> in the current directory. (This is the inverse of the C<-JpgFromRaw> command of the L</READING EXAMPLES> section above.) -=item exiftool -DateTimeOriginal-='0:0:0 1:30:0' dir +=item C<exiftool -DateTimeOriginal-='0:0:0 1:30:0' dir> Adjust original date/time of all images in directory C<dir> by subtracting one hour and 30 minutes. (This is equivalent to C<-DateTimeOriginal-=1.5>. See L<Image::ExifTool::Shift.pl|Image::ExifTool::Shift.pl> for details.) -=item exiftool -createdate+=3 -modifydate+=3 a.jpg b.jpg +=item C<exiftool -createdate+=3 -modifydate+=3 a.jpg b.jpg> Add 3 hours to the CreateDate and ModifyDate timestamps of two images. -=item exiftool -AllDates+=1:30 -if '$make eq E<34>CanonE<34>' dir +=item C<exiftool -AllDates+=1:30 -if '$make eq E<34>CanonE<34>' dir> Shift the values of DateTimeOriginal, CreateDate and ModifyDate forward by 1 hour and 30 minutes for all Canon images in a directory. (The AllDates tag is provided as a shortcut for these three tags, allowing them to be accessed via a single tag.) -=item exiftool -xmp:city=Kingston image1.jpg image2.nef +=item C<exiftool -xmp:city=Kingston image1.jpg image2.nef> Write a tag to the XMP group of two images. (Without the C<xmp:> this tag would get written to the IPTC group since C<City> exists in both, and IPTC is preferred by default.) -=item exiftool -LightSource-='Unknown (0)' dst.tiff +=item C<exiftool -LightSource-='Unknown (0)' dst.tiff> Delete C<LightSource> tag only if it is unknown with a value of 0. -=item exiftool -whitebalance-=auto -WhiteBalance=tung dst.jpg +=item C<exiftool -whitebalance-=auto -WhiteBalance=tung dst.jpg> Set C<WhiteBalance> to C<Tungsten> only if it was previously C<Auto>. -=item exiftool -comment-= -comment='new comment' a.jpg +=item C<exiftool -comment-= -comment='new comment' a.jpg> Write a new comment only if the image doesn't have one already. -=item exiftool -o %d%f.xmp dir +=item C<exiftool -o %d%f.xmp dir> Create XMP meta information data files for all images in C<dir>. -=item exiftool -o test.xmp -owner=Phil -title='XMP File' +=item C<exiftool -o test.xmp -owner=Phil -title='XMP File'> Create an XMP data file only from tags defined on the command line. -=item exiftool '-ICC_Profile<=%d%f.icc' image.jpg +=item C<exiftool '-ICC_Profile<=%d%f.icc' image.jpg> Write ICC_Profile to an image from a C<.icc> file of the same name. -=item exiftool -hierarchicalkeywords='{keyword=one,children={keyword=B}}' +=item C<exiftool -hierarchicalkeywords='{keyword=one,children={keyword=B}}'> Write structured XMP information. See L<https://exiftool.org/struct.html> for more details. -=item exiftool -trailer:all= image.jpg +=item C<exiftool -trailer:all= image.jpg> Delete any trailer found after the end of image (EOI) in a JPEG file. A number of digital cameras store a large PreviewImage after the JPEG EOI, and @@ -7535,22 +7593,22 @@ These examples demonstrate the ability to copy tag values between files. =over 5 -=item exiftool -tagsFromFile src.cr2 dst.jpg +=item C<exiftool -tagsFromFile src.cr2 dst.jpg> Copy the values of all writable tags from C<src.cr2> to C<dst.jpg>, writing the information to same-named tags in the preferred groups. -=item exiftool -TagsFromFile src.jpg -all:all dst.jpg +=item C<exiftool -TagsFromFile src.jpg -all:all dst.jpg> Copy the values of all writable tags from C<src.jpg> to C<dst.jpg>, preserving the original tag groups. -=item exiftool -all= -tagsfromfile src.jpg -exif:all dst.jpg +=item C<exiftool -all= -tagsfromfile src.jpg -exif:all dst.jpg> Erase all meta information from C<dst.jpg> image, then copy EXIF tags from C<src.jpg>. -=item exiftool -exif:all= -tagsfromfile @ -all:all -unsafe bad.jpg +=item C<exiftool -exif:all= -tagsfromfile @ -all:all -unsafe bad.jpg> Rebuild all EXIF meta information from scratch in an image. This technique can be used in JPEG images to repair corrupted EXIF information which @@ -7559,7 +7617,7 @@ shortcut for unsafe EXIF tags in JPEG images which are not normally copied. See the L<tag name documentation|Image::ExifTool::TagNames> for more details about unsafe tags. -=item exiftool -Tagsfromfile a.jpg out.xmp +=item C<exiftool -Tagsfromfile a.jpg out.xmp> Copy meta information from C<a.jpg> to an XMP data file. If the XMP data file C<out.xmp> already exists, it will be updated with the new information. @@ -7568,46 +7626,46 @@ be created like this (files containing images may be edited but not created). See L</WRITING EXAMPLES> above for another technique to generate XMP files. -=item exiftool -tagsFromFile a.jpg -XMP:All= -ThumbnailImage= -m b.jpg +=item C<exiftool -tagsFromFile a.jpg -XMP:All= -ThumbnailImage= -m b.jpg> Copy all meta information from C<a.jpg> to C<b.jpg>, deleting all XMP information and the thumbnail image from the destination. -=item exiftool -TagsFromFile src.jpg -title -author=Phil dst.jpg +=item C<exiftool -TagsFromFile src.jpg -title -author=Phil dst.jpg> Copy title from one image to another and set a new author name. -=item exiftool -TagsFromFile a.jpg -ISO -TagsFromFile b.jpg -comment -dst.jpg +=item C<exiftool -TagsFromFile a.jpg -ISO -TagsFromFile b.jpg -comment +dst.jpg> Copy ISO from one image and Comment from another image to a destination image. -=item exiftool -tagsfromfile src.jpg -exif:all --subifd:all dst.jpg +=item C<exiftool -tagsfromfile src.jpg -exif:all --subifd:all dst.jpg> Copy only the EXIF information from one image to another, excluding SubIFD tags. -=item exiftool '-FileModifyDateE<lt>DateTimeOriginal' dir +=item C<exiftool '-FileModifyDateE<lt>DateTimeOriginal' dir> Use the original date from the meta information to set the same file's filesystem modification date for all images in a directory. (Note that C<-TagsFromFile @> is assumed if no other B<-TagsFromFile> is specified when redirecting information as in this example.) -=item exiftool -TagsFromFile src.jpg '-xmp:allE<lt>all' dst.jpg +=item C<exiftool -TagsFromFile src.jpg '-xmp:allE<lt>all' dst.jpg> Copy all possible information from C<src.jpg> and write in XMP format to C<dst.jpg>. -=item exiftool '-Description<${FileName;s/\.[^.]*$//}' dir +=item C<exiftool '-Description<${FileName;s/\.[^.]*$//}' dir> Set the image Description from the file name after removing the extension. This example uses the L</Advanced formatting feature> to perform a substitution operation to remove the last dot and subsequent characters from the file name. -=item exiftool -@ iptc2xmp.args -iptc:all= a.jpg +=item C<exiftool -@ iptc2xmp.args -iptc:all= a.jpg> Translate IPTC information to XMP with appropriate tag name conversions, and delete the original IPTC information from an image. This example uses @@ -7617,40 +7675,40 @@ Also included with the distribution are xmp2iptc.args (which performs the inverse conversion) and a few more .args files for other conversions between EXIF, IPTC and XMP. -=item exiftool -tagsfromfile %d%f.CR2 -r -ext JPG dir +=item C<exiftool -tagsfromfile %d%f.CR2 -r -ext JPG dir> Recursively rewrite all C<JPG> images in C<dir> with information copied from the corresponding C<CR2> images in the same directories. -=item exiftool '-keywords+E<lt>make' image.jpg +=item C<exiftool '-keywords+E<lt>make' image.jpg> Add camera make to list of keywords. -=item exiftool '-commentE<lt>ISO=$exif:iso Exposure=${shutterspeed}' dir +=item C<exiftool '-commentE<lt>ISO=$exif:iso Exposure=${shutterspeed}' dir> Set the Comment tag of all images in C<dir> from the values of the EXIF:ISO and ShutterSpeed tags. The resulting comment will be in the form "ISO=100 Exposure=1/60". -=item exiftool -TagsFromFile src.jpg -icc_profile dst.jpg +=item C<exiftool -TagsFromFile src.jpg -icc_profile dst.jpg> Copy ICC_Profile from one image to another. -=item exiftool -TagsFromFile src.jpg -all:all dst.mie +=item C<exiftool -TagsFromFile src.jpg -all:all dst.mie> Copy all meta information in its original form from a JPEG image to a MIE file. The MIE file will be created if it doesn't exist. This technique can be used to store the metadata of an image so it can be inserted back into the image (with the inverse command) later in a workflow. -=item exiftool -o dst.mie -all:all src.jpg +=item C<exiftool -o dst.mie -all:all src.jpg> This command performs exactly the same task as the command above, except that the B<-o> option will not write to an output file that already exists. -=item exiftool -b -jpgfromraw -w %d%f_%ue.jpg -execute -b -previewimage -w +=item C<exiftool -b -jpgfromraw -w %d%f_%ue.jpg -execute -b -previewimage -w %d%f_%ue.jpg -execute -tagsfromfile @ -srcfile %d%f_%ue.jpg --overwrite_original -common_args --ext jpg DIR +-overwrite_original -common_args --ext jpg DIR> [Advanced] Extract JpgFromRaw or PreviewImage from all but JPG files in DIR, saving them with file names like C<image_EXT.jpg>, then add all meta @@ -7683,34 +7741,34 @@ examples. =over 5 -=item exiftool -filename=new.jpg dir/old.jpg +=item C<exiftool -filename=new.jpg dir/old.jpg> Rename C<old.jpg> to C<new.jpg> in directory C<dir>. -=item exiftool -directory=%e dir +=item C<exiftool -directory=%e dir> Move all files from directory C<dir> into directories named by the original file extensions. -=item exiftool '-Directory<DateTimeOriginal' -d %Y/%m/%d dir +=item C<exiftool '-DirectoryE<lt>DateTimeOriginal' -d %Y/%m/%d dir> Move all files in C<dir> into a directory hierarchy based on year, month and day of C<DateTimeOriginal>. eg) This command would move the file C<dir/image.jpg> with a C<DateTimeOriginal> of C<2005:10:12 16:05:56> to C<2005/10/12/image.jpg>. -=item exiftool -o . '-Directory<DateTimeOriginal' -d %Y/%m/%d dir +=item C<exiftool -o . '-DirectoryE<lt>DateTimeOriginal' -d %Y/%m/%d dir> Same effect as above except files are copied instead of moved. -=item exiftool '-filename<%f_${model;}.%e' dir +=item C<exiftool '-filenameE<lt>%f_${model;}.%e' dir> Rename all files in C<dir> by adding the camera model name to the file name. The semicolon after the tag name inside the braces causes characters which are invalid in Windows file names to be deleted from the tag value (see the L</Advanced formatting feature> for an explanation). -=item exiftool '-FileName<CreateDate' -d %Y%m%d_%H%M%S%%-c.%%e dir +=item C<exiftool '-FileNameE<lt>CreateDate' -d %Y%m%d_%H%M%S%%-c.%%e dir> Rename all images in C<dir> according to the C<CreateDate> date and time, adding a copy number with leading '-' if the file already exists (C<%-c>), @@ -7718,7 +7776,7 @@ and preserving the original file extension (C<%e>). Note the extra '%' necessary to escape the filename codes (C<%c> and C<%e>) in the date format string. -=item exiftool -r '-FileName<CreateDate' -d %Y-%m-%d/%H%M_%%f.%%e dir +=item C<exiftool -r '-FileNameE<lt>CreateDate' -d %Y-%m-%d/%H%M_%%f.%%e dir> Both the directory and the filename may be changed together via the C<FileName> tag if the new C<FileName> contains a '/'. The example above @@ -7726,7 +7784,7 @@ recursively renames all images in a directory by adding a C<CreateDate> timestamp to the start of the filename, then moves them into new directories named by date. -=item exiftool '-FileName<${CreateDate}_$filenumber.jpg' -d %Y%m%d -ext jpg . +=item C<exiftool '-FileNameE<lt>${CreateDate}_$filenumber.jpg' -d %Y%m%d -ext jpg .> Set the filename of all JPG images in the current directory from the CreateDate and FileNumber tags, in the form "20060507_118-1861.jpg". @@ -7745,67 +7803,67 @@ the B<-geotag> option.) =over 5 -=item exiftool -geotag track.log a.jpg +=item C<exiftool -geotag track.log a.jpg> Geotag an image (C<a.jpg>) from position information in a GPS track log (C<track.log>). Since the C<Geotime> tag is not specified, the value of DateTimeOriginal is used for geotagging. Local system time is assumed unless DateTimeOriginal contains a timezone. -=item exiftool -geotag track.log -geolocate=geotag a.jpg +=item C<exiftool -geotag track.log -geolocate=geotag a.jpg> Geotag an image and also write geolocation information of the nearest city (city name, state/province and country). Read here for more details about the Geolocation feature: L<https://exiftool.org/geolocation.html#Write> -=item exiftool -geotag t.log -geotime='2009:04:02 13:41:12-05:00' a.jpg +=item C<exiftool -geotag t.log -geotime='2009:04:02 13:41:12-05:00' a.jpg> Geotag an image with the GPS position for a specific time. -=item exiftool -geotag log.gpx '-xmp:geotimeE<lt>createdate' dir +=item C<exiftool -geotag log.gpx '-xmp:geotimeE<lt>createdate' dir> Geotag all images in directory C<dir> with XMP tags instead of EXIF tags, based on the image CreateDate. -=item exiftool -geotag a.log -geosync=-20 dir +=item C<exiftool -geotag a.log -geosync=-20 dir> Geotag images in directory C<dir>, accounting for image timestamps which were 20 seconds ahead of GPS. -=item exiftool -geotag a.log -geosync=1.jpg -geosync=2.jpg dir +=item C<exiftool -geotag a.log -geosync=1.jpg -geosync=2.jpg dir> Geotag images using time synchronization from two previously geotagged images (1.jpg and 2.jpg), synchronizing the image and GPS times using a linear time drift correction. -=item exiftool -geotag a.log '-geotimeE<lt>${createdate}+01:00' dir +=item C<exiftool -geotag a.log '-geotimeE<lt>${createdate}+01:00' dir> Geotag images in C<dir> using CreateDate with the specified timezone. If CreateDate already contained a timezone, then the timezone specified on the command line is ignored. -=item exiftool -geotag= a.jpg +=item C<exiftool -geotag= a.jpg> Delete GPS tags which may have been added by the geotag feature. Note that this does not remove all GPS tags -- to do this instead use C<-gps:all=>. -=item exiftool -xmp:geotag= a.jpg +=item C<exiftool -xmp:geotag= a.jpg> Delete XMP GPS tags which were added by the geotag feature. -=item exiftool -xmp:geotag=track.log a.jpg +=item C<exiftool -xmp:geotag=track.log a.jpg> Geotag an image with XMP tags, using the time from DateTimeOriginal. -=item exiftool -geotag a.log -geotag b.log -r dir +=item C<exiftool -geotag a.log -geotag b.log -r dir> Combine multiple track logs and geotag an entire directory tree of images. -=item exiftool -geotag 'tracks/*.log' -r dir +=item C<exiftool -geotag 'tracks/*.log' -r dir> Read all track logs from the C<tracks> directory. -=item exiftool -p gpx.fmt dir > out.gpx +=item C<exiftool -p gpx.fmt dir E<gt> out.gpx> Generate a GPX track log from all images in directory C<dir>. This example uses the C<gpx.fmt> file included in the full ExifTool distribution package @@ -7817,26 +7875,26 @@ and assumes that the images in C<dir> have all been previously geotagged. =over 5 -=item cat a.jpg | exiftool - +=item C<cat a.jpg | exiftool -> Extract information from stdin. -=item exiftool image.jpg -thumbnailimage -b | exiftool - +=item C<exiftool image.jpg -thumbnailimage -b | exiftool -> Extract information from an embedded thumbnail image. -=item cat a.jpg | exiftool -iptc:keywords+=fantastic - > b.jpg +=item C<cat a.jpg | exiftool -iptc:keywords+=fantastic - E<gt> b.jpg> Add an IPTC keyword in a pipeline, saving output to a new file. -=item curl -s http://a.domain.com/bigfile.jpg | exiftool -fast - +=item C<curl -s http://a.domain.com/bigfile.jpg | exiftool -fast -> Extract information from an image over the internet using the cURL utility. The B<-fast> option prevents exiftool from scanning for trailer information, so only the meta information header is transferred. -=item exiftool a.jpg -thumbnailimage -b | exiftool -comment=wow - | -exiftool a.jpg -thumbnailimage'<=-' +=item C<exiftool a.jpg -thumbnailimage -b | exiftool -comment=wow - | +exiftool a.jpg -thumbnailimage'E<lt>=-'> Add a comment to an embedded thumbnail image. (Why anyone would want to do this I don't know, but I've included this as an example to illustrate the @@ -7859,7 +7917,7 @@ the commands if B<-execute> was used). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey +Copyright 2003-2025, Phil Harvey This is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pm index 9b6696f..c19f9b1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pm @@ -29,7 +29,7 @@ # Sets internal ERROR member from $! if there is an error reading # the file. # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pod b/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pod index 25930b3..8142fb2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pod +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/File/RandomAccess.pod @@ -3,7 +3,7 @@ # # Description: Buffer to support random access reading of sequential file # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -236,7 +236,7 @@ the end of file is not allowed. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pm index 4c7575e..c6e5dc5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pm @@ -8,7 +8,7 @@ # Revisions: Nov. 12/2003 - P. Harvey Created # (See html/history.html for revision history) # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir %static_vars $advFmtSelf); -$VERSION = '13.10'; +$VERSION = '13.15'; $RELEASE = ''; @ISA = qw(Exporter); %EXPORT_TAGS = ( @@ -154,10 +154,10 @@ sub ReadValue($$$;$$$); Matroska::StdTag MOI MXF DV Flash Flash::FLV Real::Media Real::Audio Real::Metafile Red RIFF AIFF ASF WTV DICOM FITS XISF MIE JSON HTML XMP::SVG Palm Palm::MOBI Palm::EXTH Torrent EXE EXE::PEVersion EXE::PEString - EXE::MachO EXE::PEF EXE::ELF EXE::AR EXE::CHM LNK Font VCard Text - VCard::VCalendar VCard::VNote RSRC Rawzor ZIP ZIP::GZIP ZIP::RAR ZIP::RAR5 - RTF OOXML iWork ISO FLIR::AFF FLIR::FPF MacOS MacOS::MDItem - FlashPix::DocTable + EXE::DebugRSDS EXE::DebugNB10 EXE::Misc EXE::MachO EXE::PEF EXE::ELF EXE::AR + EXE::CHM LNK Font VCard Text VCard::VCalendar VCard::VNote RSRC Rawzor ZIP + ZIP::GZIP ZIP::RAR ZIP::RAR5 RTF OOXML iWork ISO FLIR::AFF FLIR::FPF MacOS + MacOS::MDItem FlashPix::DocTable ); # alphabetical list of current Lang modules @@ -1126,6 +1126,7 @@ my @availableOptions = ( [ 'GeoMinSats', undef, 'geotag minimum satellites' ], [ 'GeoSpeedRef', undef, 'geotag GPSSpeedRef' ], [ 'GlobalTimeShift', undef, 'apply time shift to all extracted date/time values' ], + [ 'GPSQuadrant', undef, 'quadrant for GPS if not otherwise known' ], [ 'Group#', undef, 'return tags for specified groups in family #' ], [ 'HexTagIDs', 0, 'use hex tag ID\'s in family 7 group names' ], [ 'HtmlDump', 0, 'HTML dump (0-3, higher # = bigger limit)' ], @@ -2500,6 +2501,7 @@ sub Options($$;@) } } elsif ($param =~ /^(IgnoreTags|IgnoreGroups)$/) { if (defined $newVal) { + ref $newVal eq 'HASH' and $$options{$param} = $newVal, next; # parse list from delimited string if necessary my @ignoreList = (ref $newVal eq 'ARRAY') ? @$newVal : ($newVal =~ /[-\w?*:#]+/g); ExpandShortcuts(\@ignoreList) if $param eq 'IgnoreTags'; @@ -6894,6 +6896,8 @@ sub IdentifyTrailer($;$) $type = 'Insta360'; } elsif ($buff =~ m(\0{6}/NIKON APP$)) { $type = 'NikonApp'; + } elsif ($buff =~ /\xff{4}\x1b\*9HWfu\x84\x93\xa2\xb1$/) { + $type = 'Vivo'; } last; } @@ -6906,7 +6910,8 @@ sub IdentifyTrailer($;$) # Inputs: 0) ExifTool object ref, 1) DirInfo ref: # - requires RAF and DirName # - OutFile is a scalar reference for writing -# - scans from current file position if ScanForAFCP is set +# - scans from current file position for each trailer if ScanForTrailer is set +# (current file position is just after JPEG EOF for a JPEG image) # Returns: 1 if trailer was processed or couldn't be processed (or written OK) # 0 if trailer was recognized but offsets need fixing (or write error) # - DirName, DirLen, DataPos, Offset, Fixup and OutFile are updated @@ -6952,7 +6957,7 @@ sub ProcessTrailers($$) # read or write this trailer # (proc takes Offset as positive offset from end of trailer to end of file, # and returns DataPos and DirLen, and Fixup if applicable, and updates - # OutFile when writing) + # OutFile when writing. Returns < 0 if we must scan for this trailer) no strict 'refs'; my $result = &$proc($self, $dirInfo); use strict 'refs'; @@ -7362,7 +7367,7 @@ sub ProcessJPEG($$;$) # and scan for AFCP if necessary my $fromEnd = 0; if ($trailInfo) { - $$trailInfo{ScanForAFCP} = 1; # scan now if necessary + $$trailInfo{ScanForTrailer} = 1; # scan now if necessary $self->ProcessTrailers($trailInfo); # save offset from end of file to start of first trailer $fromEnd = $$trailInfo{Offset}; @@ -7562,6 +7567,19 @@ sub ProcessJPEG($$;$) $$self{SkipData} = \@skipData if @skipData; # extract the EXIF information (it is in standard TIFF format) $self->ProcessTIFF(\%dirInfo) or $self->Warn('Malformed APP1 EXIF segment'); + # scan for Vivo HiddenData if necessary + if ($$self{Make} eq 'vivo' and + # (stored as UserComment by some models) + not ($$self{VALUE}{UserComment} and $$self{VALUE}{UserComment} =~ /^filter:/) and + $$dataPt =~ /(filter: .*?; \n)\0/sg) + { + if ($htmlDump) { + my $n = length($1) + 1; + $self->HDump($segPos+pos($$dataPt)-$n, $n, '[Vivo HiddenData]', undef, 0x08); + } + my $tbl = GetTagTable('Image::ExifTool::Vivo::Main'); + $self->HandleTag($tbl, HiddenData => $1); + } # avoid looking for preview unless necessary because it really slows # us down -- only look for it if we found pointer, and preview is # outside EXIF, and PreviewImage is specifically requested @@ -8376,7 +8394,11 @@ sub DoProcessTIFF($$;$) # save a copy of the EXIF data my $dirStart = $$dirInfo{DirStart} || 0; my $dirLen = $$dirInfo{DirLen} || (length($$dataPt) - $dirStart); - $$self{EXIF_DATA} = substr($$dataPt, $dirStart, $dirLen); + if ($dirLen > 0 or not $outfile) { + $$self{EXIF_DATA} = substr($$dataPt, $dirStart, $dirLen); + } else { + delete $$self{EXIF_DATA}; # create from scratch; + } $self->VerboseDir('TIFF') if $$self{OPTIONS}{Verbose} and length($$self{INDENT}) > 2; } elsif ($outfile) { delete $$self{EXIF_DATA}; # create from scratch @@ -8535,7 +8557,7 @@ sub DoProcessTIFF($$;$) if ($raf) { my $trailInfo = IdentifyTrailer($raf); if ($trailInfo) { - $$trailInfo{ScanForAFCP} = 1; # scan to find AFCP if necessary + $$trailInfo{ScanForTrailer} = 1; # scan to find AFCP if necessary $self->ProcessTrailers($trailInfo); } # dump any other known trailer (eg. A100 RAW Data) @@ -8640,7 +8662,7 @@ sub DoProcessTIFF($$;$) last unless $trailInfo; my $tbuf = ''; $$trailInfo{OutFile} = \$tbuf; # rewrite trailer(s) - $$trailInfo{ScanForAFCP} = 1; # scan for AFCP if necessary + $$trailInfo{ScanForTrailer} = 1; # scan for AFCP if necessary # rewrite all trailers to buffer unless ($self->ProcessTrailers($trailInfo)) { undef $trailInfo; diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pod b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pod index 65b7394..ab4f87c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pod +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool.pod @@ -5,7 +5,7 @@ # # URL: https://exiftool.org/ # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -827,6 +827,15 @@ determined unambiguously. For example: If the starting tag is not specified, or the specified tag isn't available, then the shift is calculated based on the first shifted tag. +=item GPSQuadrant + +This option is used to specify the GPS quadrant in the case where a warning +was issued because the GPS quadrant couldn't be determined. The value is a +2-character code where the first character is 'N' or 'S' and the second +character is 'E' or 'W' (case insensitive). If this option is not set and +the quadrant is unknown, a warning is issued and the quadrant is assumed to +be 'NE'. + =item Group# Extract tags only for specified groups in family # (Group0 assumed if # @@ -855,7 +864,7 @@ used. Set to 0 for absolute offsets. Default is undef. =item IgnoreGroups Comma-separated list of group names to ignore when reading. The group names -are case insensitive and may be preceeded by a family number. Set to undef +are case insensitive and may be preceded by a family number. Set to undef to clear the previous IgnoreGroups list. Default is undef. =item IgnoreMinorErrors @@ -880,7 +889,7 @@ to undef to clear the previous IgnoreTags list. Default is undef. =item ImageHashType -Sets type of hash algorithem used for the ImageDataHash tag calculation. +Sets type of hash algorithm used for the ImageDataHash tag calculation. Supported options are 'MD5', 'SHA256', and 'SHA512'. Default is 'MD5'. =item Lang @@ -1021,7 +1030,7 @@ when written. According to the QuickTime specification date/time values should be UTC, but many digital cameras store local time instead (presumably because they don't know the time zone), so the default is to not convert these times (except for Canon CR3 files, which always use UTC times). This -option also disables the autodetection of incorrect time-zero offsets in +option also disables the auto-detection of incorrect time-zero offsets in QuickTime date/time values, and enforces a time zero of 1904 as per the QuickTime specification. @@ -2554,47 +2563,49 @@ Trailer, VCard, Vorbis, WTV, XML, XMP, ZIP =item Family 1 (Specific Location): -AAC, AC3, AFCP, AIFF, APE, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, Apple, -Audible, CBOR, CIFF, CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw, -CanonVRD, Casio, Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta, -Ducky, EPPIM, EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash, -FlashPix, Font, FotoStation, FujiFilm, FujiIFD, GE, GIF, GIMP, GM, GPS, -GSpherical, Garmin, GeoTiff, GlobParamIFD, GoPro, GraphConv, H264, HP, HTC, -HTML, HTML-dc, HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv, -ICC-chrm, ICC-cicp, ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, -ICC_Profile, ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, -IFD0, IFD1, IPTC, IPTC#, ISO, ITC, InfiRay, Insta360, InteropIFD, ItemList, -JFIF, JFXX, JPEG, JPEG-HDR, JPS, JSON, JUMBF, JVC, Jpeg2000, KDC_IFD, Keys, -Kodak, KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LIGO, LNK, -Leaf, LeafSubIFD, Leica, Lyrics3, Lytro, M-RAW, M2TS, MAC, MIE-Audio, -MIE-Camera, MIE-Canon, MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, -MIE-Image, MIE-Lens, MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, -MIE-Preview, MIE-Thumbnail, MIE-UTM, MIE-Unknown, MIE-Video, MIFF, MISB, -MNG, MOBI, MOI, MPC, MPEG, MPF0, MPImage, MS-DOC, MXF, MacOS, MakerNotes, -MakerUnknown, Matroska, MediaJukebox, Meta, MetaIFD, Microsoft, Minolta, -MinoltaRaw, Motorola, NITF, Nextbase, Nikon, NikonCapture, NikonCustom, -NikonScan, NikonSettings, NineEdits, Nintendo, Ocad, Ogg, Olympus, OpenEXR, -Opus, PDF, PICT, PNG, PNG-cICP, PNG-pHYs, PSP, Palm, Panasonic, -PanasonicRaw, Parrot, Pentax, PhaseOne, PhotoCD, PhotoMechanic, Photoshop, -PictureInfo, PostScript, PreviewIFD, PrintIM, ProfileIFD, Qualcomm, -QuickTime, RAF, RAF2, RIFF, RMETA, RSRC, RTF, Radiance, Rawzor, Real, -Real-CONT, Real-MDPR, Real-PROP, Real-RA3, Real-RA4, Real-RA5, Real-RJMD, -Reconyx, Red, Ricoh, SEAL, SPIFF, SR2, SR2DataIFD, SR2SubIFD, SRF#, SVG, -Samsung, Sanyo, Scalado, Sigma, SigmaRaw, Sony, SonyIDC, Stim, SubIFD, -System, Theora, Torrent, Track#, UserData, VCalendar, VCard, VNote, -Version0, Vorbis, WTV, XML, XMP, XMP-DICOM, XMP-Device, XMP-GAudio, -XMP-GCamera, XMP-GContainer, XMP-GCreations, XMP-GDepth, XMP-GFocus, -XMP-GImage, XMP-GPano, XMP-GSpherical, XMP-LImage, XMP-MP, XMP-MP1, -XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-acdsee-rs, XMP-album, XMP-apple-fi, -XMP-ast, XMP-aux, XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, XMP-crs, -XMP-dc, XMP-dex, XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, XMP-exif, -XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, XMP-hdr, -XMP-hdrgm, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, XMP-mediapro, -XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, XMP-panorama, -XMP-pdf, XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, XMP-pmi, -XMP-prism, XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-swf, XMP-tiff, -XMP-x, XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, XMP-xmpMM, XMP-xmpNote, -XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg, ZIP, iTunes +AAC, AC3, AFCP, AIFF, APE, APP10, APP2, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, +Apple, Audible, AudioItemList, AudioKeys, AudioUserData, CBOR, CIFF, +CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw, CanonVRD, Casio, +Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta, Ducky, EPPIM, +EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash, FlashPix, Font, +FotoStation, FujiFilm, FujiIFD, GE, GIF, GIMP, GM, GPS, GSpherical, Garmin, +GeoTiff, GlobParamIFD, GoPro, GraphConv, H264, HP, HTC, HTML, HTML-dc, +HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv, ICC-chrm, ICC-cicp, +ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, ICC_Profile, +ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, IFD0, IFD1, +IPTC, IPTC#, ISO, ITC, InfiRay, Insta360, InteropIFD, ItemList, JFIF, JFXX, +JPEG, JPEG-HDR, JPS, JSON, JUMBF, JVC, Jpeg2000, KDC_IFD, Keys, Kodak, +KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LNK, Leaf, +LeafSubIFD, Leica, Lyrics3, Lytro, M-RAW, M2TS, MAC, MIE-Audio, MIE-Camera, +MIE-Canon, MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, MIE-Image, +MIE-Lens, MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, MIE-Preview, +MIE-Thumbnail, MIE-UTM, MIE-Unknown, MIE-Video, MIFF, MISB, MNG, MOBI, MOI, +MPC, MPEG, MPF0, MPImage, MS-DOC, MXF, MacOS, MakerNotes, MakerUnknown, +Matroska, MediaJukebox, Meta, MetaIFD, Microsoft, Minolta, MinoltaRaw, +Motorola, NITF, Nextbase, Nikon, NikonCapture, NikonCustom, NikonScan, +NikonSettings, NineEdits, Nintendo, Ocad, Ogg, Olympus, OpenEXR, Opus, PDF, +PICT, PNG, PNG-cICP, PNG-pHYs, PSP, Palm, Panasonic, PanasonicRaw, Parrot, +Pentax, PhaseOne, PhotoCD, PhotoMechanic, Photoshop, PictureInfo, +PostScript, PreviewIFD, PrintIM, ProfileIFD, Qualcomm, QuickTime, RAF, RAF2, +RIFF, RMETA, RSRC, RTF, Radiance, Rawzor, Real, Real-CONT, Real-MDPR, +Real-PROP, Real-RA3, Real-RA4, Real-RA5, Real-RJMD, Reconyx, Red, Ricoh, +SEAL, SPIFF, SR2, SR2DataIFD, SR2SubIFD, SRF#, SVG, Samsung, Sanyo, Scalado, +Sigma, SigmaRaw, Sony, SonyIDC, Stim, SubIFD, System, Theora, Torrent, +Track#, Track#ItemList, Track#Keys, Track#UserData, UserData, VCalendar, +VCard, VNote, Version0, VideoItemList, VideoKeys, VideoUserData, Vivo, +Vorbis, WTV, XML, XMP, XMP-DICOM, XMP-Device, XMP-GAudio, XMP-GCamera, +XMP-GContainer, XMP-GCreations, XMP-GDepth, XMP-GFocus, XMP-GImage, +XMP-GPano, XMP-GSpherical, XMP-HDRGainMap, XMP-LImage, XMP-MP, XMP-MP1, +XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-acdsee-rs, XMP-album, XMP-apdi, +XMP-apple-fi, XMP-ast, XMP-aux, XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, +XMP-crs, XMP-dc, XMP-dex, XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, +XMP-exif, XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, +XMP-hdr, XMP-hdrgm, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, +XMP-mediapro, XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, +XMP-panorama, XMP-pdf, XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, +XMP-pmi, XMP-prism, XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-seal, +XMP-swf, XMP-tiff, XMP-x, XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, +XMP-xmpMM, XMP-xmpNote, XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg, ZIP, iTunes =item Family 2 (Category): @@ -3021,7 +3032,7 @@ specified by the L</Charset> option. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey +Copyright 2003-2025, Phil Harvey This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AAC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AAC.pm index 2d634d1..5ed9658 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AAC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AAC.pm @@ -163,7 +163,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AES.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AES.pm index 37c89f6..49c33fa 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AES.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AES.pm @@ -477,7 +477,7 @@ main purpose of encryption, so this really can't be considered a bug. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AFCP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AFCP.pm index d2de0f3..71e5dee 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AFCP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AFCP.pm @@ -14,7 +14,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.09'; +$VERSION = '1.10'; sub ProcessAFCP($$); @@ -63,10 +63,10 @@ for the AFCP specification. #------------------------------------------------------------------------------ # Read/write AFCP information in a file # Inputs: 0) ExifTool object reference, 1) dirInfo reference -# (Set 'ScanForAFCP' member in dirInfo to scan from current position for AFCP) +# (Set 'ScanForTrailer' member in dirInfo to scan from current position for AFCP) # Returns: 1 on success, 0 if this file didn't contain AFCP information # -1 on write error or if the offsets were incorrect on reading -# - updates DataPos to point to actual AFCP start if ScanForAFCP is set +# - updates DataPos to point to actual AFCP start if ScanForTrailer is set # - updates DirLen to trailer length # - returns Fixup reference in dirInfo hash when writing sub ProcessAFCP($$) @@ -91,8 +91,8 @@ NoAFCP: for (;;) { $fix = 0; } else { $rtnVal = -1; - # look for start of AXS trailer if 'ScanForAFCP' - last unless $$dirInfo{ScanForAFCP} and $raf->Seek($curPos, 0); + # look for start of AXS trailer if 'ScanForTrailer' + last unless $$dirInfo{ScanForTrailer} and $raf->Seek($curPos, 0); my $actualPos = $curPos; # first look for header right at current position for (;;) { @@ -259,7 +259,7 @@ scanning for AFCP information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AIFF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AIFF.pm index c1638c1..40adbf3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/AIFF.pm @@ -291,7 +291,7 @@ information from AIFF (Audio Interchange File Format) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APE.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APE.pm index 341a994..993c29b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APE.pm @@ -263,7 +263,7 @@ Currently doesn't parse MAC header unless it is at the start of the file. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APP12.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APP12.pm index 8bbd181..502c410 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APP12.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/APP12.pm @@ -306,7 +306,7 @@ APP12 meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ASF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ASF.pm index 46aff79..75cddd7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ASF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ASF.pm @@ -879,7 +879,7 @@ Windows Media Audio (WMA) and Windows Media Video (WMV) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Apple.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Apple.pm index fc11678..e9a8177 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Apple.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Apple.pm @@ -390,7 +390,7 @@ Apple maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Audible.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Audible.pm index 4ab6a0b..b2c61f3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Audible.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Audible.pm @@ -291,7 +291,7 @@ information from Audible audio books. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BMP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BMP.pm index 7394a08..910a3f2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BMP.pm @@ -335,7 +335,7 @@ This module contains definitions required by Image::ExifTool to read BMP =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BPG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BPG.pm index ac1346b..750adb7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BPG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BPG.pm @@ -231,7 +231,7 @@ This module contains definitions required by Image::ExifTool to read BPG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BZZ.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BZZ.pm index fd06fdc..91754c7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BZZ.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BZZ.pm @@ -445,7 +445,7 @@ compression ability). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) Copyright 2002, Leon Bottou and Yann Le Cun Copyright 2001, AT&T Copyright 1999-2001, LizardTech Inc. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BigTIFF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BigTIFF.pm index 9ea8de8..83c449a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BigTIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BigTIFF.pm @@ -282,7 +282,7 @@ information in BigTIFF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BuildTagLookup.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BuildTagLookup.pm index c1e9e52..87803e2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BuildTagLookup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/BuildTagLookup.pm @@ -35,7 +35,7 @@ use Image::ExifTool::Sony; use Image::ExifTool::Validate; use Image::ExifTool::MacOS; -$VERSION = '3.59'; +$VERSION = '3.61'; @ISA = qw(Exporter); sub NumbersFirst($$); @@ -84,7 +84,8 @@ my %tweakOrder = ( Nintendo => 'NikonCapture', Pentax => 'Panasonic', SonyIDC => 'Sony', - Unknown => 'SonyIDC', + Vivo => 'SonyIDC', + Unknown => 'Vivo', DNG => 'Unknown', PrintIM => 'ICC_Profile', Vorbis => 'Ogg', @@ -100,6 +101,8 @@ my %tweakOrder = ( MWG => 'Shortcuts', 'FujiFilm::RAF' => 'FujiFilm::RAFHeader', 'FujiFilm::RAFData' => 'FujiFilm::RAF', + 'QuickTime::AudioKeys' => 'QuickTime::Keys', + 'QuickTime::VideoKeys' => 'QuickTime::AudioKeys', ); # list of all recognized Format strings @@ -437,15 +440,16 @@ appropriate table in the config file (see L<example.config|../config.html#PREF> in the full distribution for an example). Note that some tags with the same name but different ID's may exist in the same location, but the family 7 group names may be used to -differentiate these. ExifTool currently writes only top-level metadata in -QuickTime-based files; it extracts other track-specific and timed metadata, -but can not yet edit tags in these locations (with the exception of -track-level date/time tags). +differentiate these. -Beware that the Keys tags are actually stored inside the ItemList in the -file, so deleting the ItemList group as a block (ie. C<-ItemList:all=>) also -deletes Keys tags. Instead, to preserve Keys tags the ItemList tags may be -deleted individually with C<-QuickTime:ItemList:all=>. +ExifTool currently writes +L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and +L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> only as +top-level metadata, but select Keys tags are may be written to the audio or +video track. See the +L<AudioKeys|Image::ExifTool::TagNames/QuickTime AudioKeys Tags> and +L<VideoKeys|Image::ExifTool::TagNames/QuickTime VideoKeys Tags> tags for +more information. Alternate language tags may be accessed for L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and @@ -457,8 +461,8 @@ L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> tags support a language code, but without a country code. If no language code is specified when writing, the default language is written and alternate languages for the tag are deleted. Use the "und" language code to write the default -language without deleting alternate languages. Note that "eng" is treated -as a default language when reading, but not when writing. +language without deleting alternate languages. Note that when reading, +"eng" is also treated as the default language if there is no country code. According to the specification, integer-format QuickTime date/time tags should be stored as UTC. Unfortunately, digital cameras often store local @@ -688,7 +692,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>. ~head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -1340,7 +1344,7 @@ TagID: foreach $tagID (@keys) { $writable = 'yes' if $tw and $writable eq '1' or $writable eq '2'; $writable = '-' . ($tw ? $writable : ''); $writable .= '!' if $tw and ($$tagInfo{Protected} || 0) & 0x01; - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; if (defined $$tagInfo{Permanent}) { $writable .= '^' unless $$tagInfo{Permanent}; } elsif (defined $$table{PERMANENT}) { @@ -1398,7 +1402,7 @@ TagID: foreach $tagID (@keys) { } $writable = "=struct" if $struct; $writable .= '_' if defined $$tagInfo{Flat}; - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; $writable .= ':' if $$tagInfo{Mandatory}; if (defined $$tagInfo{Permanent}) { $writable .= '^' unless $$tagInfo{Permanent}; @@ -1566,7 +1570,7 @@ TagID: foreach $tagID (@keys) { $writable = 'string'; } } - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; push @vals, "($$tagInfo{Notes})" if $$tagInfo{Notes}; # handle PrintConv lookups in Structure elements my $printConv = $$tagInfo{PrintConv}; @@ -1783,9 +1787,10 @@ sub NumbersFirst($$) $rtnVal = $numbersFirst; } else { my ($a2, $b2) = ($a, $b); - # expand numbers to 3 digits (with restrictions to avoid messing up ascii-hex tags) - $a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ )?[.0-9 ]*$/ and length($a2)<16; - $b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ )?[.0-9 ]*$/ and length($b2)<16; + # expand numbers to 3 digits (with restrictions to avoid messing up + # ascii-hex tags -- Nikon LensID's are 23 characters long) + $a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($a2)<23; + $b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($b2)<23; $caseInsensitive and $rtnVal = (lc($a2) cmp lc($b2)); $rtnVal or $rtnVal = ($a2 cmp $b2); } @@ -2811,7 +2816,7 @@ Returned list of writable pseudo tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CBOR.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CBOR.pm index 5f98009..c270e60 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CBOR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CBOR.pm @@ -324,7 +324,7 @@ specification. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Canon.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Canon.pm index 4b25c6a..f9047c2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Canon.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Canon.pm @@ -88,7 +88,7 @@ sub ProcessCTMD($$$); sub ProcessExifInfo($$$); sub SwapWords($); -$VERSION = '4.86'; +$VERSION = '4.87'; # Note: Removed 'USM' from 'L' lenses since it is redundant - PH # (or is it? Ref 32 shows 5 non-USM L-type lenses) @@ -632,8 +632,10 @@ $VERSION = '4.86'; '61182.55' => 'Canon RF-S 10-18mm F4.5-6.3 IS STM', #42 '61182.56' => 'Canon RF 35mm F1.4 L VCM', #42 '61182.57' => 'Canon RF 70-200mm F2.8 L IS USM Z', #42 - '61182.58' => 'Canon RF 50mm F1.4 L VCM', #42 - '61182.59' => 'Canon RF 24mm F1.4 L VCM', #42 + '61182.58' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42 + '61182.59' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42 + '61182.60' => 'Canon RF 50mm F1.4 L VCM', #42 + '61182.61' => 'Canon RF 24mm F1.4 L VCM', #42 65535 => 'n/a', ); @@ -7023,6 +7025,8 @@ my %ciMaxFocal = ( 317 => 'Canon RF-S 3.9mm F3.5 STM DUAL FISHEYE', #42 318 => 'Canon RF 28-70mm F2.8 IS STM', #42 319 => 'Canon RF 70-200mm F2.8 L IS USM Z', #42 + 320 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42 + 321 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42 325 => 'Canon RF 50mm F1.4 L VCM', #42 326 => 'Canon RF 24mm F1.4 L VCM', #42 # Note: add new RF lenses to %canonLensTypes with ID 61182 @@ -10591,7 +10595,7 @@ Canon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonCustom.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonCustom.pm index f091f82..d509e2b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonCustom.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonCustom.pm @@ -2873,7 +2873,7 @@ Image::ExifTool to read this information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonRaw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonRaw.pm index 2c18657..241b35d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonRaw.pm @@ -888,7 +888,7 @@ tags.) =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonVRD.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonVRD.pm index 9dca19c..49c0952 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonVRD.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CanonVRD.pm @@ -2288,7 +2288,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CaptureOne.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CaptureOne.pm index b9253da..a4db319 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CaptureOne.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/CaptureOne.pm @@ -221,7 +221,7 @@ settings files (COS). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Casio.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Casio.pm index 13a4498..ee8c073 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Casio.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Casio.pm @@ -2034,7 +2034,7 @@ Casio maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Charset.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Charset.pm index 4e7e5ce..fb64108 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Charset.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Charset.pm @@ -422,7 +422,7 @@ when decoding certain types of information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DICOM.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DICOM.pm index 3bac779..9016493 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DICOM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DICOM.pm @@ -3853,7 +3853,7 @@ No translation of special characters sets is done. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DJI.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DJI.pm index ee89bf4..7a64b67 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DJI.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DJI.pm @@ -5,22 +5,30 @@ # # Revisions: 2016-07-25 - P. Harvey Created # 2017-06-23 - PH Added XMP tags +# 2024-12-04 - PH Added protobuf tags #------------------------------------------------------------------------------ package Image::ExifTool::DJI; use strict; -use vars qw($VERSION); +use vars qw($VERSION %knownProtocol); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; use Image::ExifTool::XMP; use Image::ExifTool::GPS; use Image::ExifTool::Protobuf; -$VERSION = '1.10'; +$VERSION = '1.12'; sub ProcessDJIInfo($$$); +%knownProtocol = ( + 'dvtm_ac203.proto' => 1, # Osmo Action 4 + 'dvtm_ac204.proto' => 1, # Osmo Action 5 + 'dvtm_AVATA2.proto' => 1, # Avanta 2 + 'dvtm_wm265e.proto' => 1, # Mavic 3 +); + my %convFloat2 = ( PrintConv => 'sprintf("%+.2f", $val)', PrintConvInv => '$val', @@ -189,47 +197,50 @@ my %convFloat2 = ( # metadata in protobuf format (djmd and dbgi meta types, ref PH) %Image::ExifTool::DJI::Protobuf = ( - GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Location' }, + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Camera' }, TAG_PREFIX => '', PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, NOTES => q{ - Tags found in protobuf-format DJI meta djmd and dbgi timed metadata. Only a - few tags are currently known, but unknown djmd tags may be extracted by - setting the Unknown option to 1 (or 2 to also extract unknown dbgi debug - tags). Tag ID's are composed of the corresponding .proto file name combined - with the hierarchical protobuf field numbers. The "dvtm_AVATA2.proto" file - is used by the DJI Avanta 2, and "dvtm_ac203.proto" by the OsmoAction4. + Tags found in protobuf-format DJI djmd and dbgi timed metadata. The known + tags listed below are extracted by default, but unknown djmd tags may be + extracted as well by setting the Unknown option to 1, or 2 to also extract + unknown dbgi debug tags. Tag ID's are composed of the corresponding .proto + file name combined with the hierarchical protobuf field numbers. + + ExifTool currently extracts timed GPS plus a few other tags from DJI devices + which use the following protocols: dvtm_AVATA2.proto (Avanta 2), + dvtm_ac203.proto (Osmo Action 4), dvtm_ac204.proto (Osmo Action 5) and + dvtm_wm265e.proto (Mavic 3). + + Note that with the protobuf format, numerical tags missing from the output + for a given protocol should be considered to have the default value of 0. + }, + Protocol => { + RawConv => q{ + unless ($Image::ExifTool::DJI::knownProtocol{$val}) { + $self->Warn("Unknown protocol $val (please submit sample for testing)"); + } + return $val; + }, }, - Protocol => { }, +# +# Osmo Action 4 +# + 'dvtm_ac203_1-1-5' => 'SerialNumber', # (NC) # dvtm_ac203_1-1-6 - some version number 'dvtm_ac203_1-1-10' => 'Model', - 'dvtm_ac203_2-3-1' => { Name => 'FrameWidth', Format => 'unsigned' }, - 'dvtm_ac203_2-3-2' => { Name => 'FrameHeight', Format => 'unsigned' }, - 'dvtm_ac203_2-3-3' => { Name => 'FrameRate', Format => 'float' }, - # dvtm_ac203_3-4-1-4 - model code? - 'dvtm_ac203_3-4-2-1-1' => { - Name => 'CoordinateUnits', - Format => 'unsigned', - # don't extract this -- just convert to degrees - RawConv => '$$self{CoordUnits} = $val; undef', - Hidden => 1, - # PrintConv => { 0 => 'Radians', 1 => 'Degrees' }, - }, - 'dvtm_ac203_3-4-2-1-2' => { - Name => 'GPSLatitude', - Format => 'double', - # set ExifTool GPSLatitude/GPSLongitude members so GPSDateTime will be generated if necessary - RawConv => '$$self{GPSLatitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) - PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', + 'dvtm_ac203_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, }, - 'dvtm_ac203_3-4-2-1-3' => { - Name => 'GPSLongitude', - Format => 'double', - RawConv => '$$self{GPSLongitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) - PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")', + # dvtm_ac203_3-4-1-4 - model code? + 'dvtm_ac203_3-4-2-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, }, 'dvtm_ac203_3-4-2-2' => { Name => 'GPSAltitude', + Groups => { 2 => 'Location' }, Format => 'unsigned', ValueConv => '$val / 1000', }, @@ -241,38 +252,131 @@ my %convFloat2 = ( ValueConv => '$val =~ tr/-/:/; $val', PrintConv => '$self->ConvertDateTime($val)', }, +# +# Osmo Action 5 +# + 'dvtm_ac204_1-1-5' => 'SerialNumber', # (NC) + # dvtm_ac204_1-1-6 - some version number + 'dvtm_ac204_1-1-10' => 'Model', + 'dvtm_ac204_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, + # dvtm_ac204_3-4-1-4 - model code? + 'dvtm_ac204_3-4-2-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, + # dvtm_ac204_3-2-4-1 - shutter speed? (rational) + 'dvtm_ac204_3-4-2-2' => { + Name => 'GPSAltitude', + Groups => { 2 => 'Location' }, + Format => 'unsigned', + ValueConv => '$val / 1000', + }, + 'dvtm_ac204_3-4-2-6-1' => { + Name => 'GPSDateTime', + Format => 'string', + Groups => { 2 => 'Time' }, + RawConv => '$$self{GPSDateTime} = $val', + ValueConv => '$val =~ tr/-/:/; $val', + PrintConv => '$self->ConvertDateTime($val)', + }, +# +# Avanta 2 +# # dvtm_AVATA2_1-1-2 - some version number # dvtm_AVATA2_1-1-3 - some version number + 'dvtm_AVATA2_1-1-5' => 'SerialNumber', # (NC) 'dvtm_AVATA2_1-1-10' => 'Model', - 'dvtm_AVATA2_2-2-3-1' => 'SerialNumber', # (NC) - 'dvtm_AVATA2_2-3-1' => { Name => 'FrameWidth', Format => 'unsigned' }, - 'dvtm_AVATA2_2-3-2' => { Name => 'FrameHeight', Format => 'unsigned' }, - 'dvtm_AVATA2_2-3-3' => { Name => 'FrameRate', Format => 'float' }, + # dvtm_AVATA2_2-2-1-4 - model code? + 'dvtm_AVATA2_2-2-3-1' => 'SerialNumber2', # (NC) + 'dvtm_AVATA2_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, # dvtm_AVATA2_3-1-1 - frame number (starting at 1) 'dvtm_AVATA2_3-1-2' => { # (also 3-2-1-6 and 3-4-1-6) Name => 'TimeStamp', + Groups => { 2 => 'Time' }, Format => 'unsigned', # milliseconds, but I don't know what the zero is ValueConv => '$val / 1e6', }, # dvtm_AVATA2_3-2-1-4 - model code? + # dvtm_AVATA2_3-2-1-5 - frame rate? + # dvtm_AVATA2_3-2-4-1 - shutter speed? (rational) # dvtm_AVATA2_3-4-1-4 - model code? - 'dvtm_AVATA2_3-4-4-1-1' => { # (NC) (default seems to be radians if missing) - Name => 'CoordinateDegrees', + # dvtm_AVATA2_3-4-3-1,2,3 - YPR? (int64s) + 'dvtm_AVATA2_3-4-4-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, +# +# Mavic 3 +# + 'dvtm_wm265e_1-1-5' => 'SerialNumber', # (confirmed) + 'dvtm_wm265e_1-1-10' => 'Model', + 'dvtm_wm265e_2-2' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, + # dvtm_wm265e_3-2-1-4 - model code? + 'dvtm_wm265e_3-2-2-1' => { Name => 'ISO', Format => 'float' }, + 'dvtm_wm265e_3-2-3-1' => { + Name => 'ShutterSpeed', + Format => 'rational', + ValueConv => '$val =~ m{(.*)/(.*)} ? $1 / $2 : $val', + PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', + }, + # dvtm_wm265e_3-2-5-1 - unknown rational (xxxx / 1000) + 'dvtm_wm265e_3-2-6-1' => { Name => 'DigitalZoom', Format => 'float' }, + 'dvtm_wm265e_3-3-4-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, + 'dvtm_wm265e_3-3-3-1' => { Name => 'DroneRoll', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-3-2' => { Name => 'DronePitch', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-3-3' => { Name => 'DroneYaw', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-4-2' => { Name => 'AbsoluteAltitude', ValueConv => '$val / 1000' }, + 'dvtm_wm265e_3-3-5-1' => { Name => 'RelativeAltitude', Format => 'float', ValueConv => '$val / 1000' }, + 'dvtm_wm265e_3-4-3-1' => { Name => 'GimbalPitch',Format => 'int64s', ValueConv => '$val / 10' }, + 'dvtm_wm265e_3-4-3-2' => { Name => 'GimbalRoll', Format => 'int64s', ValueConv => '$val / 10' }, + 'dvtm_wm265e_3-4-3-3' => { Name => 'GimbalYaw', Format => 'int64s', ValueConv => '$val / 10' }, +); + +%Image::ExifTool::DJI::FrameInfo = ( + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Video' }, + PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, + VARS => { HEX_ID => 0 }, + 1 => { Name => 'FrameWidth', Format => 'unsigned' }, + 2 => { Name => 'FrameHeight', Format => 'unsigned' }, + 3 => { Name => 'FrameRate', Format => 'float' }, +); + +%Image::ExifTool::DJI::GPSInfo = ( + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Location' }, + PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, + VARS => { HEX_ID => 0 }, + 1 => { + Name => 'CoordinateUnits', Format => 'unsigned', - RawConv => '$$self{CoordDegrees} = $val; undef', - Hidden => 1, + Notes => 'not extracted, but used internally to convert coordinates to degrees', + # don't extract this -- just convert to degrees + RawConv => '$$self{CoordUnits} = $val; undef', + # PrintConv => { 0 => 'Radians', 1 => 'Degrees' }, }, - 'dvtm_AVATA2_3-4-4-1-2' => { + 2 => { Name => 'GPSLatitude', Format => 'double', - RawConv => '$$self{GPSLatitude} = $$self{CoordDegrees} ? $val : $val * 180 / 3.141592653589793', # (NC) + # set ExifTool GPSLatitude/GPSLongitude members so GPSDateTime will be generated if necessary + RawConv => '$$self{GPSLatitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', }, - 'dvtm_AVATA2_3-4-4-1-3' => { + 3 => { Name => 'GPSLongitude', Format => 'double', - RawConv => '$$self{GPSLongitude} = $$self{CoordDegrees} ? $val : $val * 180 / 3.141592653589793', # (NC) + RawConv => '$$self{GPSLongitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")', }, ); @@ -328,7 +432,7 @@ the maker notes in images from some DJI Phantom drones. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DNG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DNG.pm index 4b937ff..783e1c1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DNG.pm @@ -849,7 +849,7 @@ information in DNG (Digital Negative) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DPX.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DPX.pm index 4c81b25..5ce3939 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DPX.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DPX.pm @@ -225,7 +225,7 @@ metadata from DPX (Digital Picture Exchange) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DV.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DV.pm index 359a6a9..91b2604 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DV.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DV.pm @@ -291,7 +291,7 @@ information from DV (raw Digital Video) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DarwinCore.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DarwinCore.pm index 54bdad0..33d71da 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DarwinCore.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DarwinCore.pm @@ -372,7 +372,7 @@ This file contains tag definitions for the Darwin Core XMP namespace. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DjVu.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DjVu.pm index b34aac5..cf566ef 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DjVu.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/DjVu.pm @@ -353,7 +353,7 @@ Image::ExifTool::AIFF. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/EXE.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/EXE.pm index 4665398..1a856dd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/EXE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/EXE.pm @@ -13,6 +13,7 @@ # 5) http://msdn.microsoft.com/en-us/library/ms809762.aspx # 6) http://code.google.com/p/pefile/ # 7) http://www.codeproject.com/KB/DLL/showver.aspx +# 8) https://learn.microsoft.com/en-us/windows/win32/debug/pe-format #------------------------------------------------------------------------------ package Image::ExifTool::EXE; @@ -21,7 +22,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.19'; +$VERSION = '1.21'; sub ProcessPEResources($$); sub ProcessPEVersion($$); @@ -171,6 +172,13 @@ my %languageCode = ( '100C' => 'French (Swiss)', ); +my %int32uTime = ( + Format => 'int32u', + Groups => { 0 => 'EXE', 1 => 'EXE', 2 => 'Time' }, + ValueConv => 'ConvertUnixTime($val,1)', + PrintConv => '$self->ConvertDateTime($val)', +); + # Information extracted from PE COFF (Windows EXE) file header %Image::ExifTool::EXE::Main = ( PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, @@ -215,13 +223,7 @@ my %languageCode = ( 0xc0ee => 'clr pure MSIL', }, }, - 2 => { - Name => 'TimeStamp', - Format => 'int32u', - Groups => { 2 => 'Time' }, - ValueConv => 'ConvertUnixTime($val,1)', - PrintConv => '$self->ConvertDateTime($val)', - }, + 2 => { Name => 'TimeStamp', %int32uTime }, 9 => { Name => 'ImageFileCharacteristics', # ref https://docs.microsoft.com/en-us/windows/desktop/api/winnt/ns-winnt-_image_file_header @@ -243,6 +245,10 @@ my %languageCode = ( 15 => 'Bytes reversed hi', }}, }, +# +# optional header starts at index 10 +# (note: all extracted tags are the same for 32 and 64-bit versions of the optional header) +# 10 => { Name => 'PEType', PrintHex => 1, @@ -308,6 +314,42 @@ my %languageCode = ( }, ); +# information extracted from newer CodeView PDB70 ("RSDS") debug entry +%Image::ExifTool::EXE::DebugRSDS = ( + GROUPS => { 2 => 'Other' }, + PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, + NOTES => 'CodeView RSDS debug information found in some Windows EXE files.', + 0 => { + Name => 'PDBModifyDate', + Notes => 'Taken from debug directory entry pointing to RSDS record.', + %int32uTime, + }, + 20 => { Name => 'PDBAge', Format => 'int32u' }, + 24 => { Name => 'PDBFileName', Format => 'string' }, +); + +# information extracted from older CodeView PDB20 ("NB10") debug entry +%Image::ExifTool::EXE::DebugNB10 = ( + GROUPS => { 2 => 'Other' }, + PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, + NOTES => 'CodeView NB10 debug information found in some Windows EXE files.', + 0 => { + Name => 'PDBModifyDate', + Notes => 'Taken from debug directory entry pointing to NB10 record.', + %int32uTime, + }, + 8 => { Name => 'PDBCreateDate',%int32uTime }, + 12 => { Name => 'PDBAge', Format => 'int32u' }, + 16 => { Name => 'PDBFileName', Format => 'string' }, +); + +%Image::ExifTool::EXE::Misc = ( + GROUPS => { 2 => 'Other' }, + VARS => { ID_LABEL => 'Index1' }, + NOTES => 'Miscellaneous CodeView debug information in Windows EXE files.', + 12 => 'EXEFileName', +); + # PE file version information (ref 6) %Image::ExifTool::EXE::PEVersion = ( PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, @@ -974,6 +1016,22 @@ sub ProcessPEVersion($$) return 1; } +#------------------------------------------------------------------------------ +# Get actual file offset given a virtual address in a PE file +# Inputs: 0) virtual address, 1) section list ref +# Returns: absolute file offset or undef on error +sub GetFileOffset($$) +{ + my ($addr, $sections) = @_; + my $section; + foreach $section (@$sections) { + next unless $addr >= $$section{VirtualAddress} and + $addr < $$section{VirtualAddress} + $$section{Size}; + return $addr + $$section{Base} - $$section{VirtualAddress}; + } + return undef; +} + #------------------------------------------------------------------------------ # Process Windows PE Resources # Inputs: 0) ExifTool object ref, 1) dirInfo ref @@ -994,6 +1052,7 @@ sub ProcessPEResources($$) my $nameEntries = Get16u(\$buff, 12); my $idEntries = Get16u(\$buff, 14); my $count = $nameEntries + $idEntries; + return 0 if $count > 10000; $raf->Read($buff, $count * 8) == $count * 8 or return 0; # loop through all resource entries for ($item=0; $item<$count; ++$item) { @@ -1023,18 +1082,12 @@ sub ProcessPEResources($$) # get position of this resource in the file my $buf2; $raf->Seek($entryPos + $base, 0) and $raf->Read($buf2, 16) == 16 or return 0; - my $off = Get32u(\$buf2, 0); + my $addr = Get32u(\$buf2, 0); my $len = Get32u(\$buf2, 4); # determine which section this is in so we can convert the virtual address - my ($section, $filePos); - foreach $section (@{$$dirInfo{Sections}}) { - next unless $off >= $$section{VirtualAddress} and - $off < $$section{VirtualAddress} + $$section{Size}; - $filePos = $off + $$section{Base} - $$section{VirtualAddress}; - last; - } - return 0 unless $filePos; - $raf->Seek($filePos, 0) and $raf->Read($buf2, $len) == $len or return 0; + my $fileOff = GetFileOffset($addr, $$dirInfo{Sections}); + return 0 unless $fileOff; + $raf->Seek($fileOff, 0) and $raf->Read($buf2, $len) == $len or return 0; ProcessPEVersion($et, { DataPt => \$buf2, DataLen => $len, @@ -1050,7 +1103,8 @@ sub ProcessPEResources($$) #------------------------------------------------------------------------------ # Process Windows PE file data dictionary # Inputs: 0) ExifTool object ref, 1) dirInfo ref -# Returns: true on success +# Returns: true on success or if the PE resources didn't exist, or false on error +# processing the PE resources sub ProcessPEDict($$) { my ($et, $dirInfo) = @_; @@ -1078,6 +1132,7 @@ sub ProcessPEDict($$) Sections => \@sections, ); } + $$dirInfo{Sections} = \@sections; # return section information # process the first resource section ProcessPEResources($et, \%dirInfo) or return 0 if %dirInfo; return 1; @@ -1228,11 +1283,12 @@ sub ProcessEXE($$) # read the rest of the optional header if necessary my $optSize = Get16u(\$buff, 20); my $more = $optSize + 24 - $size; + my $magic = 0; if ($more > 0) { if ($raf->Read($buf2, $more) == $more) { $buff .= $buf2; $size += $more; - my $magic = Get16u(\$buff, 24); + $magic = Get16u(\$buff, 24); # verify PE magic number unless ($magic == 0x107 or $magic == 0x10b or $magic == 0x20b) { $et->Warn('Unknown PE magic number'); @@ -1246,21 +1302,54 @@ sub ProcessEXE($$) # process PE COFF file header $tagTablePtr = GetTagTable('Image::ExifTool::EXE::Main'); %dirInfo = ( - DataPt => \$buff, - DataPos => $raf->Tell() - $size, - DataLen => $size, + DataPt => \$buff, + DataPos => $raf->Tell() - $size, + DataLen => $size, DirStart => 4, - DirLen => $size - 4, + DirLen => $size - 4, ); $et->ProcessDirectory(\%dirInfo, $tagTablePtr); - # process data dictionary my $num = Get16u(\$buff, 6); # NumberOfSections - if ($raf->Read($buff, 40 * $num) == 40 * $num) { - %dirInfo = ( - RAF => $raf, - DataPt => \$buff, - ); - ProcessPEDict($et, \%dirInfo) or $et->Warn('Error processing PE data dictionary'); + # image data directory entry for debug info is index 6, + # so offset is 4 bytes + 20 byte header + 96 bytes into PE32 optional + # header (or 112 bytes for PE32+) + 6 * 8 bytes into data directory + my $dirEntry = $magic == 0x20b ? 184 : 168; + my ($addr, $len, $pos, $buf2); # virtual address/size of debug section + if (length($buff) >= $dirEntry + 8) { + $addr = Get32u(\$buff, $dirEntry); + $len = Get32u(\$buff, $dirEntry+4); + } + # process data dictionary + # (ref https://www.debuginfo.com/articles/debuginfomatch.html) + return 1 unless $raf->Read($buff, 40 * $num) == 40 * $num; + %dirInfo = ( RAF => $raf, DataPt => \$buff ); + ProcessPEDict($et, \%dirInfo) or $et->Warn('Error processing PE resources'); + # dive into debug section to extract pdb info if available + return 1 unless $addr and $len < 2800 and $dirInfo{Sections} and + ($magic == 0x10b or $magic == 0x20b); + # get file offset for debug section + my $off = GetFileOffset($addr, $dirInfo{Sections}); + return 1 unless $off and $raf->Seek($off,0) and + $raf->Read($buff,$len) == $len; + for ($pos=0; $pos+28<=$len; $pos+=28) { + my $type = Get32u(\$buff,$pos+12); + next unless $type == 2 or $type == 4; # (CodeView debug data) + my ($n, $of) = (Get32u(\$buff,$pos+16), Get32u(\$buff,$pos+24)); + next unless $n < 1e4 and $raf->Seek($of,0) and $raf->Read($buf2,$n) == $n; + if ($type == 2) { # CodeView debug info + next unless $buf2 =~ /^(RSDS|NB10)/; + $tagTablePtr = GetTagTable("Image::ExifTool::EXE::Debug$1"); + substr($buf2,0,4) = substr($buff,$pos+4,4); # use timestamp from debug dir + %dirInfo = ( DataPt => \$buf2, DataPos => $of ); + $et->ProcessDirectory(\%dirInfo, $tagTablePtr); + } else { # misc debug info + next unless $n > 12; + my $exe = substr($buf2,12); + $exe = $et->Decode($exe, 'UCS2') if Get32u(\$buf2,8); + $exe =~ s/\0.*//; # truncate at null + $tagTablePtr = GetTagTable('Image::ExifTool::EXE::Misc'); + $et->HandleTag($tagTablePtr, 12, $exe, DataPt => \$buf2, DataPos => $of); + } } return 1; } @@ -1454,7 +1543,7 @@ library files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -1477,6 +1566,8 @@ under the same terms as Perl itself. =item L<http://www.codeproject.com/KB/DLL/showver.aspx> +=item L<https://learn.microsoft.com/en-us/windows/win32/debug/pe-format> + =back =head1 SEE ALSO diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Exif.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Exif.pm index 5686c63..af323d8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Exif.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Exif.pm @@ -57,7 +57,7 @@ use vars qw($VERSION $AUTOLOAD @formatSize @formatName %formatNumber %intFormat use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::MakerNotes; -$VERSION = '4.55'; +$VERSION = '4.56'; sub ProcessExif($$$); sub WriteExif($$$); @@ -246,10 +246,13 @@ $formatName[129] = 'utf8'; # (Exif 3.0) # 34888,34889 - ESRI reserved 34892 => 'Lossy JPEG', # (DNG 1.4) 34925 => 'LZMA2', #LibTiff - 34926 => 'Zstd', #LibTiff - 34927 => 'WebP', #LibTiff + 34926 => 'Zstd (old)', #LibTiff + 34927 => 'WebP (old)', #LibTiff 34933 => 'PNG', # (TIFF mail list) 34934 => 'JPEG XR', # (TIFF mail list) + 50000 => 'Zstd', #LibTiff 4.7 + 50001 => 'WebP', #LibTiff 4.7 + 50002 => 'JPEG XL (old)', #LibTiff 4.7 52546 => 'JPEG XL', # (DNG 1.7) 65000 => 'Kodak DCR Compressed', #PH 65535 => 'Pentax PEF Compressed', #Jens @@ -7140,7 +7143,7 @@ EXIF and TIFF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FITS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FITS.pm index 3008b8b..e474027 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FITS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FITS.pm @@ -137,7 +137,7 @@ information from FITS (Flexible Image Transport System) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLAC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLAC.pm index 9cfc370..6dd8801 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLAC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLAC.pm @@ -298,7 +298,7 @@ information from Free Lossless Audio Codec (FLAC) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIF.pm index 49d756b..11d21d9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIF.pm @@ -329,7 +329,7 @@ meta information in FLIF (Free Lossless Image Format) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIR.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIR.pm index 4d020be..e5a61c9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FLIR.pm @@ -1633,7 +1633,7 @@ Systems Inc. thermal image files (FFF, FPF and JPEG format). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Fixup.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Fixup.pm index 0ba4fb1..8a57e92 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Fixup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Fixup.pm @@ -354,7 +354,7 @@ linear list when ApplyFixups() is called. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Flash.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Flash.pm index d32a7f0..1373ea0 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Flash.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Flash.pm @@ -721,7 +721,7 @@ will add AMF3 support. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FlashPix.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FlashPix.pm index b1767ac..5dd1d0e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FlashPix.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FlashPix.pm @@ -2557,7 +2557,7 @@ JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Font.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Font.pm index d333388..921ba4b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Font.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Font.pm @@ -633,7 +633,7 @@ extracted from these formats. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FotoStation.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FotoStation.pm index 118db6d..b326349 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FotoStation.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FotoStation.pm @@ -243,7 +243,7 @@ write information from the FotoWare FotoStation trailer. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FujiFilm.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FujiFilm.pm index 9a6ede8..4d8ab08 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FujiFilm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/FujiFilm.pm @@ -1959,7 +1959,7 @@ FujiFilm maker notes in EXIF information, and to read/write FujiFilm RAW =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GE.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GE.pm index 04abcb1..bba4558 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GE.pm @@ -68,7 +68,7 @@ General Imaging maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIF.pm index 60c535d..5dc54b4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIF.pm @@ -596,7 +596,7 @@ write GIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIMP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIMP.pm index 85e57d1..7d8e37c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GIMP.pm @@ -270,7 +270,7 @@ GIMP software. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GM.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GM.pm index 10e44e0..a9c98ac 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GM.pm @@ -531,7 +531,7 @@ metadata from videos written by some GM models such as Corvette and Camero. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GPS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GPS.pm index af546e7..55af448 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GPS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GPS.pm @@ -619,7 +619,7 @@ GPS (Global Positioning System) meta information in EXIF data. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GeoTiff.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GeoTiff.pm index b3f468c..72e7849 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GeoTiff.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GeoTiff.pm @@ -2242,7 +2242,7 @@ coordinates. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geolocation.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geolocation.pm index ef1184f..4bdcbb5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geolocation.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geolocation.pm @@ -71,7 +71,7 @@ package Image::ExifTool::Geolocation; use strict; use vars qw($VERSION $geoDir $altDir $dbInfo); -$VERSION = '1.08'; # (this is the module version number, not the database version) +$VERSION = '1.09'; # (this is the module version number, not the database version) my $debug; # set to output processing time for testing @@ -463,7 +463,7 @@ sub GetAltNames($;$) sub Geolocate($;$) { my ($arg, $opts) = @_; - my ($city, @exact, %regex, @multiCity, $other, $idx, @cargs, $useLastFound); + my ($city, @exact, %regex, @multiCity, $other, $idx, @cargs); my ($minPop, $minDistU, $minDistC, @matchParms, @coords, %fcOK, $both); my ($pop, $maxDist, $multi, $fcodes, $altNames, @startTime); @@ -594,8 +594,16 @@ Entry: for (; $i<@cityList; ++$i) { } @startTime and printf("= Processing time: %.3f sec\n", Time::HiRes::tv_interval(\@startTime)); if (%lastFound) { - @coords == 2 and $useLastFound = 1, last; # continue to use coords with last city matches + last if @coords == 2; # continue to use coords with last city matches scalar(keys %lastFound) > 200 and warn("Too many matching cities\n"), return(); + # return nearby cities if "num=" is used and only one match found + if ($num > 1 and scalar(keys %lastFound) == 1) { + my ($i) = keys %lastFound; + my @entry = GetEntry($i); + @coords = @entry[8,9]; + SortDatabase('Latitude'); # (make sure we are sorted by latitude) + last; + } unless (@lastByPop) { @lastByPop = sort { $lastFound{$b} cmp $lastFound{$a} or $cityList[$a] cmp $cityList[$b] } keys %lastFound; } @@ -777,7 +785,7 @@ on the first call. Sort database in specified order. - Image::ExifTool::Geolocation::ReadDatabase('City'); + Image::ExifTool::Geolocation::SortDatabase('City'); =over 4 @@ -924,9 +932,10 @@ to the argument list: both to determine the closest city matching the specified name(s) instead of using GPS only. - 'num=##' - When the search includes GPS coordinates, return the nearest - ## cities instead of just the closest one. Returned cities - are in the order from nearest to farthest. + 'num=##' - When the search includes GPS coordinates, or when a single + city is matched by name, return the nearest ## cities instead + of just the closest or named one. Returned cities are in the + order from nearest to farthest. See L<https://exiftool.org/geolocation.html#Read> for more details. @@ -1006,7 +1015,7 @@ the input arguments of the AddEntry method. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The associated database files are diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geotag.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geotag.pm index 077241a..df7faa6 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geotag.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Geotag.pm @@ -1561,7 +1561,7 @@ user-defined tag GPSRoll, must be active. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GoPro.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GoPro.pm index aab6f29..323e32c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GoPro.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/GoPro.pm @@ -860,7 +860,7 @@ metadata from GoPro MP4 videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/H264.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/H264.pm index aefe58b..c00fdbb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/H264.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/H264.pm @@ -1123,7 +1123,7 @@ information from H.264 video streams. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HP.pm index afc40db..a350f5d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HP.pm @@ -250,7 +250,7 @@ Hewlett-Packard maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HTML.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HTML.pm index a58ce1d..f07f214 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HTML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HTML.pm @@ -555,7 +555,7 @@ meta information from HTML documents. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HtmlDump.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HtmlDump.pm index 3e805a4..c5adaf1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HtmlDump.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/HtmlDump.pm @@ -920,7 +920,7 @@ page. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICC_Profile.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICC_Profile.pm index c0b683c..7b122d1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICC_Profile.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICC_Profile.pm @@ -1436,7 +1436,7 @@ data created on one device into another device's native color space. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICO.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICO.pm index cc918fe..50e6c17 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICO.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ICO.pm @@ -121,7 +121,7 @@ information from Windows ICO (icon) and CUR (cursor) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ID3.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ID3.pm index a14929b..ae3ff3a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ID3.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ID3.pm @@ -18,7 +18,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.62'; +$VERSION = '1.63'; sub ProcessID3v2($$$); sub ProcessPrivate($$$); @@ -1278,9 +1278,9 @@ sub ProcessID3v2($$$) my $enc = unpack('C', $val); my ($tag, $url); if ($enc == 1 or $enc == 2) { - ($tag, $url) = ($tag =~ /^(.(?:..)*?)\0\0(.*)/s); + ($tag, $url) = ($val =~ /^(.(?:..)*?)\0\0(.*)/s); } else { - ($tag, $url) = ($tag =~ /^(..*?)\0(.*)/s); + ($tag, $url) = ($val =~ /^(..*?)\0(.*)/s); } unless (defined $tag and defined $url) { $et->Warn("Invalid $id frame value"); @@ -1293,7 +1293,7 @@ sub ProcessID3v2($$$) $tagInfo = $$tagTablePtr{$id} || AddTagToTable($tagTablePtr, $id, MakeTagName($tag)); } $url =~ s/\0.*//s; - $val = $url; + $val = $et->Decode($url, 'Latin'); } elsif ($id =~ /^W/) { $val =~ s/\0.*//s; # truncate at null } elsif ($id =~ /^(COM|COMM|ULT|USLT)$/) { @@ -1746,7 +1746,7 @@ other types of audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/IPTC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/IPTC.pm index 0cb24ec..2762659 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/IPTC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/IPTC.pm @@ -15,7 +15,7 @@ use strict; use vars qw($VERSION $AUTOLOAD %iptcCharset); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.58'; +$VERSION = '1.59'; %iptcCharset = ( "\x1b%G" => 'UTF8', @@ -1057,7 +1057,7 @@ sub ProcessIPTC($$$) my $verbose = $et->Options('Verbose'); my $validate = $et->Options('Validate'); my $success = 0; - my ($lastRec, $recordPtr, $recordName); + my ($lastRec, $recordPtr, $recordName, %seen); $verbose and $dirInfo and $et->VerboseDir('IPTC', 0, $$dirInfo{DirLen}); @@ -1083,7 +1083,7 @@ sub ProcessIPTC($$$) $et->FoundTag('CurrentIPTCDigest', $md5); } } else { - if (($Image::ExifTool::MWG::strict or $et->Options('Validate')) and + if (($Image::ExifTool::MWG::strict or $validate) and $$et{FILE_TYPE} =~ /^(JPEG|TIFF|PSD)$/) { if ($Image::ExifTool::MWG::strict) { @@ -1186,8 +1186,11 @@ sub ProcessIPTC($$$) # - no Name so name is generated automatically with decimal tag number AddTagToTable($recordPtr, $tag, { Unknown => 1 }); } - my $tagInfo = $et->GetTagInfo($recordPtr, $tag); + if ($validate and not $$tagInfo{List} and not $$tagInfo{Unknown}) { + $et->Warn("Multiple IPTC $$tagInfo{Name} tags") if $seen{$tagInfo}; + $seen{$tagInfo} = 1; + } my $format; # (could use $$recordPtr{FORMAT} if no Format below, but don't do this to # be backward compatible with improperly written PhotoMechanic tags) @@ -1284,7 +1287,7 @@ image files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ISO.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ISO.pm index eb5631b..1df15d4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ISO.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ISO.pm @@ -184,7 +184,7 @@ information from ISO 9660 disk images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ITC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ITC.pm index d01525c..6e65196 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ITC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ITC.pm @@ -191,7 +191,7 @@ information (including artwork images) from iTunes Cover Flow files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Import.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Import.pm index 3a2c31e..15a0589 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Import.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Import.pm @@ -12,7 +12,7 @@ require Exporter; use vars qw($VERSION @ISA @EXPORT_OK); -$VERSION = '1.13'; +$VERSION = '1.14'; @ISA = qw(Exporter); @EXPORT_OK = qw(ReadCSV ReadJSON); @@ -80,14 +80,15 @@ sub ReadCSV($$;$$) } if (@tags) { # save values for each tag + $fileInfo{_ordered_keys_} = [ ]; for ($i=0; $i<@vals and $i<@tags; ++$i) { # ignore empty entries unless missingValue is empty too next unless length $vals[$i] or defined $missingValue and $missingValue eq ''; # delete tag (set value to undef) if value is same as missing tag $fileInfo{$tags[$i]} = (defined $missingValue and $vals[$i] eq $missingValue) ? undef : $vals[$i]; + push @{$fileInfo{_ordered_keys_}}, $tags[$i]; } - $fileInfo{_ordered_keys_} = \@tags; # figure out the file name to use if ($fileInfo{SourceFile}) { $$database{$fileInfo{SourceFile}} = \%fileInfo; @@ -99,7 +100,7 @@ sub ReadCSV($$;$$) # terminate at first blank tag name (eg. extra comma at end of line) last unless length $_; @tags or s/^\xef\xbb\xbf//; # remove UTF-8 BOM if it exists - /^[-\w]+(:[-\w+]+)?#?$/ or $err = "Invalid tag name '${_}'", last; + /^([-_0-9A-Z]+:)*[-_0-9A-Z]+#?$/i or $err = "Invalid tag name '${_}'", last; push(@tags, $_); } last if $err; @@ -355,7 +356,7 @@ ARRAY reference in a special "_ordered_keys_" element of this hash. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InDesign.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InDesign.pm index 4f0f8a0..fb53500 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InDesign.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InDesign.pm @@ -277,7 +277,7 @@ them and the LargeFileSupport option is enabled. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InfiRay.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InfiRay.pm index 794205e..962bafd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InfiRay.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/InfiRay.pm @@ -206,7 +206,7 @@ IJPEG SDK, used in cameras such as the P2 Pro. =head1 AUTHOR -Copyright 2003-2024, Marcos Del Sol Vives (marcos at orca.pet) +Copyright 2003-2025, Marcos Del Sol Vives (marcos at orca.pet) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEG.pm index 6a47ae9..df4bfad 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEG.pm @@ -11,7 +11,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.38'; +$VERSION = '1.39'; sub ProcessOcad($$$); sub ProcessJPEG_HDR($$$); @@ -347,6 +347,10 @@ sub ProcessJPEG_HDR($$$); Name => 'Samsung', Condition => '$$valPt =~ /QDIOBS$/', SubDirectory => { TagTable => 'Image::ExifTool::Samsung::Trailer' }, + }, { + Name => 'Vivo', + Condition => '$$valPt =~ /^(streamdata|vivo\{")/', + SubDirectory => { TagTable => 'Image::ExifTool::Vivo::Main' }, }, { Name => 'EmbeddedVideo', Notes => 'extracted only when ExtractEmbedded option is used', @@ -791,7 +795,7 @@ segments are included in the Image::ExifTool module itself. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEGDigest.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEGDigest.pm index 3c7131f..e37438e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEGDigest.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JPEGDigest.pm @@ -2590,7 +2590,7 @@ estimated JPEG quality if requested. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JSON.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JSON.pm index eab5a49..a81af06 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JSON.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JSON.pm @@ -183,7 +183,7 @@ information from JSON files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JVC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JVC.pm index c279666..a820261 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JVC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/JVC.pm @@ -117,7 +117,7 @@ notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Jpeg2000.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Jpeg2000.pm index d7a8306..eb25a35 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Jpeg2000.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Jpeg2000.pm @@ -1671,7 +1671,7 @@ files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Kodak.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Kodak.pm index 316808a..e8783bb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Kodak.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Kodak.pm @@ -3252,7 +3252,7 @@ interpret Kodak maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/KyoceraRaw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/KyoceraRaw.pm index 38248d9..5e29ea9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/KyoceraRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/KyoceraRaw.pm @@ -152,7 +152,7 @@ meta information from Kyocera Contax N Digital RAW images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LIF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LIF.pm index 837c976..275e6f8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LIF.pm @@ -147,7 +147,7 @@ metadata from Leica Image File (LIF) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LNK.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LNK.pm index 5a48481..843df4b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LNK.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LNK.pm @@ -703,7 +703,7 @@ information MS Shell Link (Windows shortcut) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/cs.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/cs.pm index a29ab1b..42ffc91 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/cs.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/cs.pm @@ -1570,7 +1570,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/de.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/de.pm index 2fe330d..066ade8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/de.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/de.pm @@ -8702,7 +8702,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_ca.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_ca.pm index 4a54965..e4b008e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_ca.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_ca.pm @@ -989,7 +989,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_gb.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_gb.pm index 0798c7c..cf8fa8f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_gb.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/en_gb.pm @@ -1032,7 +1032,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/es.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/es.pm index 84dc64a..68a78b2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/es.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/es.pm @@ -4005,7 +4005,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fi.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fi.pm index b89c503..f4e6455 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fi.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fi.pm @@ -2878,7 +2878,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fr.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fr.pm index e5f25dd..82856d9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fr.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/fr.pm @@ -11270,7 +11270,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/it.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/it.pm index ce0f312..58440b3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/it.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/it.pm @@ -7903,7 +7903,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ja.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ja.pm index 01acea4..1a28d9f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ja.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ja.pm @@ -5841,7 +5841,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ko.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ko.pm index 8be88fb..e9967df 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ko.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ko.pm @@ -2316,7 +2316,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/nl.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/nl.pm index 9983548..8941b4c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/nl.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/nl.pm @@ -3208,7 +3208,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/pl.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/pl.pm index c6a30c6..1396064 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/pl.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/pl.pm @@ -1258,7 +1258,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ru.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ru.pm index f70268e..2d54609 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ru.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/ru.pm @@ -5718,7 +5718,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sk.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sk.pm index 66f59da..da8220c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sk.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sk.pm @@ -1789,7 +1789,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sv.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sv.pm index 5d0911a..34709bb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sv.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/sv.pm @@ -620,7 +620,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/tr.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/tr.pm index 3fa14c4..da965cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/tr.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/tr.pm @@ -528,7 +528,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_cn.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_cn.pm index f99b85d..d3294cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_cn.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_cn.pm @@ -1313,7 +1313,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_tw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_tw.pm index f82ec69..c58a859 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_tw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lang/zh_tw.pm @@ -784,7 +784,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Leaf.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Leaf.pm index eec0703..de8463b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Leaf.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Leaf.pm @@ -504,7 +504,7 @@ Capture. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LigoGPS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LigoGPS.pm new file mode 100644 index 0000000..353b6fc --- /dev/null +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/LigoGPS.pm @@ -0,0 +1,409 @@ +#------------------------------------------------------------------------------ +# File: LigoGPS.pm +# +# Description: Read LIGOGPSINFO timed GPS records +# +# Revisions: 2024-12-30 - P. Harvey Created +#------------------------------------------------------------------------------ +package Image::ExifTool::LigoGPS; + +use strict; +use vars qw($VERSION); +use Image::ExifTool; + +$VERSION = '1.02'; + +sub ProcessLigoGPS($$$;$); +sub ProcessLigoJSON($$$); +sub OrderCipherDigits($$$;$); + +my $knotsToKph = 1.852; # knots --> km/h + +#------------------------------------------------------------------------------ +# Clean up cipher variables and print warning if deciphering was unsuccessful +# Inputs: 0) ExifTool ref +sub CleanupCipher($) +{ + my $et = shift; + if ($$et{LigoCipher} and $$et{LigoCipher}{'next'}) { + $et->Warn('Not enough GPS points to determine cipher for decoding LIGOGPSINFO'); + } + delete $$et{LigoCipher}; +} + +#------------------------------------------------------------------------------ +# Un-do LIGOGPS fuzzing +# Inputs: 0) fuzzed latitude, 1) fuzzed longitude, 2) scale factor +# Returns: 0) latitude, 1) longitude +sub UnfuzzLigoGPS($$$) +{ + my ($lat, $lon, $scl) = @_; + my $lat2 = int($lat / 10) * 10; + my $lon2 = int($lon / 10) * 10; + return($lat2 + ($lon - $lon2) * $scl, $lon2 + ($lat - $lat2) * $scl); +} + +#------------------------------------------------------------------------------ +# Decrypt LIGOGPSINFO record (starting with "####") +# Inputs: 0) encrypted GPS record incuding 8-byte header +# Returns: decrypted record including 4-byte uint32 header, or undef on error +sub DecryptLigoGPS($) +{ + my $str = shift; + my $num = unpack('x4V',$str); + return undef if $num < 4; + $num = 0x84 if $num > 0x84; # (be safe) + my @in = unpack("x8C$num",$str); + my @out; + while (@in) { + my $b = shift @in; # get next byte in data + # upper 3 bits steer the decryption for this round + my $steeringBits = $b & 0xe0; + if ($steeringBits >= 0xc0) { + return undef if @in < 4; # next 4 bytes are encrypted data + push @out, (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x02) ^ 0x20, + (shift(@in) | $b & 0x0c) ^ 0x20, + shift(@in) ^ 0x20 | $b & 0x30; + } elsif ($steeringBits >= 0x40) { + return undef if @in < 3; # next 3 bytes are encrypted data + if ($steeringBits == 0x40) { + push @out, 0x20, + (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x06) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20; + } elsif ($steeringBits == 0x60) { + push @out, (shift(@in) | $b & 0x03) ^ 0x20, + 0x20, + (shift(@in) | $b & 0x04) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20; + } elsif ($steeringBits == 0x80) { + push @out, (shift(@in) | $b & 0x03) ^ 0x20, + (shift(@in) | $b & 0x0c) ^ 0x20, + 0x20, + (shift(@in) | $b & 0x10) ^ 0x20; + } else { + push @out, (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x06) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20, + 0x20; + } + } elsif ($steeringBits == 0x00) { + return undef if @in < 1; # next byte is encrypted data + push @out, shift(@in) | $b & 0x13; + } else { + return undef; # (shouldn't happen) + } + } + return pack 'C*', @out; +} + +#------------------------------------------------------------------------------ +# Determine correct ordering of enciphered digits (unit digits of seconds) +# Inputs: 0) starting character code, 1) lookup for next character(s) in sequence +# 2) i/o list of ordered characters, 3) hash of used characters +# Returns: true if a consistent ordering was found +# - loops through all possible orders based on $next sequence until a complete +# cycle is established +# - this complexity is necessary because GPS may skip some seconds +sub OrderCipherDigits($$$;$) +{ + my ($ch, $next, $order, $did) = @_; + $did or $did = { }; + while ($$next{$ch}) { + if (@$order < 10) { + last if $$did{$ch}; + } else { + # success if we have cycled through all 10 digits and back to the first + return 1 if @$order == 10 and $ch eq $$order[0]; + last; + } + push @$order, $ch; + $$did{$ch} = 1; + # continue with next character if there is only one possibility + @{$$next{$ch}} == 1 and $ch = $$next{$ch}[0], next; + # otherwise, test all possibilities + my $n = $#$order; + foreach (@{$$next{$ch}}) { + my %did = %$did; # make a copy of the used-character lookup + return 1 if OrderCipherDigits($_, $next, $order, \%did); + $#$order = $n; # restore order and try next possibility + } + last; + } + return 0; # failure +} + +#------------------------------------------------------------------------------ +# Decipher and parse LIGOGPSINFO record (starting with "####") +# Inputs: 0) ExifTool ref, 1) enciphered string, 2) tag table ref +# 3) true if GPS coordinates don't need de-fuzzing +# Returns: true if this looked like an enciphered string +# Notes: handles contained tags, but may defer handling until full cipher is known +sub DecipherLigoGPS($$$;$) +{ + my ($et, $str, $tagTbl, $noFuzz) = @_; + + # (enciphered characters must be in the range 0x30-0x5f ('0' - '_')) + $str =~ m[^####.{4}([0-_])[0-_]{3}/[0-_]{2}/[0-_]{2} ..([0-_])..([0-_]).([0-_]) ]s or return undef; + return undef unless $2 eq $3; # (colons in time string must be the same) + + my $cipherInfo = $$et{LigoCipher}; + unless ($cipherInfo) { + $cipherInfo = $$et{LigoCipher} = { cache => [ ], 'next' => { } }; + $et->AddCleanup(\&CleanupCipher); + }; + my $decipher = $$cipherInfo{decipher}; + my $cache = $$cipherInfo{cache}; + + # determine the cipher code table based on the advancing 1's digit of seconds + unless ($decipher) { + push @$cache, $str; # cache records until we can decipher them + my $next = $$cipherInfo{next}; + my ($millennium, $colon, $ch2) = ($1, $2, $4); + # determine the cipher lookup table + # (only characters in range 0x30-0x5f are encrypted) + my $ch1 = $$cipherInfo{ch1}; + $$cipherInfo{ch1} = $ch2; + return 1 if not defined $ch1 or $ch1 eq $ch2; # ignore duplicate sequential digits + if ($$next{$ch1}) { + return 1 if grep /\Q$ch2\E/, @{$$next{$ch1}}; # don't add twice + push @{$$next{$ch1}}, $ch2; + } else { + $$next{$ch1} = [ $ch2 ]; + } + # must wait until the lookup contains all 10 digits + scalar(keys %$next) < 10 and return 1; + # protect against trying to decipher bad data + scalar(keys %$next) > 10 and $$cipherInfo{'next'} = { }, return 1; + my (@order, $two); + return 1 unless OrderCipherDigits($ch1, $next, \@order); + # get index of enciphered "2" in ordered array + $order[$_] eq $millennium and $two = $_, last foreach 0..9; + defined $two or $et->Warn('Problem deciphering LIGOGPSINFO'), return 1; + delete $$cipherInfo{'next'}; # all done with 'next' lookup + my %decipher = ( $colon => ':' ); # (':' is the time separator) + foreach (0..9) { + my $ch = $order[($_ + $two - 2 + 10) % 10]; + $decipher{$ch} = chr($_ + 0x30); + } + # may also know the lat/lon quadrant from the signs of the coordinates + if ($str =~ / ([0-_])$colon(-?).*? ([0-_])$colon(-?)/) { + @decipher{$1,$3} = ($2 ? 'S' : 'N', $4 ? 'W' : 'E'); + unless ($2 or $4) { + my ($ns, $ew) = ($1, $3); + if ($$et{OPTIONS}{GPSQuadrant} and $$et{OPTIONS}{GPSQuadrant} =~ /^([NS])([EW])$/i) { + @decipher{$ns,$ew} = (uc($1), uc($2)); + } else { + $et->Warn('May need to set API GPSQuadrant option (eg. "NW")'); + } + } + } + # fill in unknown entries with '?' (only chars 0x30-0x5f are enciphered) + defined $decipher{$_} or $decipher{$_} = '?' foreach map(chr, 0x30..0x5f); + $decipher = $$cipherInfo{decipher} = \%decipher; + $str = shift @$cache; # start deciphering at oldest cache entry + } + + # apply reverse cipher and extract GPS information + do { + my $pre = substr($str, 4, 4); # save second 4 bytes of header + ($str = substr($str,8)) =~ s/\0+$//; # remove 8-byte header and null padding + $str =~ s/([0-_])/$$decipher{$1}/g; # decipher + if ($$et{OPTIONS}{Verbose} > 1) { + $et->VPrint(1, "$$et{INDENT}\(Deciphered: ".unpack('H8',$pre)." $str)\n"); + } + # add back leading 4 bytes (int16u counter plus 2 unknown bytes), and parse + ParseLigoGPS($et, "$pre$str", $tagTbl, $noFuzz); + } while $str = shift @$cache; + + return 1; +} + +#------------------------------------------------------------------------------ +# Parse decrypted/deciphered (but not defuzzed) LIGOGPSINFO record +# (record starts with 4-byte int32u counter followed by date/time, etc) +# Inputs: 0) ExifTool ref, 1) GPS string, 2) tag table ref, 3) not fuzzed +# Returns: nothing +sub ParseLigoGPS($$$;$) +{ + my ($et, $str, $tagTbl, $noFuzz) = @_; + + # example string input + # "....2022/09/19 12:45:24 N:31.285065 W:124.759483 46.93 km/h x:-0.000 y:-0.000 z:-0.000" + unless ($str=~ /^.{4}(\S+ \S+)\s+([NS?]):(-?)([.\d]+)\s+([EW?]):(-?)([\.\d]+)\s+([.\d]+)/s) { + $et->Warn('LIGOGPSINFO format error'); + return; + } + my ($time,$latRef,$latNeg,$lat,$lonRef,$lonNeg,$lon,$spd) = ($1,$2,$3,$4,$5,$6,$7,$8); + my %gpsScl = ( 1 => 1.524855137, 2 => 1.456027985, 3 => 1.15368 ); + my $spdScl = $noFuzz ? $knotsToKph : 1.85407333; + $$et{DOC_NUM} = ++$$et{DOC_COUNT}; + $time =~ tr(/)(:); + # convert from DDMM.MMMMMM to DD.DDDDDD if necessary + # (speed wasn't scaled in my 1 sample with this format) + $lat =~ /^\d{3}/ and Image::ExifTool::QuickTime::ConvertLatLon($lat,$lon), $spdScl = 1; + unless ($noFuzz) { # unfuzz the coordinates if necessary + my $scl = $$et{OPTIONS}{LigoGPSScale} || $$et{LigoGPSScale} || 1; + $scl = $gpsScl{$scl} if $gpsScl{$scl}; + ($lat, $lon) = UnfuzzLigoGPS($lat, $lon, $scl); + } + # a final sanity check + ($lat > 90 or $lon > 180) and $et->Warn('LIGOGPSINFO coordinates out of range'), return; + $$et{SET_GROUP1} = 'LIGO'; + $et->HandleTag($tagTbl, 'GPSDateTime', $time); + # (ignore N/S/E/W if coordinate is signed) + $et->HandleTag($tagTbl, 'GPSLatitude', $lat * (($latNeg or $latRef eq 'S') ? -1 : 1)); + $et->HandleTag($tagTbl, 'GPSLongitude', $lon * (($lonNeg or $lonRef eq 'W') ? -1 : 1)); + $et->HandleTag($tagTbl, 'GPSSpeed', $spd * $spdScl); + $et->HandleTag($tagTbl, 'GPSTrack', $1) if $str =~ /\bA:(\S+)/; + $et->HandleTag($tagTbl, 'GPSAltitude', $1) if $str =~ /\bH:(\S+)/; + $et->HandleTag($tagTbl, 'MagneticVariation', $1) if $str =~ /\bM:(\S+)/; + # (have a sample where tab is used to separate acc components) + $et->HandleTag($tagTbl, 'Accelerometer',"$1 $2 $3") if $str =~ /x:(\S+)\sy:(\S+)\sz:(\S+)/; + delete $$et{SET_GROUP1}; +} + +#------------------------------------------------------------------------------ +# Process LIGOGPSINFO data (non-JSON format) +# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref +# 3) 1=LIGOGPS lat/lon/spd weren't fuzzed +# Returns: 1 on success +# Notes: The directory data should start with the string "LIGOGPSINFO\0" +sub ProcessLigoGPS($$$;$) +{ + my ($et, $dirInfo, $tagTbl, $noFuzz) = @_; + my $dataPt = $$dirInfo{DataPt}; + my $pos = ($$dirInfo{DirStart} || 0) + 0x14; + return undef if $pos > length $$dataPt; + my $cipherInfo = $$et{LigoCipher}; + my $dirName = $$dirInfo{DirName} || 'LigoGPS'; + push @{$$et{PATH}}, $dirName unless $$dirInfo{DirID}; + # not fuzzed if header =~ /LIGOGPSINFO\0\0\0\0[\x01\x14]/ (\x01=BlueSkySeaDV688) + $noFuzz = 1 if substr($$dataPt, $pos-8, 4) =~ /^\0\0\0[\x01\x14]/; + $et->VerboseDir($dirName); + for (; $pos + 0x84 <= length($$dataPt); $pos+=0x84) { + my $dat = substr($$dataPt, $pos, 0x84); + $dat =~ /^####/ or next; # (have seen blank records filled with zeros, so keep trying) + # decipher if we already know the encryption + $cipherInfo and $$cipherInfo{decipher} and DecipherLigoGPS($et, $dat, $tagTbl, $noFuzz) and next; + my $str = DecryptLigoGPS($dat); + defined $str or DecipherLigoGPS($et, $dat, $tagTbl, $noFuzz), next; # try to decipher + $et->VPrint(1, "$$et{INDENT}\(Decrypted: ",unpack('V',$str),' ',substr($str,4),")\n") if $$et{OPTIONS}{Verbose} > 1; + ParseLigoGPS($et, $str, $tagTbl, $noFuzz); + } + pop @{$$et{PATH}} unless $$dirInfo{DirID}; + delete $$et{DOC_NUM}; + return 1; +} + +#------------------------------------------------------------------------------ +# Process LIGOGPSINFO JSON-format GPS (Yada RoadCam Pro 4K BT58189) +# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref +# Returns: 1 on success +# Sample data (chained 512-byte records starting like this): +# 0000: 4c 49 47 4f 47 50 53 49 4e 46 4f 20 7b 22 48 6f [LIGOGPSINFO {"Ho] +# 0010: 75 72 22 3a 20 22 32 33 22 2c 20 22 4d 69 6e 75 [ur": "23", "Minu] +# 0020: 74 65 22 3a 20 22 31 30 22 2c 20 22 53 65 63 6f [te": "10", "Seco] +# 0030: 6e 64 22 3a 20 22 32 32 22 2c 20 22 59 65 61 72 [nd": "22", "Year] +# 0040: 22 3a 20 22 32 30 32 33 22 2c 20 22 4d 6f 6e 74 [": "2023", "Mont] +# 0050: 68 22 3a 20 22 31 32 22 2c 20 22 44 61 79 22 3a [h": "12", "Day":] +# 0060: 20 22 32 38 22 2c 20 22 73 74 61 74 75 73 22 3a [ "28", "status":] +sub ProcessLigoJSON($$$) +{ + my ($et, $dirInfo, $tagTbl) = @_; + my $dataPt = $$dirInfo{DataPt}; + my $dirLen = $$dirInfo{DirLen}; + require Image::ExifTool::Import; + $et->VerboseDir('LIGO_JSON', undef, length($$dataPt)); + $$et{SET_GROUP1} = 'LIGO'; + while ($$dataPt =~ /LIGOGPSINFO (\{.*?\})/g) { + my $json = $1; + my %dbase; + Image::ExifTool::Import::ReadJSON(\$json, \%dbase); + my $info = $dbase{'*'} or next; + # my sample contains the following JSON fields (in this order): + # Hour Minute Second Year Month Day (GPS UTC time) + # status NS EW Latitude Longitude Speed (speed in knots) + # GsensorX GsensorY GsensorZ (units? - only seen "000" for all) + # MHour MMinute MSecond MYear MMonth MDay (local dashcam clock time) + # OLatitude OLongitude (? same values as Latitude/Longitude) + next unless defined $$info{status} and $$info{status} eq 'A'; # only read if GPS is active + $$et{DOC_NUM} = ++$$et{DOC_COUNT}; + my $num = 0; + defined $$info{$_} and ++$num foreach qw(Year Month Day Hour Minute Second); + if ($num == 6) { + # this is the GPS time in UTC + my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2dZ',@$info{qw{Year Month Day Hour Minute Second}}); + $et->HandleTag($tagTbl, GPSDateTime => $time); + } + if ($$info{Latitude} and $$info{Longitude}) { + my $lat = $$info{Latitude}; + $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; + my $lon = $$info{Longitude}; + $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; + $et->HandleTag($tagTbl, GPSLatitude => $lat); + $et->HandleTag($tagTbl, GPSLongitude => $lon); + } + $et->HandleTag($tagTbl, GPSSpeed => $$info{Speed} * $knotsToKph) if defined $$info{Speed}; + if (defined $$info{GsensorX} and defined $$info{GsensorY} and defined $$info{GsensorZ}) { + # (don't know conversion factor for accel data, so leave it raw for now) + $et->HandleTag($tagTbl, Accelerometer => "$$info{GsensorX} $$info{GsensorY} $$info{GsensorZ}"); + } + $num = 0; + defined $$info{$_} and ++$num foreach qw(MYear MMonth MDay MHour MMinute MSecond); + if ($num == 6) { + # this is the dashcam clock time (local time zone) + my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d',@$info{qw{MYear MMonth MDay MHour MMinute MSecond}}); + $et->HandleTag($tagTbl, DateTimeOriginal => $time); + } + if (defined $$info{OLatitude} and defined $$info{OLongitude}) { + my $lat = $$info{OLatitude}; + $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; + my $lon = $$info{OLongitude}; + $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; + $et->HandleTag($tagTbl, GPSLatitude2 => $lat); + $et->HandleTag($tagTbl, GPSLongitude2 => $lon); + } + unless ($et->Options('ExtractEmbedded')) { + $et->Warn('Use the ExtractEmbedded option to extract all timed GPS',3); + last; + } + } + delete $$et{DOC_NUM}; + delete $$et{SET_GROUP1}; + return 1; +} + +1; #end + + +__END__ + +=head1 NAME + +Image::ExifTool::LigoGPS - Read LIGOGPSINFO timed GPS records + +=head1 SYNOPSIS + +This module is loaded automatically by Image::ExifTool when required. + +=head1 DESCRIPTION + +This module decrypts, deciphers and decodes timed GPS metadata from +LIGOGPSINFO records found in various locations of MP4 and M2TS videos from a +variety of dashcam makes and models. + +=head1 AUTHOR + +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) + +This library is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. + +=head1 SEE ALSO + +L<Image::ExifTool::TagNames/QuickTime Stream Tags>, +L<Image::ExifTool(3pm)|Image::ExifTool> + +=cut diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lytro.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lytro.pm index 076e0b2..66923f9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lytro.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Lytro.pm @@ -192,7 +192,7 @@ from Lytro Light Field Picture (LFP) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/M2TS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/M2TS.pm index 25e2e14..f580e0e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/M2TS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/M2TS.pm @@ -32,7 +32,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.28'; +$VERSION = '1.29'; # program map table "stream_type" lookup (ref 6/1/9) my %streamType = ( @@ -310,7 +310,7 @@ sub ParsePID($$$$$) if ($$dataPt =~ /^LIGOGPSINFO/s) { my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => $dataPt, DirName => 'Ligo0x0300' ); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); $$et{FoundGoodGPS} = 1; $more = 1; } @@ -437,13 +437,16 @@ sub ParsePID($$$$$) $more = 1; } elsif ($$dataPt =~ /\$GPRMC,/) { # Jomise T860S-GM dashcam - # $GPRMC,hhmmss.ss,A,ddmm.mmmmm,N,dddmm.mmmmm,W,spd-kts,dir-dg,DDMMYY,,*cs - # $GPRMC,172255.00,A,:985.95194,N,17170.14674,W,029.678,170.68,240822,,,D*7B - # $GPRMC,172355.00,A,:984.76779,N,17170.00473,W,032.219,172.04,240822,,,D*7B - # ddmm.mmmm: from 4742.2568 12209.2028 (should be) - # to 4741.7696 12209.1056 - # stamped on video: 47.70428N, 122.15338W, 35mph (dd.ddddd) - # to 47.69616N, 122.15176W, 37mph + # $GPRMC,hhmmss.ss,A,ddmm.mmmmm,N,dddmm.mmmmm,W,spd-kts,dir-dg,DDMMYY,,M*cs - lat,lon,spd from video + # $GPRMC,172255.00,A,:985.95194,N,17170.14674,W,029.678,170.68,240822,,,D*7B - N47.70428,W122.15338,35mph + # $GPRMC,192643.00,A,:987.94979,N,17171.07268,W,010.059,079.61,111122,,,A*73 - N47.71862,W122.16437,12mph + # $GPRMC,192743.00,A,:988.72110,N,17171.04873,W,017.477,001.03,111122,,,A*78 - N47.72421,W122.16408,20mph + # $GPRMC,192844.00,A,:989.43771,N,17171.03538,W,016.889,001.20,111122,,,A*7B - N47.72932,W122.16393,19mph + # $GPRMC,005241.00,A,:987.70873,N,17171.81293,W,000.284,354.78,141122,,,A*7F - N47.71687,W122.17318,0mph + # $GPRMC,005341.00,A,:987.90851,N,17171.85380,W,000.080,349.36,141122,,,A*7C - N47.71832,W122.17367,0mph + # $GPRMC,005441.00,A,:987.94538,N,17171.21783,W,029.686,091.09,141122,,,A*7A - N47.71859,W122.16630,35mph + # $GPRMC,002816.00,A,6820.67273,N,13424.26599,W,000.045,000.00,261122,,,A*79 - N29.52096,W95.55953,0mph (seattle) + # $GPRMC,035136.00,A,:981.47322,N,17170.14105,W,024.594,180.50,291122,,,D*79 - N47.67180,W122.15328,28mph my $tagTbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); while ($$dataPt =~ /\$[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(.{2})(\d{2}\.\d+),([NS]),(.{3})(\d{2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/g and # do some basic sanity checks on the date @@ -477,6 +480,11 @@ sub ParsePID($$$$$) $et->HandleTag($tagTbl, GPSLongitude => (($lo || 0) + (($9-70.14674)/1.460987654320988+9.2028)/60) * ($10 eq 'E' ? 1 : -1)); } } + } elsif ($$dataPt =~ /\$GSENSORD,\s*(\d+),\s*(\d+),\s*(\d+),/) { + # Jomise T860S-GM dashcam + my $tagTbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); + $$et{DOC_NUM} = $$et{DOC_COUNT}; + $et->HandleTag($tagTbl, Accelerometer => "$1 $2 $3"); # (NC - values range from 0 to 6) } elsif ($$dataPt =~ /^.{44}A\0{3}.{4}([NS])\0{3}.{4}([EW])\0{3}/s and length($$dataPt) >= 84) { #forum11320 SetByteOrder('II'); @@ -531,7 +539,7 @@ sub ParsePID($$$$$) # only extract data from the first one) my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => $dataPt, DirStart => 8, DirName => sprintf('Ligo0x%.4x',$pid)); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); $$et{FoundGoodGPS} = 1; } elsif ($$et{FoundGoodGPS}) { $more = 1; @@ -592,7 +600,8 @@ sub ProcessM2TS($$) my %gpsPID = ( 0x0300 => 1, # Novatek INNOVV, DOD_LS600W 0x01e4 => 1, # vsys a6l dashcam - 0x0e1b => 1, # Jomise T860S-GM dashcam + 0x0e1b => 1, # Jomise T860S-GM dashcam GPS + 0x0e1a => 1, # Jomise T860S-GM dashcam accelerometer ); my $pEnd = 0; @@ -980,7 +989,7 @@ sub ProcessM2TS($$) if ($len < $raf->Tell() and $raf->Seek(-$len, 2) and $raf->Read($buff,$len) == $len) { my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => \$buff, DirStart => 8, DirName => 'LigoTrailer' ); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl); } } @@ -1007,7 +1016,7 @@ video. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIE.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIE.pm index 1d03d55..b4893a7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIE.pm @@ -2557,7 +2557,7 @@ tag name. For example: =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The MIE format itself is also diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIEUnits.pod b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIEUnits.pod index 904d04d..df56adb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIEUnits.pod +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIEUnits.pod @@ -356,7 +356,7 @@ A few examples of combined units strings: =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIFF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIFF.pm index 5878839..7531851 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MIFF.pm @@ -255,7 +255,7 @@ This module contains routines required by Image::ExifTool to read MIFF =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MISB.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MISB.pm index fabfa4e..bcb5234 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MISB.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MISB.pm @@ -468,7 +468,7 @@ Board (MISB) KLV-format metadata from M2TS videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MNG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MNG.pm index bbff81e..da0d886 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MNG.pm @@ -661,7 +661,7 @@ This module contains definitions required by Image::ExifTool to read MNG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MOI.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MOI.pm index 926ec23..34ed577 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MOI.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MOI.pm @@ -137,7 +137,7 @@ information from MOI files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPC.pm index c7688a4..8efdc5a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPC.pm @@ -134,7 +134,7 @@ information from Musepack (MPC) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPEG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPEG.pm index d60830f..5127b2f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPEG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPEG.pm @@ -704,7 +704,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPF.pm index 579df04..6d9535f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MPF.pm @@ -267,7 +267,7 @@ Format (MPF) information from JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MRC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MRC.pm index acd399b..847c32c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MRC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MRC.pm @@ -315,7 +315,7 @@ metadata from Medical Research Council (MRC) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MWG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MWG.pm index b546884..b806b8c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MWG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MWG.pm @@ -757,7 +757,7 @@ must be loaded explicitly as described above. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MXF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MXF.pm index 05374f0..8c7520a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MXF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MXF.pm @@ -2987,7 +2987,7 @@ information from MXF (Material Exchange Format) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MacOS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MacOS.pm index 15509f0..ab1d0c3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MacOS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MacOS.pm @@ -737,7 +737,7 @@ Writable tags use "xattr", "setfile" or "osascript" for writing. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MakerNotes.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MakerNotes.pm index 317c739..a293a93 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MakerNotes.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MakerNotes.pm @@ -1831,7 +1831,7 @@ maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Matroska.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Matroska.pm index 346641a..7ec8042 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Matroska.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Matroska.pm @@ -15,7 +15,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.17'; +$VERSION = '1.18'; sub HandleStruct($$;$$$$); @@ -752,7 +752,11 @@ my %uidInfo = ( SUBTITLE => 'Subtitle', URL => 'URL', # nested SORT_WITH => 'SortWith', # nested - INSTRUMENTS => 'Instruments', # nested + INSTRUMENTS => { # nested + Name => 'Instruments', + IsList => 1, + ValueConv => 'my @a = split /,\s?/, $val; \@a', + }, EMAIL => 'Email', # nested ADDRESS => 'Address', # nested FAX => 'FAX', # nested @@ -796,7 +800,11 @@ my %uidInfo = ( CONTENT_TYPE => 'ContentType', SUBJECT => 'Subject', DESCRIPTION => 'Description', - KEYWORDS => 'Keywords', + KEYWORDS => { + Name => 'Keywords', + IsList => 1, + ValueConv => 'my @a = split /,\s?/, $val; \@a', + }, SUMMARY => 'Summary', SYNOPSIS => 'Synopsis', INITIAL_KEY => 'InitialKey', @@ -1219,7 +1227,7 @@ information from Matroska multimedia files (MKA, MKV, MKS and WEBM). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Microsoft.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Microsoft.pm index 47dee81..e0f084e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Microsoft.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Microsoft.pm @@ -1100,7 +1100,7 @@ Xtra tags in videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Minolta.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Minolta.pm index 54121ef..59637f2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Minolta.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Minolta.pm @@ -2927,7 +2927,7 @@ and write Minolta RAW (MRW) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MinoltaRaw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MinoltaRaw.pm index 2ddea68..d17a88c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MinoltaRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/MinoltaRaw.pm @@ -513,7 +513,7 @@ write Konica-Minolta RAW (MRW) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Motorola.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Motorola.pm index ff674b6..30e2853 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Motorola.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Motorola.pm @@ -165,7 +165,7 @@ cell phone images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nikon.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nikon.pm index d2febd4..5b6006c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nikon.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nikon.pm @@ -65,7 +65,7 @@ use Image::ExifTool::Exif; use Image::ExifTool::GPS; use Image::ExifTool::XMP; -$VERSION = '4.39'; +$VERSION = '4.40'; sub LensIDConv($$$); sub ProcessNikonAVI($$$); @@ -1546,7 +1546,108 @@ my %afPoints81 = ( 17 => 'H6', 34 => 'G7', 51 => 'F8', 68 => 'A9', ); -# AF point indices for models with 493 focus points, eg. Z8/Z9 (ref 28) +# AF point indices for 209 focus point(single-point AF) cameras equipped with Expeed 7 processor eg. Z50ii). Single-point AF array is 11 rows x 19 columns. (ref 28) +# - Auto Area AF has 2 additional columns available and provides 231 focus points. Uses 11 rows (A-K) and 21 columns (1-21), center is F11 +my %afPoints209 = ( + 1 => 'A1', 22 => 'B1', 43 => 'C1', 64 => 'D1', 85 => 'E1', 106 => 'F1', 127 => 'G1', 148 => 'H1', + 2 => 'A2', 23 => 'B2', 44 => 'C2', 65 => 'D2', 86 => 'E2', 107 => 'F2', 128 => 'G2', 149 => 'H2', + 3 => 'A3', 24 => 'B3', 45 => 'C3', 66 => 'D3', 87 => 'E3', 108 => 'F3', 129 => 'G3', 150 => 'H3', + 4 => 'A4', 25 => 'B4', 46 => 'C4', 67 => 'D4', 88 => 'E4', 109 => 'F4', 130 => 'G4', 151 => 'H4', + 5 => 'A5', 26 => 'B5', 47 => 'C5', 68 => 'D5', 89 => 'E5', 110 => 'F5', 131 => 'G5', 152 => 'H5', + 6 => 'A6', 27 => 'B6', 48 => 'C6', 69 => 'D6', 90 => 'E6', 111 => 'F6', 132 => 'G6', 153 => 'H6', + 7 => 'A7', 28 => 'B7', 49 => 'C7', 70 => 'D7', 91 => 'E7', 112 => 'F7', 133 => 'G7', 154 => 'H7', + 8 => 'A8', 29 => 'B8', 50 => 'C8', 71 => 'D8', 92 => 'E8', 113 => 'F8', 134 => 'G8', 155 => 'H8', + 9 => 'A9', 30 => 'B9', 51 => 'C9', 72 => 'D9', 93 => 'E9', 114 => 'F9', 135 => 'G9', 156 => 'H9', + 10 => 'A10', 31 => 'B10', 52 => 'C10', 73 => 'D10', 94 => 'E10', 115 => 'F10', 136 => 'G10', 157 => 'H10', + 11 => 'A11', 32 => 'B11' , 53 => 'C11', 74 => 'D11', 95 => 'E11', 116 => 'F11', 137 => 'G11', 158 => 'H11', + 12 => 'A12', 33 => 'B12' , 54 => 'C12', 75 => 'D12', 96 => 'E12', 117 => 'F12', 138 => 'G12', 159 => 'H12', + 13 => 'A13', 34 => 'B13' , 55 => 'C13', 76 => 'D13', 97 => 'E13', 118 => 'F13', 139 => 'G13', 160 => 'H13', + 14 => 'A14', 35 => 'B14' , 56 => 'C14', 77 => 'D14', 98 => 'E14', 119 => 'F14', 140 => 'G14', 161 => 'H14', + 15 => 'A15', 36 => 'B15', 57 => 'C15', 78 => 'D15', 99 => 'E15', 120 => 'F15', 141 => 'G15', 162 => 'H15', + 16 => 'A16', 37 => 'B16' , 58 => 'C16', 79 => 'D16', 100 => 'E16', 121 => 'F16', 142 => 'G16', 163 => 'H16', + 17 => 'A17', 38 => 'B17', 59 => 'C17', 80 => 'D17', 101 => 'E17', 122 => 'F17', 143 => 'G17', 164 => 'H17', + 18 => 'A18', 39 => 'B18', 60 => 'C18', 81 => 'D18', 102 => 'E18', 123 => 'F18', 144 => 'G18', 165 => 'H18', + 19 => 'A19', 40 => 'B19', 61 => 'C19', 82 => 'D19', 103 => 'E19', 124 => 'F19', 145 => 'G19', 166 => 'H19', + 20 => 'A20', 41 => 'B20', 62 => 'C20', 83 => 'D20', 104 => 'E20', 125 => 'F20', 146 => 'G20', 167 => 'H20', + 21 => 'A21', 42 => 'B21', 63 => 'C21', 84 => 'D21', 105 => 'E21', 126 => 'F21', 147 => 'G21', 168 => 'H21', + + 169 => 'I1', 190 => 'J1', 211 => 'K1', + 170 => 'I2', 191 => 'J2', 212 => 'K2', + 171 => 'I3', 192 => 'J3', 213 => 'K3', + 172 => 'I4', 193 => 'J4', 214 => 'K4', + 173 => 'I5', 194 => 'J5', 215 => 'K5', + 174 => 'I6', 195 => 'J6', 216 => 'K6', + 175 => 'I7', 196 => 'J7', 217 => 'K7', + 176 => 'I8', 197 => 'J8', 218 => 'K8', + 177 => 'I9', 198 => 'J9', 219 => 'K9', + 178 => 'I10', 199 => 'J10', 220 => 'K10', + 179 => 'I11', 200 => 'J11', 221 => 'K11', + 180 => 'I12', 201 => 'J12', 222 => 'K12', + 181 => 'I13', 202 => 'J13', 223 => 'K13', + 182 => 'I14', 203 => 'J14', 224 => 'K14', + 183 => 'I15', 204 => 'J15', 225 => 'K15', + 184 => 'I16', 205 => 'J16', 226 => 'K16', + 185 => 'I17', 206 => 'J17', 227 => 'K17', + 186 => 'I18', 207 => 'J18', 228 => 'K18', + 187 => 'I19', 208 => 'J19', 229 => 'K19', + 188 => 'I20', 209 => 'J20', 230 => 'K20', + 189 => 'I21', 210 => 'J21', 231 => 'K21', +); + +# AF point indices for 273 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z6iii and Zf). Single-point AF array is 13 rows x 21 columns (ref 28) +# - Auto Area AF has 2 additional columns available and provides 299 focus points. Uses 13 rows (A-M) and 23 columns (1-23), center is G12 +# +my %afPoints273 = ( + 1 => 'A1', 24 => 'B1', 47 => 'C1', 70 => 'D1', 93 => 'E1', 116 => 'F1', 139 => 'G1', 162 => 'H1', + 2 => 'A2', 25 => 'B2', 48 => 'C2', 71 => 'D2', 94 => 'E2', 117 => 'F2', 140 => 'G2', 163 => 'H2', + 3 => 'A3', 26 => 'B3', 49 => 'C3', 72 => 'D3', 95 => 'E3', 118 => 'F3', 141 => 'G3', 164 => 'H3', + 4 => 'A4', 27 => 'B4', 50 => 'C4', 73 => 'D4', 96 => 'E4', 119 => 'F4', 142 => 'G4', 165 => 'H4', + 5 => 'A5', 28 => 'B5', 51 => 'C5', 74 => 'D5', 97 => 'E5', 120 => 'F5', 143 => 'G5', 166 => 'H5', + 6 => 'A6', 29 => 'B6', 52 => 'C6', 75 => 'D6', 98 => 'E6', 121 => 'F6', 144 => 'G6', 167 => 'H6', + 7 => 'A7', 30 => 'B7', 53 => 'C7', 76 => 'D7', 99 => 'E7', 122 => 'F7', 145 => 'G7', 168 => 'H7', + 8 => 'A8', 31 => 'B8', 54 => 'C8', 77 => 'D8', 100 => 'E8', 123 => 'F8', 146 => 'G8', 169 => 'H8', + 9 => 'A9', 32 => 'B9', 55 => 'C9', 78 => 'D9', 101 => 'E9', 124 => 'F9', 147 => 'G9', 170 => 'H9', + 10 => 'A10', 33 => 'B10', 56 => 'C10', 79 => 'D10', 102 => 'E10', 125 => 'F10', 148 => 'G10', 171 => 'H10', + 11 => 'A11', 34 => 'B11' , 57 => 'C11', 80 => 'D11', 103 => 'E11', 126 => 'F11', 149 => 'G11', 172 => 'H11', + 12 => 'A12', 35 => 'B12' , 58 => 'C12', 81 => 'D12', 104 => 'E12', 127 => 'F12', 150 => 'G12', 173 => 'H12', + 13 => 'A13', 36 => 'B13' , 59 => 'C13', 82 => 'D13', 105 => 'E13', 128 => 'F13', 151 => 'G13', 174 => 'H13', + 14 => 'A14', 37 => 'B14' , 60 => 'C14', 83 => 'D14', 106 => 'E14', 129 => 'F14', 152 => 'G14', 175 => 'H14', + 15 => 'A15', 38 => 'B15', 61 => 'C15', 84 => 'D15', 107 => 'E15', 130 => 'F15', 153 => 'G15', 176 => 'H15', + 16 => 'A16', 39 => 'B16' , 62 => 'C16', 85 => 'D16', 108 => 'E16', 131 => 'F16', 154 => 'G16', 177 => 'H16', + 17 => 'A17', 40 => 'B17', 63 => 'C17', 86 => 'D17', 109 => 'E17', 132 => 'F17', 155 => 'G17', 178 => 'H17', + 18 => 'A18', 41 => 'B18', 64 => 'C18', 87 => 'D18', 110 => 'E18', 133 => 'F18', 156 => 'G18', 179 => 'H18', + 19 => 'A19', 42 => 'B19', 65 => 'C19', 88 => 'D19', 111 => 'E19', 134 => 'F19', 157 => 'G19', 180 => 'H19', + 20 => 'A20', 43 => 'B20', 66 => 'C20', 89 => 'D20', 112 => 'E20', 135 => 'F20', 158 => 'G20', 181 => 'H20', + 21 => 'A21', 44 => 'B21', 67 => 'C21', 90 => 'D21', 113 => 'E21', 136 => 'F21', 159 => 'G21', 182 => 'H21', + 22 => 'A22', 45 => 'B22', 68 => 'C22', 91 => 'D22', 114 => 'E22', 137 => 'F22', 160 => 'G22', 183 => 'H22', + 23 => 'A23', 46 => 'B23', 69 => 'C23', 92 => 'D23', 115 => 'E23', 138 => 'F23', 161 => 'G23', 184 => 'H23', + + 185 => 'I1', 208 => 'J1', 231 => 'K1', 254 => 'L1', 277 => 'M1', + 186 => 'I2', 209 => 'J2', 232 => 'K2', 255 => 'L2', 278 => 'M2', + 187 => 'I3', 210 => 'J3', 233 => 'K3', 256 => 'L3', 279 => 'M3', + 188 => 'I4', 211 => 'J4', 234 => 'K4', 257 => 'L4', 280 => 'M4', + 189 => 'I5', 212 => 'J5', 235 => 'K5', 258 => 'L5', 281 => 'M5', + 190 => 'I6', 213 => 'J6', 236 => 'K6', 259 => 'L6', 282 => 'M6', + 191 => 'I7', 214 => 'J7', 237 => 'K7', 260 => 'L7', 283 => 'M7', + 192 => 'I8', 215 => 'J8', 238 => 'K8', 261 => 'L8', 284 => 'M8', + 193 => 'I9', 216 => 'J9', 239 => 'K9', 262 => 'L9', 285 => 'M9', + 194 => 'I10', 217 => 'J10', 240 => 'K10', 263 => 'L10', 286 => 'M10', + 195 => 'I11', 218 => 'J11', 241 => 'K11', 264 => 'L11', 287 => 'M11', + 196 => 'I12', 219 => 'J12', 242 => 'K12', 265 => 'L12', 288 => 'M12', + 197 => 'I13', 220 => 'J13', 243 => 'K13', 266 => 'L13', 289 => 'M13', + 198 => 'I14', 221 => 'J14', 244 => 'K14', 267 => 'L14', 290 => 'M14', + 199 => 'I15', 222 => 'J15', 245 => 'K15', 268 => 'L15', 291 => 'M15', + 200 => 'I16', 223 => 'J16', 246 => 'K16', 269 => 'L16', 292 => 'M16', + 201 => 'I17', 224 => 'J17', 247 => 'K17', 270 => 'L17', 293 => 'M17', + 202 => 'I18', 225 => 'J18', 248 => 'K18', 271 => 'L18', 294 => 'M18', + 203 => 'I19', 226 => 'J19', 249 => 'K19', 272 => 'L19', 295 => 'M19', + 204 => 'I20', 227 => 'J20', 250 => 'K20', 273 => 'L20', 296 => 'M20', + 205 => 'I21', 228 => 'J21', 251 => 'K21', 274 => 'L21', 297 => 'M21', + 206 => 'I22', 229 => 'J22', 252 => 'K22', 275 => 'L22', 298 => 'M22', + 208 => 'I23', 230 => 'J23', 253 => 'K23', 276 => 'L23', 299 => 'M23', +); + +# AF point indices for 493 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z8 and Z9). Single-point AF array is 17 rows x 29 columns (ref 28) # - Auto Area AF uses 15 of the 17 rows (A-Q) and 27 of the 29 columns (1-27), center is H14 (405 of the 493 focus points can be used by Auto-area AF) # my %afPoints493 = ( @@ -1606,6 +1707,7 @@ my %afPoints493 = ( 242 => 'I26', 269 => 'J26', 296 => 'K26', 323 => 'L26', 350 => 'M26', 377 => 'N26', 404 => 'O26', 243 => 'I27', 270 => 'J27', 297 => 'K27', 324 => 'L27', 351 => 'M27', 378 => 'N27', 405 => 'O27', ); + my %cropHiSpeed = ( #IB 0 => 'Off', 1 => '1.3x Crop', # (1.3x Crop, Large) @@ -3011,9 +3113,12 @@ my %base64coord = ( }, 0x00b7 => [{ Name => 'AFInfo2', - Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i', #AFInfo2Version 0400 + # Expeed 7 processor models - Z8 & Z9 (AFInfo2Version 0400), Z6iii & Zf (AFInfo2Version 0401) + # and Z50ii (AFInfo2Version 0402) + Condition => '$$valPt =~ /^040[012]/', SubDirectory => { TagTable => 'Image::ExifTool::Nikon::AFInfo2V0400' }, },{ #JD + # (expeed 5 processor cameras are version 0101, expeed 6 are version 03xx) Name => 'AFInfo2', # (this structure may be byte swapped when rewritten by CaptureNX) SubDirectory => { TagTable => 'Image::ExifTool::Nikon::AFInfo2' }, @@ -4056,6 +4161,7 @@ my %base64coord = ( DATAMEMBER => [ 0, 4, 6 ], NOTES => "These tags are written by Nikon DSLR's which have the live view feature.", 0 => { + # (expeed 5 processor cameras are version 0101, expeed 6 are version 03xx) Name => 'AFInfo2Version', Format => 'undef[4]', Writable => 0, @@ -4413,6 +4519,7 @@ my %base64coord = ( { #PH (Z7) Name => 'PrimaryAFPoint', Condition => '$$self{PhaseDetectAF} == 8 and $$self{AFInfo2Version} =~ /^03/', + PrintConvColumns => 5, PrintConv => { 0 => '(none)', %afPoints81, @@ -4697,10 +4804,14 @@ my %base64coord = ( }, ); -%Image::ExifTool::Nikon::AFInfo2V0400 = ( #V0400 related fields begin at x'3c' (Z9) +%Image::ExifTool::Nikon::AFInfo2V0400 = ( %binaryDataAttrs, GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, - DATAMEMBER => [ 0 ], + DATAMEMBER => [ 0, 5 ], + NOTES => q{ + AF information for Nikon cameras with the Expeed 7 processor: The Zf, Z6_3, + Z8, Z9 and Z50_3. + }, 0 => { Name => 'AFInfo2Version', Format => 'undef[4]', @@ -4709,6 +4820,7 @@ my %base64coord = ( }, 5 => { #28 Name => 'AFAreaMode', #reflects the mode active when the shutter is tripped, not the position of the Focus Mode button (which is recorded in MenuSettingsZ9 tag also named AfAreaMode) + RawConv => '$$self{AFAreaModeUsed} = $val', PrintConv => { 192 => 'Pinpoint', 193 => 'Single', @@ -4722,15 +4834,34 @@ my %base64coord = ( 208 => 'Wide (C1/C2)', }, }, - 10 => { - Name => 'AFPointsUsed', - Condition => 'defined $$self{AFAreaMode} and $$self{AFAreaMode} == 6', #only valid for Auto AF Area mode. Other modes handled via AFAreaXPosition/AFAreaYPosition - Format => 'undef[51]', - ValueConv => 'join(" ", unpack("H2"x51, $val))', - ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', - PrintConv => sub { PrintAFPoints(shift, \%afPoints493); }, - PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); }, - }, + 10 => [{ + # valid only for AFAreaModes where the camera selects the focus point (i.e., AutoArea & 3D-Tracking) + # and the camera has yet to determine a focus target (in these cases tags AFAreaXPosition and AFAreaYPosition will be zeroes) + Name => 'AFPointsUsed', # Z8 and Z9 (AFInfo2Version 0400) + Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[51]', + Notes => 'either AFPointsUsed or AFAreaX/YPosition will be set, but not both', + ValueConv => 'join(" ", unpack("H2"x51, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints493); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); }, + },{ + Name => 'AFPointsUsed', # Z6iii and Zf (AFInfo2Version 0401) + Condition => '$$self{Model} =~ /^NIKON (Z6_3|Z f)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[35]', + ValueConv => 'join(" ", unpack("H2"x35, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints273); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints273); }, + },{ + Name => 'AFPointsUsed', # Z50ii (AFInfo2Version 0402) + Condition => '$$self{Model} =~ /^NIKON Z50_2\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[27]', + ValueConv => 'join(" ", unpack("H2"x27, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints209); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints209); }, + }], 0x3e => { Name => 'AFImageWidth', Format => 'int16u', @@ -4744,27 +4875,27 @@ my %base64coord = ( Format => 'int16u', # (decodes same byte as 0x43) RawConv => '$val ? $val : undef', }, - 0x43 => { - Name => 'FocusPositionHorizontal', - Notes => q{ - the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1 - to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U - (4) and 2D (12) are not used for some reason - }, - # 493 focus points for Z9 fall in a 30x19 grid - # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email) - PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); }, - }, + #0x43 => { + # Name => 'FocusPositionHorizontal', + # Notes => q{ + # the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1 + # to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U + # (4) and 2D (12) are not used for some reason + # }, + # # 493 focus points for Z9 fall in a 30x19 grid + # # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email) + # PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); }, + #}, 0x44 => { #28 Name => 'AFAreaYPosition', Format => 'int16u', # (decodes same byte as 0x45) RawConv => '$val ? $val : undef', }, - 0x45 => { - Name => 'FocusPositionVertical', - # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email) - PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); }, - }, + #0x45 => { + # Name => 'FocusPositionVertical', + # # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email) + # PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); }, + #}, 0x46 => { Name => 'AFAreaWidth', Format => 'int16u', @@ -5587,9 +5718,9 @@ my %nikonFocalConversions = ( }, }, 0x34 => { #28 - Name => 'LensFirmwareVersion', + Name => 'LensFirmwareVersion', Condition => '$$self{LensID} and $$self{LensID} != 0', #only valid for Z-mount lenses - Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme. + Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme. PrintConv => q{ my $version = int($val / 256); my $release = int(($val - 256 * $version)/16); @@ -8395,7 +8526,7 @@ my %nikonFocalConversions = ( TagTable => 'Image::ExifTool::Nikon::MenuSettingsZ6III', Start => '$val', }, - }, + }, ); # shot information for the Z7II firmware 1.00 (encrypted) - ref 28 @@ -9191,7 +9322,7 @@ my %nikonFocalConversions = ( 720 => { Name => 'FlickerReductionShooting',PrintConv => \%offOn }, 722 => { Name => 'NikonMeteringMode', PrintConv => \%meteringModeZ7}, 724 => { - Name => 'FlashControlMode', + Name => 'FlashControlMode', RawConv => '$$self{FlashControlMode} = $val', PrintConv => \%flashControlModeZ7, }, @@ -14091,7 +14222,7 @@ Nikon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCapture.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCapture.pm index bd83918..8e31567 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCapture.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCapture.pm @@ -918,7 +918,7 @@ the maker notes of NEF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCustom.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCustom.pm index a9debb9..768aa9d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCustom.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonCustom.pm @@ -11362,7 +11362,7 @@ this information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonSettings.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonSettings.pm index 4f8259e..b7c452f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonSettings.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/NikonSettings.pm @@ -2132,7 +2132,7 @@ Nikon cameras such as the D6 and Z7mk2. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nintendo.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nintendo.pm index 6fa81af..13007ea 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nintendo.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Nintendo.pm @@ -107,7 +107,7 @@ interpret Nintendo maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OOXML.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OOXML.pm index 0af0b68..88445a1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OOXML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OOXML.pm @@ -395,7 +395,7 @@ archives of XML files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ogg.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ogg.pm index 24a1a87..7cd2985 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ogg.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ogg.pm @@ -215,7 +215,7 @@ information from Ogg bitstream container files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Olympus.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Olympus.pm index 3a0795b..aafbbcd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Olympus.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Olympus.pm @@ -4194,7 +4194,7 @@ Olympus or Epson maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OpenEXR.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OpenEXR.pm index 996a167..c53e563 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OpenEXR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/OpenEXR.pm @@ -341,7 +341,7 @@ information from OpenEXR images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Opus.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Opus.pm index eecb28d..af89224 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Opus.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Opus.pm @@ -69,7 +69,7 @@ information from Ogg Opus audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Other.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Other.pm index 63e7a35..47b2e8b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Other.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Other.pm @@ -71,7 +71,7 @@ information from Portable FloatMap (PFM) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PCX.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PCX.pm index 727d4c7..e35962b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PCX.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PCX.pm @@ -114,7 +114,7 @@ information from PC Paintbrush (PCX) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PDF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PDF.pm index 6dd79ec..c4dc465 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PDF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PDF.pm @@ -2497,7 +2497,7 @@ and AESV3 (AES-256). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PGF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PGF.pm index 5520fc0..8b66fc7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PGF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PGF.pm @@ -119,7 +119,7 @@ information from Progressive Graphics File (PGF) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PICT.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PICT.pm index aa0fed6..3af8fd7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PICT.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PICT.pm @@ -1236,7 +1236,7 @@ Verbose or the Unknown option. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLIST.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLIST.pm index 070caad..1ba95da 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLIST.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLIST.pm @@ -450,7 +450,7 @@ This module decodes both the binary and XML-based PLIST format. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLUS.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLUS.pm index 164346d..274140d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLUS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PLUS.pm @@ -2601,7 +2601,7 @@ Definitions for PLUS (Picture Licensing Universal System) tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PNG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PNG.pm index 49f8893..ec08cdb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PNG.pm @@ -1698,7 +1698,7 @@ and JNG (JPEG Network Graphics) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PPM.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PPM.pm index 8ec96e4..c73322f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PPM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PPM.pm @@ -152,7 +152,7 @@ BitMap) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PSP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PSP.pm index 88051f7..1944ff3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PSP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PSP.pm @@ -284,7 +284,7 @@ information from Paint Shop Pro images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Palm.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Palm.pm index aa28975..6595c45 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Palm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Palm.pm @@ -379,7 +379,7 @@ KF7 and KF8 books (AZW and AZW3). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Panasonic.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Panasonic.pm index a3d9837..a1f301d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Panasonic.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Panasonic.pm @@ -37,7 +37,7 @@ use vars qw($VERSION %leicaLensTypes); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; -$VERSION = '2.22'; +$VERSION = '2.24'; sub ProcessLeicaLEIC($$$); sub WhiteBalanceConv($;$$); @@ -360,12 +360,16 @@ my %shootingMode = ( '16' => 'Normal?', # (only mode for DMC-LC20) '16 0' => '1-area', # (FZ8) '16 16' => '1-area (high speed)', # (FZ8) + '16 32' => '1-area +', #forum16903 (G9M2) + '17 0' => 'Full Area', #forum16903 (G9M2) # '32 0' is Face Detect for FS7, and Face Detect or Focus Tracking # for the DMC-FZ200 (ref 17), and Auto is DMC-L1 guess, '32 0' => 'Tracking', '32 1' => '3-area (left)?', # (DMC-L1 guess) '32 2' => '3-area (center)?', # (DMC-L1 guess) '32 3' => '3-area (right)?', # (DMC-L1 guess) + '32 16' => 'Zone', #forum16903 (G9M2) + '32 18' => 'Zone (horizontal/vertical)', #forum16903 (G9M2) # '32 16' ? (DC-GH6) '64 0' => 'Face Detect', '64 1' => 'Face Detect (animal detect on)', #forum11194 @@ -1448,6 +1452,26 @@ my %shootingMode = ( Name => 'MinimumISO', Writable => 'int32u', }, + 0xe9 => { #forum16903 (DC-G9M2) + Name => 'AFSubjectDetection', + Writable => 'int16u', + PrintConv => { + 0 => 'n/a', + 1 => 'Human Eye/Face/Body', + 2 => 'Animal', #PH (NC) (DC-S5 and DC-S5M2) + 3 => 'Human Eye/Face', + 4 => 'Animal Body', + 5 => 'Animal Eye/Body', + 6 => 'Car', + 7 => 'Motorcycle', + 8 => 'Car (main part priority)', + 9 => 'Motorcycle (helmet priority)', + 10 => 'Train', + 11 => 'Train (main part priority)', + 12 => 'Airplane', + 13 => 'Airplane (nose priority)', + } + }, 0xee => { #PH (DC-GH6) Name => 'DynamicRangeBoost', Writable => 'int16u', @@ -2902,7 +2926,7 @@ Panasonic and Leica maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PanasonicRaw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PanasonicRaw.pm index 477d35b..c6f5aba 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PanasonicRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PanasonicRaw.pm @@ -935,7 +935,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Parrot.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Parrot.pm index 1038f5c..b7ce91c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Parrot.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Parrot.pm @@ -825,7 +825,7 @@ timed metadata from the 'mett' frame found in Parrot drone MP4 videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Pentax.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Pentax.pm index 4a281cb..6367b9a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Pentax.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Pentax.pm @@ -6477,7 +6477,7 @@ tags, and everyone who helped contribute to the LensType values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhaseOne.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhaseOne.pm index e8cc279..be9e9cb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhaseOne.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhaseOne.pm @@ -726,7 +726,7 @@ One maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoCD.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoCD.pm index 8d85976..1abce5b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoCD.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoCD.pm @@ -484,7 +484,7 @@ information from Kodak Photo CD Image Pac (PCD) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoMechanic.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoMechanic.pm index f39a598..43d5102 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoMechanic.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PhotoMechanic.pm @@ -237,7 +237,7 @@ write information written by the Camera Bits Photo Mechanic software. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Photoshop.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Photoshop.pm index 451dbca..abb4421 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Photoshop.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Photoshop.pm @@ -1262,7 +1262,7 @@ be preserved when copying Photoshop information via user-defined tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PostScript.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PostScript.pm index ec926e8..3e78c8f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PostScript.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PostScript.pm @@ -768,7 +768,7 @@ This code reads meta information from EPS (Encapsulated PostScript), PS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PrintIM.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PrintIM.pm index 146b4e1..72068a1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PrintIM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/PrintIM.pm @@ -112,7 +112,7 @@ Print Image Matching meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Protobuf.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Protobuf.pm index 45935e0..a40508a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Protobuf.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Protobuf.pm @@ -5,8 +5,9 @@ # # Revisions: 2024-12-04 - P. Harvey Created # -# Notes: Tag definitions for Protobuf tags support additional 'signed' -# and 'unsigned' formats for varInt (type 0) values +# Notes: Tag definitions for Protobuf tags support additional 'signed', +# 'unsigned' and 'int64s' formats for varInt (type 0) values, +# and 'rational' for byte (type 2) values # # References: 1) https://protobuf.dev/programming-guides/encoding/ #------------------------------------------------------------------------------ @@ -17,13 +18,13 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.00'; +$VERSION = '1.02'; sub ProcessProtobuf($$$;$); #------------------------------------------------------------------------------ # Read bytes from dirInfo object -# Inputs: 0) dirInfo ref, 1) number of bytes +# Inputs: 0) dirInfo ref (with DataPt and Pos set), 1) number of bytes # Returns: binary data or undef on error sub GetBytes($$) { @@ -105,7 +106,7 @@ sub IsProtobuf($) #------------------------------------------------------------------------------ # Process protobuf data (eg. DJI djmd timed data from Action4 videos) (ref 1) -# Inputs: 0) ExifTool ref, 1) dirInfo ref with DataPt, DirName and Base, +# Inputs: 0) ExifTool ref, 1) dirInfo ref with DataPt, DataPos, DirName and Base, # 2) tag table ptr, 3) prefix of parent protobuf ID's # Returns: true on success sub ProcessProtobuf($$$;$) @@ -113,27 +114,32 @@ sub ProcessProtobuf($$$;$) my ($et, $dirInfo, $tagTbl, $prefix) = @_; my $dataPt = $$dirInfo{DataPt}; my $dirName = $$dirInfo{DirName}; + my $dirStart = $$dirInfo{DirStart} || 0; + my $dirLen = $$dirInfo{DirLen} || (length($$dataPt) - $dirStart); + my $dirEnd = $dirStart + $dirLen; + my $dataPos = ($$dirInfo{Base} || 0) + ($$dirInfo{DataPos} || 0); my $unknown = $et->Options('Unknown') || $et->Options('Verbose'); $$dirInfo{Pos} = $$dirInfo{DirStart} || 0; # initialize buffer Pos + $et->VerboseDir('Protobuf', undef, $dirLen); unless ($prefix) { $prefix = ''; - $$et{ProtocolName}{$dirName} = '*' unless defined $$et{ProtocolName}{$dirName}; + $$et{ProtoPrefix}{$dirName} = '' unless defined $$et{ProtoPrefix}{$dirName}; SetByteOrder('II'); } # loop through protobuf records for (;;) { my $pos = $$dirInfo{Pos}; - last if $pos >= length $$dataPt; + last if $pos >= $dirEnd; my ($buff, $id, $type) = ReadRecord($dirInfo); defined $buff or $et->Warn('Protobuf format error'), last; if ($type == 2 and $buff =~ /\.proto$/) { # save protocol name separately for directory type - $$et{ProtocolName}{$dirName} = substr($buff, 0, -6); + $$et{ProtoPrefix}{$dirName} = substr($buff, 0, -6) . '_'; $et->HandleTag($tagTbl, Protocol => $buff); } - my $tag = "$$et{ProtocolName}{$dirName}_$prefix$id"; + my $tag = "$$et{ProtoPrefix}{$dirName}$prefix$id"; my $tagInfo = $$tagTbl{$tag}; if ($tagInfo) { next if $type != 2 and $$tagInfo{Unknown} and not $unknown; @@ -157,23 +163,45 @@ sub ProcessProtobuf($$$;$) if ($$tagInfo{Format}) { if ($type == 0) { $val = $buff; - $val = ($val & 1) ? -($val >> 1)-1 : ($val >> 1) if $$tagInfo{Format} eq 'signed'; + if ($$tagInfo{Format} eq 'signed') { + $val = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); + } elsif ($$tagInfo{Format} eq 'int64s' and $val > 0xffffffff) { + # hack for DJI drones which store 64-bit signed integers improperly + # (just toss upper 32 bits which should be all 1's anyway) + $val = ($val & 0xffffffff) - 4294967296; + } + } elsif ($type == 2 and $$tagInfo{Format} eq 'rational') { + my $dir = { DataPt => \$buff, Pos => 0 }; + my $num = VarInt($dir); + my $den = VarInt($dir); + $val = (defined $num and $den) ? "$num/$den" : 'err'; } else { $val = ReadValue(\$buff, 0, $$tagInfo{Format}, undef, length($buff)); } } elsif ($type == 0) { $val = $buff; - my $signed = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); - $val .= sprintf(" (0x%x, signed $signed)", $val); + my $hex = sprintf('%x', $val); + if (length($hex) == 16 and $hex =~ /^ffffffff/) { + my $s64 = hex(substr($hex, 8)) - 4294967296; + $val .= " (0x$hex, int64s $s64)"; + } else { + my $signed = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); + $val .= " (0x$hex, signed $signed)"; + } } elsif ($type == 1) { $val = '0x' . unpack('H*', $buff) . ' (double ' . GetDouble(\$buff,0) . ')'; } elsif ($type == 2) { - if ($$tagInfo{IsProtobuf}) { - $et->VPrint(1, "+ Protobuf $tag (" . length($buff) . " bytes)\n"); - my $addr = $$dirInfo{Base} + $$dirInfo{Pos} - length($buff); - $et->VerboseDump(\$buff, Addr => $addr); - my %subdir = ( DataPt => \$buff, Base => $addr, DirName => $dirName ); + if ($$tagInfo{SubDirectory}) { + # (fall through to process known SubDirectory) + } elsif ($$tagInfo{IsProtobuf}) { + # process Unknown protobuf directories + $et->VPrint(1, "$$et{INDENT}Protobuf $tag (" . length($buff) . " bytes) -->\n"); + my $addr = $dataPos + $$dirInfo{Pos} - length($buff); + $et->VerboseDump(\$buff, Addr => $addr, Prefix => $$et{INDENT}); + my %subdir = ( DataPt => \$buff, DataPos => $addr, DirName => $dirName ); + $$et{INDENT} .= '| '; ProcessProtobuf($et, \%subdir, $tagTbl, "$prefix$id-"); + $$et{INDENT} = substr($$et{INDENT}, 0, -2); next; } elsif ($buff !~ /[^\x20-\x7e]/) { $val = $buff; # assume this is an ASCII string @@ -193,7 +221,7 @@ sub ProcessProtobuf($$$;$) my $start = $type == 0 ? $pos + 1 : $$dirInfo{Pos} - length $buff; $et->HandleTag($tagTbl, $tag, $val, DataPt => $dataPt, - DataPos=> $$dirInfo{Base}, + DataPos=> $dataPos, Start => $start, Size => $$dirInfo{Pos} - $start, Extra => ", type=$type", @@ -201,7 +229,7 @@ sub ProcessProtobuf($$$;$) ); } # warn if we didn't finish exactly at the end of the buffer - $et->Warn('Truncated protobuf data') unless $prefix or $$dirInfo{Pos} == length $$dataPt; + $et->Warn('Truncated protobuf data') unless $prefix or $$dirInfo{Pos} == $dirEnd; return 1; } @@ -222,7 +250,7 @@ information in protocol buffer (protobuf) format. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Qualcomm.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Qualcomm.pm index ef50d3e..bba14ca 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Qualcomm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Qualcomm.pm @@ -1331,7 +1331,7 @@ information from the APP7 Qualcomm segment in JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTime.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTime.pm index 29b7fae..83e6508 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTime.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTime.pm @@ -43,12 +43,12 @@ package Image::ExifTool::QuickTime; use strict; -use vars qw($VERSION $AUTOLOAD %stringEncoding); +use vars qw($VERSION $AUTOLOAD %stringEncoding %avType); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; use Image::ExifTool::GPS; -$VERSION = '3.07'; +$VERSION = '3.10'; sub ProcessMOV($$;$); sub ProcessKeys($$$); @@ -69,8 +69,6 @@ sub Process_gps0($$$); sub Process_gsen($$$); sub Process_gdat($$$); sub Process_nbmt($$$); -sub ProcessLigoGPS($$$;$); -sub ProcessLigoJSON($$$); sub ProcessKenwood($$$); sub ProcessRIFFTrailer($$$); sub ProcessTTAD($$$); @@ -253,15 +251,20 @@ my %timeInfo = ( # Note: This value will be in UTC if generated by a system that is aware of the time zone # (also note: this code is duplicated for the CreateDate tag) RawConv => q{ - my $offset = (66 * 365 + 17) * 24 * 3600; - return $val - $offset if $val >= $offset or $$self{OPTIONS}{QuickTimeUTC}; - if ($val and not $$self{IsWriting}) { - $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + if ($val) { + my $offset = (66 * 365 + 17) * 24 * 3600; + if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { + $val -= $offset; + } elsif (not $$self{IsWriting}) { + $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + } + } else { + undef $val if $self->Options('StrictDate'); } return $val; }, RawConvInv => q{ - if ($$self{FileType} eq 'CR3' and not $self->Options('QuickTimeUTC')) { + if ($val and $$self{FileType} eq 'CR3' and not $self->Options('QuickTimeUTC')) { # convert to UTC my $offset = (66 * 365 + 17) * 24 * 3600; $val = ConvertUnixTime($val - $offset); @@ -274,10 +277,14 @@ my %timeInfo = ( ValueConvInv => q{ $val = GetUnixTime($val, $self->Options("QuickTimeUTC")); return undef unless defined $val; + return $val unless $val; return $val + (66 * 365 + 17) * 24 * 3600; }, PrintConv => '$self->ConvertDateTime($val)', - PrintConvInv => '$self->InverseDateTime($val)', + PrintConvInv => q{ + return $val if $val eq '0000:00:00 00:00:00'; + return $self->InverseDateTime($val); + } # (can't put Groups here because they aren't constant!) ); # properties for ISO 8601 format date/time tags @@ -351,6 +358,19 @@ my %vendorID = ( 5 => 'UTF16', ); +# media types for which we have separate Keys tables (AudioKeys, VideoKeys) +%avType = ( + soun => 'Audio', + vide => 'Video', +); + +# path to Keys/ItemList/UserData tags stored in tracks +my %trackPath = ( + 'MOV-Movie-Track-Meta-ItemList' => 'Keys', + 'MOV-Movie-Track-UserData-Meta-ItemList' => 'ItemList', + 'MOV-Movie-Track-UserData' => 'UserData', +); + my %graphicsMode = ( # (ref http://homepage.mac.com/vanhoek/MovieGuts%20docs/64.html) 0x00 => 'srcCopy', @@ -587,13 +607,24 @@ my %userDefined = ( }, { Name => 'LigoGPSInfo', - Condition => '$$valPt =~ /^LIGOGPSINFO\0/', - SubDirectory => { + Condition => '$$valPt =~ /^LIGOGPSINFO\0/ and $$self{OPTIONS}{ExtractEmbedded}', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Stream', - ProcessProc => \&ProcessLigoGPS, + ProcessProc => 'Image::ExifTool::LigoGPS::ProcessLigoGPS', }, }, - { Name => 'Skip', Unknown => 1, Binary => 1 }, + { + Name => 'Skip', + RawConv => q{ + if ($val =~ /^LIGOGPSINFO\0/) { + $self->Warn('Use the ExtractEmbedded option to decode timed GPS',3); + return undef; + } + return $val; + }, + Unknown => 1, + Binary => 1, + }, ], wide => { Unknown => 1, Binary => 1 }, ftyp => { #MP4 @@ -775,7 +806,7 @@ my %userDefined = ( Condition => '$$valPt =~ /^LIGOGPSINFO \{/', SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Stream', - ProcessProc => \&ProcessLigoJSON, + ProcessProc => 'Image::ExifTool::LigoGPS::ProcessLigoJSON', }, },{ Name => 'FLIRData', @@ -1412,11 +1443,15 @@ my %userDefined = ( Groups => { 2 => 'Time' }, %timeInfo, RawConv => q{ - my $offset = (66 * 365 + 17) * 24 * 3600; - if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { - $val -= $offset; - } elsif ($val and not $$self{IsWriting}) { - $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + if ($val) { + my $offset = (66 * 365 + 17) * 24 * 3600; + if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { + $val -= $offset; + } elsif (not $$self{IsWriting}) { + $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + } + } else { + undef $val if $$self{OPTIONS}{StrictDate}; } return $$self{CreateDate} = $val; }, @@ -1514,7 +1549,7 @@ my %userDefined = ( # (this tag is readable/writable as a block through the Extra SphericalVideoXML tags) Condition => '$$valPt=~/^\xff\xcc\x82\x63\xf8\x55\x4a\x93\x88\x14\x58\x7a\x02\x52\x1f\xdd/', WriteGroup => 'GSpherical', # write only GSpherical XMP tags here - HandlerType => 'vide', # only write in video tracks + MediaType => 'vide', # only write in video tracks SubDirectory => { TagTable => 'Image::ExifTool::XMP::Main', Start => 16, @@ -2842,10 +2877,18 @@ my %userDefined = ( IgnoreProp => { NonRealTimeMeta => 1 }, # ignore container for Sony 'nrtm' }, }, - 'keys' => { + 'keys' => [{ + Name => 'AudioKeys', + Condition => '$$self{MediaType} eq "soun"', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::AudioKeys' }, + },{ + Name => 'VideoKeys', + Condition => '$$self{MediaType} eq "vide"', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::VideoKeys' }, + },{ Name => 'Keys', SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Keys' }, - }, + }], bxml => { Name => 'BinaryXML', Flags => ['Binary','Unknown'], @@ -3586,7 +3629,7 @@ my %userDefined = ( my $id = Image::ExifTool::ID3::GetGenreID($val); return unless defined $id and $id =~ /^\d+$/; return $id + 1; - }, + }, }, egid => 'EpisodeGlobalUniqueID', #7 geID => { #10 @@ -6588,7 +6631,7 @@ my %userDefined = ( PROCESS_PROC => \&ProcessKeys, WRITE_PROC => \&WriteKeys, CHECK_PROC => \&CheckQTValue, - VARS => { LONG_TAGS => 9 }, + VARS => { LONG_TAGS => 8 }, WRITABLE => 1, # (not PREFERRED when writing) GROUPS => { 1 => 'Keys' }, @@ -6634,21 +6677,11 @@ my %userDefined = ( publisher => { }, software => { }, year => { Groups => { 2 => 'Time' } }, - 'camera.identifier' => 'CameraIdentifier', # (iPhone 4) - 'camera.framereadouttimeinmicroseconds' => { # (iPhone 4) - Name => 'FrameReadoutTime', - ValueConv => '$val * 1e-6', - ValueConvInv => 'int($val * 1e6 + 0.5)', - PrintConv => '$val * 1e6 . " microseconds"', - PrintConvInv => '$val =~ s/ .*//; $val * 1e-6', - }, - # 'camera.focal_length.35mm_equivalent' - not top level (written to Keys in video track) - # 'camera.lens_model' - not top level (written to Keys in video track) 'location.ISO6709' => { Name => 'GPSCoordinates', Groups => { 2 => 'Location' }, Notes => q{ - Google Photos may ignore this if the coorinates have more than 5 digits + Google Photos may ignore this if the coordinates have more than 5 digits after the decimal }, ValueConv => \&ConvertISO6709, @@ -6704,7 +6737,6 @@ my %userDefined = ( # # the following tags aren't in the com.apple.quicktime namespace: # - 'com.apple.photos.captureMode' => 'CaptureMode', 'com.android.version' => 'AndroidVersion', 'com.android.capture.fps' => { Name => 'AndroidCaptureFPS', Writable => 'float' }, 'com.android.manufacturer' => 'AndroidMake', @@ -6804,6 +6836,58 @@ my %userDefined = ( # (mdta)com.apple.proapps.image.{TIFF}.Software (eg. "9.0") ); +# Keys tags in the audio track (ref PH) +%Image::ExifTool::QuickTime::AudioKeys = ( + PROCESS_PROC => \&ProcessKeys, + WRITE_PROC => \&WriteKeys, + CHECK_PROC => \&CheckQTValue, + WRITABLE => 1, + GROUPS => { 1 => 'AudioKeys', 2 => 'Audio' }, + WRITE_GROUP => 'AudioKeys', + LANG_INFO => \&GetLangInfo, + NOTES => q{ + Keys tags written in the audio track by some Apple devices. These tags + belong to the ExifTool AudioKeys family 1 gorup. + }, + 'player.movie.audio.gain' => 'AudioGain', + 'player.movie.audio.treble' => 'Treble', + 'player.movie.audio.bass' => 'Bass', + 'player.movie.audio.balance' => 'Balance', + 'player.movie.audio.pitchshift' => 'PitchShift', + 'player.movie.audio.mute' => { + Name => 'Mute', + Format => 'int8u', + PrintConv => { 0 => 'Off', 1 => 'On' }, + }, +); + +# Keys tags in the video track (ref PH) +%Image::ExifTool::QuickTime::VideoKeys = ( + PROCESS_PROC => \&ProcessKeys, + WRITE_PROC => \&WriteKeys, + CHECK_PROC => \&CheckQTValue, + VARS => { LONG_TAGS => 2 }, + WRITABLE => 1, + GROUPS => { 1 => 'VideoKeys', 2 => 'Camera' }, + WRITE_GROUP => 'VideoKeys', + LANG_INFO => \&GetLangInfo, + NOTES => q{ + Keys tags written in the video track. These tags belong to the ExifTool + VideoKeys family 1 gorup. + }, + 'camera.identifier' => 'CameraIdentifier', + 'camera.lens_model' => 'LensModel', + 'camera.focal_length.35mm_equivalent' => 'FocalLengthIn35mmFormat', + 'camera.framereadouttimeinmicroseconds' => { + Name => 'FrameReadoutTime', + ValueConv => '$val * 1e-6', + ValueConvInv => 'int($val * 1e6 + 0.5)', + PrintConv => '$val * 1e6 . " microseconds"', + PrintConvInv => '$val =~ s/ .*//; $val * 1e-6', + }, + 'com.apple.photos.captureMode' => 'CaptureMode', +); + # iTunes info ('----') atoms %Image::ExifTool::QuickTime::iTunesInfo = ( PROCESS_PROC => \&ProcessMOV, @@ -7269,7 +7353,7 @@ my %userDefined = ( { Name => 'VideoFrameRate', Notes => 'average rate calculated from time-to-sample table for video media', - Condition => '$$self{HandlerType} and $$self{HandlerType} eq "vide"', + Condition => '$$self{MediaType} eq "vide"', Format => 'undef', # (necessary to prevent decoding as string!) # (must be RawConv so appropriate MediaTS is used in calculation) RawConv => 'Image::ExifTool::QuickTime::CalcSampleRate($self, \$val)', @@ -7860,7 +7944,6 @@ my %userDefined = ( mode => 'ModeFlags', #PH (?) 0x04 is HD flag (https://compilr.com/heksesang/requiem-mac/UnDrm.java) # sing - seen 4 zeros # hi32 - seen "00 00 00 04" - ); # MP4 hint sample description box (ref 5) @@ -8108,6 +8191,7 @@ my %userDefined = ( Format => 'undef[4]', RawConv => q{ $$self{HandlerType} = $val unless $val eq 'alis' or $val eq 'url '; + $$self{MediaType} = $val if @{$$self{PATH}} > 1 and $$self{PATH}[-2] eq 'Media'; $$self{HasHandler}{$val} = 1; # remember all our handlers return $val; }, @@ -8692,24 +8776,28 @@ sub UnpackLang($;$) # Get language code string given QuickTime language and country codes # Inputs: 0) numerical language code, 1) numerical country code, 2) no defaults # Returns: language code string (ie. "fra-FR") or undef for default language +# ex) 0x15c7 0x0000 is 'eng' with no country (ie. returns 'und' unless $noDef) +# 0x15c7 0x5553 is 'eng-US' +# 0x1a41 0x4652 is 'fra-FR' +# 0x55c4 is 'und' sub GetLangCode($;$$) { my ($lang, $ctry, $noDef) = @_; # ignore country ('ctry') and language lists ('lang') for now undef $ctry if $ctry and $ctry <= 255; undef $lang if $lang and $lang <= 255; - $lang = UnpackLang($lang, $noDef); + my $langCode = UnpackLang($lang, $noDef); # add country code if specified if ($ctry) { $ctry = unpack('a2',pack('n',$ctry)); # unpack as ISO 3166-1 # treat 'ZZ' like a default country (see ref 12) undef $ctry if $ctry eq 'ZZ'; if ($ctry and $ctry =~ /^[A-Z]{2}$/) { - $lang or $lang = 'und'; - $lang .= "-$ctry"; + $langCode or $langCode = UnpackLang($lang,1) || 'und'; + $langCode .= "-$ctry"; } } - return $lang; + return $langCode; } #------------------------------------------------------------------------------ @@ -9527,6 +9615,8 @@ sub ProcessKeys($$$) my $groups = $$tagInfo{Groups}; $$newInfo{Groups} = $groups ? { %$groups } : { }; $$newInfo{Groups}{$_} or $$newInfo{Groups}{$_} = $$tagTablePtr{GROUPS}{$_} foreach 0..2; + # set Keys group. This is necessary for logic when reading the associated ItemList entry, + # but note that the group name will be overridden by TAG_EXTRA G1 for tags in a track $$newInfo{Groups}{1} = 'Keys'; } elsif ($tag =~ /^[-\w. ]+$/ or $tag =~ /\w{4}/) { # create info for tags with reasonable id's @@ -9594,7 +9684,7 @@ sub ProcessMOV($$;$) my $topLevel = not $$et{InQuickTime}; $$et{InQuickTime} = 1; - $$et{HandlerType} = $$et{MetaFormat} = '' unless defined $$et{HandlerType}; + $$et{HandlerType} = $$et{MetaFormat} = $$et{MediaType} = '' if $topLevel; unless (defined $$et{KeysCount}) { $$et{KeysCount} = 0; # initialize ItemList key directory count @@ -9620,13 +9710,15 @@ sub ProcessMOV($$;$) } ($size, $tag) = unpack('Na4', $buff); my $fast = $$et{OPTIONS}{FastScan} || 0; - # check for Insta360 trailer + # check for Insta360 or LIGOGPSINFO trailer if ($topLevel and not $fast) { my $pos = $raf->Tell(); - if ($raf->Seek(-40, 2) and $raf->Read($buff, 40) == 40 and - substr($buff, 8) eq '8db42d694ccc418790edff439fe026bf') - { - $trailer = [ 'Insta360', $raf->Tell() - unpack('V',$buff) ]; + if ($raf->Seek(-40, 2) and $raf->Read($buff, 40) == 40) { + if (substr($buff, 8) eq '8db42d694ccc418790edff439fe026bf') { + $trailer = [ 'Insta360', $raf->Tell() - unpack('V',$buff) ]; + } elsif ($buff =~ /\&\&\&\&(.{4})$/) { + $trailer = [ 'LigoGPS', $raf->Tell() - Get32u(\$buff, 36) ]; + } } $raf->Seek($pos,0) or return 0; } @@ -9743,16 +9835,18 @@ sub ProcessMOV($$;$) } if ($isUserData and $$et{SET_GROUP1}) { my $tagInfo = $et->GetTagInfo($tagTablePtr, $tag); - # add track name to UserData tags inside tracks - $tag = $$et{SET_GROUP1} . $tag; - if (not $$tagTablePtr{$tag} and $tagInfo) { - my %newInfo = %$tagInfo; - foreach ('Name', 'Description') { - next unless $$tagInfo{$_}; - $newInfo{$_} = $$et{SET_GROUP1} . $$tagInfo{$_}; - $newInfo{$_} =~ s/^(Track\d+)Track/$1/; # remove duplicate "Track" in name + unless ($$tagInfo{SubDirectory}) { + # add track name to UserData tags inside tracks + $tag = $$et{SET_GROUP1} . $tag; + if (not $$tagTablePtr{$tag} and $tagInfo) { + my %newInfo = %$tagInfo; + foreach ('Name', 'Description') { + next unless $$tagInfo{$_}; + $newInfo{$_} = $$et{SET_GROUP1} . $$tagInfo{$_}; + $newInfo{$_} =~ s/^(Track\d+)Track/$1/; # remove duplicate "Track" in name + } + AddTagToTable($tagTablePtr, $tag, \%newInfo); } - AddTagToTable($tagTablePtr, $tag, \%newInfo); } } # set flag to store additional information for ExtractEmbedded option @@ -9819,7 +9913,7 @@ sub ProcessMOV($$;$) # check for RIFF trailer (written by Auto-Vox dashcam) if ($buff =~ /^(gpsa|gps0|gsen|gsea)...\0/s) { # (yet seen only gpsa as first record) $et->VPrint(0, sprintf("Found RIFF trailer at offset 0x%x",$lastPos)); - if ($et->Options('ExtractEmbedded')) { + if ($ee) { $raf->Seek(-8, 1) or last; # seek back to start of trailer my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); ProcessRIFFTrailer($et, { RAF => $raf }, $tbl); @@ -9969,6 +10063,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { } } if ($tagInfo) { + my @found; my $subdir = $$tagInfo{SubDirectory}; if ($subdir) { my $start = $$subdir{Start} || 0; @@ -10087,21 +10182,23 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { Index => $index, Extra => sprintf(", Type='${type}', Flags=0x%x%s, Lang=0x%.4x",$flags,$str,$lang), ) if $verbose; - # use "Keys" in path instead of ItemList if this was defined by a Keys tag - my $isKey = $$tagInfo{Groups} && $$tagInfo{Groups}{1} && $$tagInfo{Groups}{1} eq 'Keys'; - if ($isKey) { - $oldDir = $$et{PATH}[-1]; - $$et{PATH}[-1] = 'Keys'; + if (defined $value) { + # use "Keys" in path instead of ItemList if this was defined by a Keys tag + # (the only reason for this is to have "Keys" in the family 5 group name) + # Note that the Keys group is specifically set by the ProcessKeys routine, + # even though this tag would be in the ItemList table + my $isKeys = $$tagInfo{Groups} && $$tagInfo{Groups}{1} && $$tagInfo{Groups}{1} eq 'Keys'; + $isKeys and $oldDir = $$et{PATH}[-1], $$et{PATH}[-1] = 'Keys'; + push @found, $et->FoundTag($langInfo, $value); + $$et{PATH}[-1] = $oldDir if $isKeys; } - $et->FoundTag($langInfo, $value) if defined $value; - $$et{PATH}[-1] = $oldDir if $isKey; $pos += $len; } } elsif ($tag =~ /^\xa9/ or $$tagInfo{IText}) { # parse international text to extract all languages my $pos = 0; if ($$tagInfo{Format}) { - $et->FoundTag($tagInfo, ReadValue(\$val, 0, $$tagInfo{Format}, undef, length($val))); + push @found, $et->FoundTag($tagInfo, ReadValue(\$val, 0, $$tagInfo{Format}, undef, length($val))); $pos = $size; } for (;;) { @@ -10166,7 +10263,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { $str = substr($val, $pos-$n-2, $n) . $str; } $langInfo = GetLangInfoQT($et, $tagInfo, $lang) if $lang; - $et->FoundTag($langInfo || $tagInfo, $str); + push @found, $et->FoundTag($langInfo || $tagInfo, $str); $pos += $len; } } else { @@ -10180,6 +10277,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { $$et{BASE} = $dataPos; } my $key = $et->FoundTag($tagInfo, $val); + push @found, $key; $$et{BASE} = $oldBase if defined $oldBase; # decode if necessary (NOTE: must be done after RawConv) if (defined $key and (not $format or $format =~ /^string/) and @@ -10195,6 +10293,14 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { } } } + # tweak family 1 group names for Keys/ItemList/UserData tags in a track + if ($$et{SET_GROUP1} and ($dirID eq 'ilst' or $dirID eq 'udta') and @found) { + my $type = $trackPath{join '-', @{$$et{PATH}}}; + if ($type) { + my $grp = ($avType{$$et{MediaType}} || $$et{SET_GROUP1}) . $type; + defined and $et->SetGroup($_, $grp) foreach @found; + } + } } } else { $et->VerboseInfo($tag, $tagInfo, @@ -10207,6 +10313,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { last; } } + $$et{MediaType} = '' if $tag eq 'trak'; # reset track type at end of track $dataPos += $size + 8; # point to start of next atom data last if $dirEnd and $dataPos >= $dirEnd; # (note: ignores last value if 0 bytes) $lastPos = $raf->Tell() + $dirBase; @@ -10262,7 +10369,26 @@ QTLang: foreach $tag (@{$$et{QTLang}}) { # process item information now that we are done processing its 'meta' container HandleItemInfo($et) if $topLevel or $dirID eq 'meta'; - ScanMediaData($et) if $ee and $topLevel; # brute force scan for metadata embedded in media data + # process LigoGPS trailer now if it exists and we haven't already processed it + if ($trailer and $$trailer[0] eq 'LigoGPS' and $lastPos <= $$trailer[1] and + $raf->Seek($$trailer[1]) and $raf->Read($buff, 8) == 8 and $buff =~ /skip$/) + { + if ($ee) { + my $len = Get32u(\$buff, 0) - 16; + if ($len > 0 and $raf->Read($buff, $len) == $len and $buff =~ /^LIGOGPSINFO\0/) { + my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); + my %dirInfo = ( DataPt => \$buff, DataPos => $$trailer[1] + 8, DirName => 'LigoGPSTrailer' ); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl); + } else { + $et->Warn('Unrecognized data in LigoGPS trailer'); + } + } else { + $et->Warn('Use the ExtractEmbedded option to decode timed GPS',3); + } + } + # brute force scan for metadata embedded in media data + # (and process Insta360 trailer if it exists) + ScanMediaData($et) if $ee and $topLevel; # restore any changed options $et->Options($_ => $saveOptions{$_}) foreach keys %saveOptions; @@ -10280,6 +10406,24 @@ sub ProcessQTIF($$) return ProcessMOV($et, $dirInfo, $table); } +#============================================================================== +# Autoload LigoGPS module if necessary +# NOTE: Switches to package LigoGPS! +# +package Image::ExifTool::LigoGPS; +use vars qw($AUTOLOAD); +sub AUTOLOAD { + require Image::ExifTool::LigoGPS; + unless (defined &$AUTOLOAD) { + my @caller = caller(0); + # reproduce Perl's standard 'undefined subroutine' message: + die "Undefined subroutine $AUTOLOAD called at $caller[1] line $caller[2]\n"; + } + no strict 'refs'; + return &$AUTOLOAD(@_); # call the function +} +#============================================================================== + 1; # end __END__ @@ -10299,7 +10443,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTimeStream.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTimeStream.pl index f5fe153..0e5f5cc 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTimeStream.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/QuickTimeStream.pl @@ -29,6 +29,7 @@ package Image::ExifTool::QuickTime; sub ProcessFMAS($$$); sub ProcessWolfbox($$$); sub ProcessCAMM($$$); +sub OrderCipherDigits($$$;$); # QuickTime data types that have ExifTool equivalents # (ref https://developer.apple.com/library/content/documentation/QuickTime/QTFF/Metadata/Metadata.html#//apple_ref/doc/uid/TP40000939-CH1-SW35) @@ -110,7 +111,7 @@ package Image::ExifTool::QuickTime; The tags below are extracted from timed metadata in QuickTime and other formats of video files when the ExtractEmbedded option is used. Although most of these tags are combined into the single table below, ExifTool - currently reads 96 different types of timed GPS metadata from video files. + currently reads 100 different types of timed GPS metadata from video files. }, VARS => { NO_ID => 1 }, GPSLatitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', RawConv => '$$self{FoundGPSLatitude} = 1; $val' }, @@ -146,7 +147,7 @@ package Image::ExifTool::QuickTime; CameraDateTime=>{ PrintConv => '$self->ConvertDateTime($val)', Groups => { 2 => 'Time' } }, DateTimeStamp =>{ PrintConv => '$self->ConvertDateTime($val)', Groups => { 2 => 'Time' } }, VideoTimeStamp => { Groups => { 2 => 'Video' } }, - Accelerometer=> { Notes => '3-axis acceleration in units of g' }, + Accelerometer=> { Notes => '3-axis acceleration, usually in units of g' }, AccelerometerData => { }, AngularVelocity => { }, GSensor => { }, @@ -354,8 +355,7 @@ package Image::ExifTool::QuickTime; Unknown01 => { Unknown => 1 }, Unknown02 => { Unknown => 1 }, Unknown03 => { Unknown => 1 }, - M => { Name => 'Unknown_M', Unknown => 1 }, # (from LIGOGPSINFO) - H => { Name => 'Unknown_H', Unknown => 1 }, # (from LIGOGPSINFO) + MagneticVariation => { }, # (from LIGOGPSINFO) ); # tags found in 'camm' type 0 timed metadata (ref 4) @@ -1512,7 +1512,7 @@ ($) # clean up $raf->Seek($tell, 0); # restore original file position delete $$et{DOC_NUM}; - $$et{HandlerType} = $$et{HanderDesc} = ''; + $$et{HandlerType} = ''; } #------------------------------------------------------------------------------ @@ -1755,31 +1755,34 @@ ($$$) $debug and $et->FoundTag(GPSType => 5); my $pos = length $1; - # iiway s1 dual dash cam + # iiway s1 dual dash cam - offset 16, encrypted and fuzzed with scale 1 # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0020: 0a 00 00 00 23 23 23 23 6a 00 00 00 c0 20 20 20 [....####j.... ] # 0030: 20 f0 12 10 12 22 e1 0e 10 12 2f 90 10 13 02 f2 [ ...."..../.....] - # ABASK A8 4K Dashcam (different scaling factor) - # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] - # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] - # 0020: 00 00 00 00 23 23 23 23 69 00 00 00 c0 20 20 20 [....####i.... ] - # 0030: 20 f0 12 10 12 23 e5 0e 10 12 2f 99 10 11 02 f2 [ ....#..../.....] - # XGODY 12" 4K Dashcam + # XGODY 12" 4K Dashcam - offset 16, encrypted and fuzzed with scale 1 # 0000: 00 00 00 a8 66 72 65 65 47 50 53 20 98 00 00 00 [....freeGPS ....] # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0020: cd 61 00 00 23 23 23 23 6d 00 00 00 c1 ec 41 20 [.a..####m.....A ] # 0030: 20 f0 12 10 12 24 e5 0e 10 11 2f 92 10 12 00 f6 [ ....$..../.....] - # Rexing dashcam V1GW-4K + # ABASK A8 4K Dashcam - offset 16, encrypted and fuzzed with scale 3 + # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] + # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] + # 0020: 00 00 00 00 23 23 23 23 69 00 00 00 c0 20 20 20 [....####i.... ] + # 0030: 20 f0 12 10 12 23 e5 0e 10 12 2f 99 10 11 02 f2 [ ....#..../.....] + # Unknown dashcam (forum16060) - offset 16, enciphered and fuzzed with scale 1 + # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 98 00 00 00 [..@.freeGPS ....] + # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 0d [LIGOGPSINFO.....] + # 0020: 0a 00 00 00 23 23 23 23 3b 00 a0 34 46 44 46 31 [....####;..4FDF1] + # 0030: 2f 44 39 2f 45 38 20 44 3d 4c 47 4a 4c 39 38 20 [/D9/E8 D=LGJL98 ] + # Rexing dashcam V1GW-4K - offset 48, encrypted and fuzzed with scale 1 # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] # 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] # 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] # 0030: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0040: 01 00 00 00 23 23 23 23 73 00 00 00 c0 20 20 20 [....####s.... ] # 0050: 20 f0 12 10 12 23 e5 0e 10 12 2f 95 10 12 01 f3 [ ....#..../.....] - # 0060: 16 18 10 26 b4 1a 10 04 f2 6e 18 12 20 f0 0e 11 [...&.....n.. ...] - # 0070: 13 22 b3 16 10 01 fb 76 18 10 24 fa 0e 11 10 22 [.".....v..$...."] - # Kingslim D4 dashcam + # Kingslim D4 dashcam - offset 80, encrypted and fuzzed with scale 1 # 0000: 0a 00 00 00 0b 00 00 00 07 00 00 00 e5 07 00 00 [................] # 0010: 06 00 00 00 03 00 00 00 41 4e 57 31 91 52 83 45 [........ANW1.R.E] # 0020: 15 70 fe c5 29 5c c3 41 ae c7 af 42 00 00 d1 be [.p..)\.A...B....] @@ -1792,7 +1795,7 @@ ($$$) # (this is weak, but the only difference I could find between these 2 headers) # (NOTE: ../testpics/gps_video/forum16229.mp4 uses this word for a counter!) $$et{LigoGPSScale} = 3 if $pos == 16 and $$dataPt =~ /^.{12}\xf0\x03\0\0.{16}\0{4}/s; - ProcessLigoGPS($et, \%dirInfo, $tagTbl); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tagTbl); $done = 1; # also... when offset is 0x50 (Kingslim), the GPS also exists in this format: @@ -2735,291 +2738,6 @@ ($$$) return 1; } -#------------------------------------------------------------------------------ -# Un-do LIGOGPS fuzzing -# Inputs: 0) fuzzed latitude, 1) fuzzed longitude, 2) scale factor -# Returns: 0) latitude, 1) longitude -sub UnfuzzLigoGPS($$$) -{ - my ($lat, $lon, $scl) = @_; - my $lat2 = int($lat / 10) * 10; - my $lon2 = int($lon / 10) * 10; - return($lat2 + ($lon - $lon2) * $scl, $lon2 + ($lat - $lat2) * $scl); -} - -#------------------------------------------------------------------------------ -# Decrypt LIGOGPSINFO record (starting with "####") -# Inputs: 0) encrypted GPS record incuding 8-byte header -# Returns: decrypted record including 4-byte uint32 header, or undef on error -sub DecryptLigoGPS($) -{ - my $str = shift; - my $num = unpack('x4V',$str); - return undef if $num < 4; - $num = 0x84 if $num > 0x84; # (be safe) - my @in = unpack("x8C$num",$str); - my @out; - while (@in) { - my $b = shift @in; - my $steeringBits = $b & 0xe0; - if ($steeringBits >= 0xc0) { - return undef if @in < 4; - push @out, (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x02) ^ 0x20, - (shift(@in) | $b & 0x0c) ^ 0x20, - shift(@in) ^ 0x20 | $b & 0x30; - } elsif ($steeringBits >= 0x40) { - return undef if @in < 3; - if ($steeringBits == 0x40) { - push @out, 0x20, - (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x06) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20; - } elsif ($steeringBits == 0x60) { - push @out, (shift(@in) | $b & 0x03) ^ 0x20, - 0x20, - (shift(@in) | $b & 0x04) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20; - } elsif ($steeringBits == 0x80) { - push @out, (shift(@in) | $b & 0x03) ^ 0x20, - (shift(@in) | $b & 0x0c) ^ 0x20, - 0x20, - (shift(@in) | $b & 0x10) ^ 0x20; - } else { - push @out, (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x06) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20, - 0x20; - } - } elsif ($steeringBits == 0x00) { - return undef if @in < 1; - push @out, shift(@in) | $b & 0x13; - } else { - return undef; # (shouldn't happen) - } - } - return pack 'C*', @out; -} - -#------------------------------------------------------------------------------ -# Decipher and parse LIGOGPSINFO record (starting with "####") -# Inputs: 0) ExifTool ref, 1) enciphered string, 2) tag table ref -# Returns: true if this looked like an enciphered string -# Notes: handles contained tags, but may defer handling until full cipher is known -sub DecipherLigoGPS($$$) -{ - my ($et, $str, $tagTbl) = @_; - - # (enciphered characters must be in the range 0x30-0x5f ('0' - '_')) - $str =~ m[^####.{4}([0-_])[0-_]{3}/[0-_]{2}/[0-_]{2} ..([0-_])..([0-_]).([0-_]) ]s or return undef; - return undef unless $2 eq $3; # (colons in time string must be the same) - - my $cipherInfo = $$et{LigoCipher}; - $cipherInfo or $cipherInfo = $$et{LigoCipher} = { cache => [ ], secs => [ ], two => -1 }; - my $decipher = $$cipherInfo{decipher}; - my $cache = $$cipherInfo{cache}; - - # determine the cipher code table based on the advancing 1's digit of seconds - unless ($decipher) { - push @$cache, $str; # cache records until we can decipher them - my ($millennium, $colon) = ($1, $2); - # determine the Caesar cipher lookup table - # (only characters in range 0x30-0x5f are encrypted) - my $secs = $$cipherInfo{secs}; - push @$secs, $4 unless @$secs and $${secs}[-1] eq $4; - $$cipherInfo{two} = $#$secs if $4 eq $millennium; # save index of enciphered '2' - return 1 if @$secs < 10; # must cache the data until we know all 10 digits - my $two = $$cipherInfo{two}; # (index of '2' in the array) - my %decipher = ( $colon => ':' ); # (':' is the time separator) - foreach (0..9) { - my $ch = $$secs[($_ + $two - 2 + 10) % 10]; - if ($two < 0 or defined $decipher{$ch}) { # (must be a unique code for each digit) - @$cipherInfo{'secs','two'} = ([ ], -1); # reset and try again - $et->Warn('Hiccup while deciphering LIGOGPSINFO'); - return 1; - } - $decipher{$ch} = chr($_ + 0x30); - } - # also know the lat/lon quadrant from the signs of the coordinates - if ($str =~ / ([0-_])$colon(-?).*? ([0-_])$colon(-?)/) { - @decipher{$1,$3} = ($2 ? 'S' : 'N', $4 ? 'W' : 'E'); - } - # fill in unknown entries with '?' (only chars 0x30-0x5f are enciphered) - defined $decipher{$_} or $decipher{$_} = '?' foreach map(chr, 0x30..0x5f); - $decipher = $$cipherInfo{decipher} = \%decipher; - $str = shift @$cache; # start deciphering at oldest cache entry - } - - # apply reverse Caesar cipher and extract GPS information - do { - my $pre = substr($str, 4, 4); # save second 4 bytes of header - ($str = substr($str,8)) =~ s/\0+$//; # remove 8-byte header and null padding - $str =~ s/([0-_])/$$decipher{$1}/g; # decipher - if ($$et{OPTIONS}{Verbose} > 1) { - $et->VPrint(1, "$$et{INDENT}\(Deciphered: ".unpack('H8',$pre)." $str)\n"); - } - # add back leading 4 bytes (int16u counter plus 2 unknown bytes), and parse - # (not fuzzed in my only sample when found in standard 'skip' atom) - ParseLigoGPS($et, "$pre$str", $tagTbl, $$et{LigoType} eq 'LigoGPSInfo'); - } while $str = shift @$cache; - - return 1; -} - -#------------------------------------------------------------------------------ -# Parse decrypted/deciphered (but not defuzzed) LIGOGPSINFO record -# (record starts with 4-byte int32u counter followed by date/time, etc) -# Inputs: 0) ExifTool ref, 1) GPS string, 2) tag table ref, 3) not fuzzed -# Returns: nothing -sub ParseLigoGPS($$$;$) -{ - my ($et, $str, $tagTbl, $noFuzz) = @_; - - # example string input - # "....2022/09/19 12:45:24 N:31.285065 W:124.759483 46.93 km/h x:-0.000 y:-0.000 z:-0.000" - unless ($str=~ /^.{4}(\S+ \S+)\s+([NS?]):(-?)([.\d]+)\s+([EW?]):(-?)([\.\d]+)\s+([.\d]+)/s) { - $et->Warn('LIGOGPSINFO format error'); - return; - } - my ($time,$latRef,$latNeg,$lat,$lonRef,$lonNeg,$lon,$spd) = ($1,$2,$3,$4,$5,$6,$7,$8); - my %gpsScl = ( 1 => 1.524855137, 2 => 1.456027985, 3 => 1.15368 ); - my $spdScl = $noFuzz ? $knotsToKph : 1.85407333; - $$et{DOC_NUM} = ++$$et{DOC_COUNT}; - $time =~ tr(/)(:); - # convert from DDMM.MMMMMM to DD.DDDDDD if necessary - # (speed wasn't scaled in my 1 sample with this format) - $lat =~ /^\d{3}/ and ConvertLatLon($lat,$lon), $spdScl = 1; - unless ($noFuzz) { # unfuzz the coordinates if necessary - my $scl = $$et{OPTIONS}{LigoGPSScale} || $$et{LigoGPSScale} || 1; - $scl = $gpsScl{$scl} if $gpsScl{$scl}; - ($lat, $lon) = UnfuzzLigoGPS($lat, $lon, $scl); - } - # a final sanity check - ($lat > 90 or $lon > 180) and $et->Warn('LIGOGPSINFO coordinates out of range'), return; - $$et{SET_GROUP1} = 'LIGO'; - $et->HandleTag($tagTbl, 'GPSDateTime', $time); - # (ignore N/S/E/W if coordinate is signed) - $et->HandleTag($tagTbl, 'GPSLatitude', $lat * (($latNeg or $latRef eq 'S') ? -1 : 1)); - $et->HandleTag($tagTbl, 'GPSLongitude', $lon * (($lonNeg or $lonRef eq 'W') ? -1 : 1)); - $et->HandleTag($tagTbl, 'GPSSpeed', $spd * $spdScl); - $et->HandleTag($tagTbl, 'GPSTrack', $1) if $str =~ /\bA:(\S+)/; - # (have a sample where tab is used to separate acc components) - $et->HandleTag($tagTbl, 'Accelerometer',"$1 $2 $3") if $str =~ /x:(\S+)\sy:(\S+)\sz:(\S+)/; - $et->HandleTag($tagTbl, 'M', $1) if $str =~ /\bM:(\S+)/; - $et->HandleTag($tagTbl, 'H', $1) if $str =~ /\bH:(\S+)/; - delete $$et{SET_GROUP1}; -} - -#------------------------------------------------------------------------------ -# Process LIGOGPSINFO data (non-JSON format) -# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref -# 3) 1=LIGOGPS lat/lon/spd weren't fuzzed -# Returns: 1 on success -sub ProcessLigoGPS($$$;$) -{ - my ($et, $dirInfo, $tagTbl, $noFuzz) = @_; - my $dataPt = $$dirInfo{DataPt}; - my $pos = ($$dirInfo{DirStart} || 0) + 0x14; - my $cipherInfo = $$et{LigoCipher}; - return undef if $pos > length $$dataPt; - $$et{LigoType} = $$dirInfo{DirName} || 'LigoGPS'; - push @{$$et{PATH}}, $$et{LigoType} unless $$dirInfo{DirID}; - # not fuzzed if header is "LIGOGPSINFO\0\0\0\0\x01" (BlueSkySeaDV688) - $noFuzz = 1 if substr($$dataPt, $pos-8, 4) eq "\0\0\0\x01"; - $et->VerboseDir($$et{LigoType}); - for (; $pos + 0x84 <= length($$dataPt); $pos+=0x84) { - my $dat = substr($$dataPt, $pos, 0x84); - $dat =~ /^####/ or next; # (have seen blank records filled with zeros, so keep trying) - # decipher if we already know the encryption - $cipherInfo and $$cipherInfo{decipher} and DecipherLigoGPS($et, $dat, $tagTbl) and next; - my $str = DecryptLigoGPS($dat); - defined $str or DecipherLigoGPS($et, $dat, $tagTbl), next; # try to decipher - $et->VPrint(1, "$$et{INDENT}\(Decrypted: ",unpack('V',$str),' ',substr($str,4),")\n") if $$et{OPTIONS}{Verbose} > 1; - ParseLigoGPS($et, $str, $tagTbl, $noFuzz); - } - pop @{$$et{PATH}} unless $$dirInfo{DirID}; - delete $$et{DOC_NUM}; - return 1; -} - -#------------------------------------------------------------------------------ -# Process LIGOGPSINFO JSON-format GPS (Yada RoadCam Pro 4K BT58189) -# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref -# Returns: 1 on success -# Sample data (chained 512-byte records starting like this): -# 0000: 4c 49 47 4f 47 50 53 49 4e 46 4f 20 7b 22 48 6f [LIGOGPSINFO {"Ho] -# 0010: 75 72 22 3a 20 22 32 33 22 2c 20 22 4d 69 6e 75 [ur": "23", "Minu] -# 0020: 74 65 22 3a 20 22 31 30 22 2c 20 22 53 65 63 6f [te": "10", "Seco] -# 0030: 6e 64 22 3a 20 22 32 32 22 2c 20 22 59 65 61 72 [nd": "22", "Year] -# 0040: 22 3a 20 22 32 30 32 33 22 2c 20 22 4d 6f 6e 74 [": "2023", "Mont] -# 0050: 68 22 3a 20 22 31 32 22 2c 20 22 44 61 79 22 3a [h": "12", "Day":] -# 0060: 20 22 32 38 22 2c 20 22 73 74 61 74 75 73 22 3a [ "28", "status":] -sub ProcessLigoJSON($$$) -{ - my ($et, $dirInfo, $tagTbl) = @_; - my $dataPt = $$dirInfo{DataPt}; - my $dirLen = $$dirInfo{DirLen}; - require Image::ExifTool::Import; - $et->VerboseDir('LIGO_JSON', undef, length($$dataPt)); - $$et{SET_GROUP1} = 'LIGO'; - while ($$dataPt =~ /LIGOGPSINFO (\{.*?\})/g) { - my $json = $1; - my %dbase; - Image::ExifTool::Import::ReadJSON(\$json, \%dbase); - my $info = $dbase{'*'} or next; - # my sample contains the following JSON fields (in this order): - # Hour Minute Second Year Month Day (GPS UTC time) - # status NS EW Latitude Longitude Speed (speed in knots) - # GsensorX GsensorY GsensorZ (units? - only seen "000" for all) - # MHour MMinute MSecond MYear MMonth MDay (local dashcam clock time) - # OLatitude OLongitude (? same values as Latitude/Longitude) - next unless defined $$info{status} and $$info{status} eq 'A'; # only read if GPS is active - $$et{DOC_NUM} = ++$$et{DOC_COUNT}; - my $num = 0; - defined $$info{$_} and ++$num foreach qw(Year Month Day Hour Minute Second); - if ($num == 6) { - # this is the GPS time in UTC - my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2dZ',@$info{qw{Year Month Day Hour Minute Second}}); - $et->HandleTag($tagTbl, GPSDateTime => $time); - } - if ($$info{Latitude} and $$info{Longitude}) { - my $lat = $$info{Latitude}; - $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; - my $lon = $$info{Longitude}; - $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; - $et->HandleTag($tagTbl, GPSLatitude => $lat); - $et->HandleTag($tagTbl, GPSLongitude => $lon); - } - $et->HandleTag($tagTbl, GPSSpeed => $$info{Speed} * $knotsToKph) if defined $$info{Speed}; - if (defined $$info{GsensorX} and defined $$info{GsensorY} and defined $$info{GsensorZ}) { - # (don't know conversion factor for accel data, so leave it raw for now) - $et->HandleTag($tagTbl, Accelerometer => "$$info{GsensorX} $$info{GsensorY} $$info{GsensorZ}"); - } - $num = 0; - defined $$info{$_} and ++$num foreach qw(MYear MMonth MDay MHour MMinute MSecond); - if ($num == 6) { - # this is the dashcam clock time (local time zone) - my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d',@$info{qw{MYear MMonth MDay MHour MMinute MSecond}}); - $et->HandleTag($tagTbl, DateTimeOriginal => $time); - } - if (defined $$info{OLatitude} and defined $$info{OLongitude}) { - my $lat = $$info{OLatitude}; - $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; - my $lon = $$info{OLongitude}; - $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; - $et->HandleTag($tagTbl, GPSLatitude2 => $lat); - $et->HandleTag($tagTbl, GPSLongitude2 => $lon); - } - unless ($et->Options('ExtractEmbedded')) { - $et->Warn('Use the ExtractEmbedded option to extract all timed GPS',3); - last; - } - } - delete $$et{DOC_NUM}; - delete $$et{SET_GROUP1}; - return 1; -} - #------------------------------------------------------------------------------ # Process Kenwood drv-a301w dashcam 'udta' atom (ref PH) # Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref @@ -3912,7 +3630,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/README b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/README index 016e561..fa2d990 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/README +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/README @@ -443,6 +443,10 @@ numerical, and generated automatically otherwise. list-type tag (unless it is a list of lang-alt lists, which is uncommon). + 'IsList' - Flag to mark tag as List-type in the documentation + without accumulating entries from subsequent tags. Used when + the value for a single tag is a complete list. + 'MakerNotes' - set if this tag is maker note data. 'MakerPreview' - set in the PreviewImageStart tag information diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RIFF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RIFF.pm index f826d1d..ecd04d4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RIFF.pm @@ -30,7 +30,7 @@ use strict; use vars qw($VERSION $AUTOLOAD); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.69'; +$VERSION = '1.70'; sub ConvertTimecode($); sub ProcessSGLT($$$); @@ -1319,6 +1319,11 @@ my %code2charset = ( Name => 'ImageWidth', Format => 'int16u', Priority => 0, + # add " (lossless)" to FileType since image has a VP8L (lossless) chunk + RawConv => q{ + $self->OverrideFileType($$self{VALUE}{FileType} . ' (lossless)', undef, 'webp'); + return $val; + }, ValueConv => '($val & 0x3fff) + 1', }, 2 => { @@ -1327,6 +1332,11 @@ my %code2charset = ( Priority => 0, ValueConv => '(($val >> 6) & 0x3fff) + 1', }, + 4 => { + Name => 'AlphaIsUsed', + Mask => 0x10, + PrintConv => { 0 => 'No', 1 => 'Yes' }, + }, ); # WebP extended info (ref 14) @@ -2214,7 +2224,7 @@ including AVI videos, WAV audio files and WEBP images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RSRC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RSRC.pm index 40e691e..1c20da2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RSRC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RSRC.pm @@ -225,7 +225,7 @@ resource files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RTF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RTF.pm index ef29f5c..bed477a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RTF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/RTF.pm @@ -366,7 +366,7 @@ information from RTF (Rich Text Format) documents. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Radiance.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Radiance.pm index 9f6e243..d5bafeb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Radiance.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Radiance.pm @@ -125,7 +125,7 @@ images are a type of high dynamic-range image. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Rawzor.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Rawzor.pm index 52a9cd1..6d8667c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Rawzor.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Rawzor.pm @@ -168,7 +168,7 @@ information from Rawzor compressed images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Real.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Real.pm index e91ee1d..f1e853c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Real.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Real.pm @@ -715,7 +715,7 @@ little-endian, but the Real format is big-endian. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Reconyx.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Reconyx.pm index c7f0e24..e5f5f61 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Reconyx.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Reconyx.pm @@ -431,7 +431,7 @@ maker notes in images from Reconyx cameras. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Red.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Red.pm index 78958d5..672fc83 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Red.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Red.pm @@ -303,7 +303,7 @@ from Redcode R3D version 1 and 2 video files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ricoh.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ricoh.pm index 7dfcbf9..2385d01 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ricoh.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Ricoh.pm @@ -1252,7 +1252,7 @@ interpret Ricoh maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Samsung.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Samsung.pm index 1059464..c0b1b17 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Samsung.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Samsung.pm @@ -1718,7 +1718,7 @@ SamBlock: $fixup->AddFixup(length($buff) - $offsetPos); $fixup->AddFixup(length($buff) - $offsetPos + 4); } - $et->VPrint(0, "Writing Samsung trailer ($dirLen bytes)\n") if $verbose; + $et->VPrint(0, " Writing Samsung trailer ($dirLen bytes)\n") if $verbose; Write($$dirInfo{OutFile}, $buff) or return -1; return 1; } @@ -1762,7 +1762,7 @@ Samsung maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sanyo.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sanyo.pm index 32bcddf..2d4f9d1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sanyo.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sanyo.pm @@ -419,7 +419,7 @@ Sanyo maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Scalado.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Scalado.pm index cf0e4b2..ae65138 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Scalado.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Scalado.pm @@ -128,7 +128,7 @@ metadata from the JPEG APP4 SCALADO segment. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shift.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shift.pl index 6e184d4..85ba567 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shift.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shift.pl @@ -631,7 +631,7 @@ =head1 BUGS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shortcuts.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shortcuts.pm index bb7ce6d..854f3fe 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shortcuts.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Shortcuts.pm @@ -344,7 +344,7 @@ name prefix. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sigma.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sigma.pm index 7126932..3052acb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sigma.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sigma.pm @@ -864,7 +864,7 @@ Sigma and Foveon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SigmaRaw.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SigmaRaw.pm index a0330ee..7e5b92b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SigmaRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SigmaRaw.pm @@ -680,7 +680,7 @@ Sigma and Foveon X3F images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sony.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sony.pm index 1e774ef..0fd260d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sony.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Sony.pm @@ -11759,7 +11759,7 @@ Minolta. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SonyIDC.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SonyIDC.pm index eaf8ed1..c7b60d6 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SonyIDC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/SonyIDC.pm @@ -379,7 +379,7 @@ write Sony Image Data Converter version 3.0 metadata in ARW images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Stim.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Stim.pm index c529876..e806101 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Stim.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Stim.pm @@ -174,7 +174,7 @@ information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagInfoXML.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagInfoXML.pm index eff4e01..0d1047d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagInfoXML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagInfoXML.pm @@ -651,7 +651,7 @@ and values. ~head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -835,7 +835,7 @@ Number of modules updated, or negative on error. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagLookup.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagLookup.pm index fe2ba9b..f8f9f67 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagLookup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagLookup.pm @@ -439,6 +439,7 @@ my @tableList = ( 'Image::ExifTool::Photoshop::Main', 'Image::ExifTool::Photoshop::Resolution', 'Image::ExifTool::PostScript::Main', + 'Image::ExifTool::QuickTime::AudioKeys', 'Image::ExifTool::QuickTime::ItemList', 'Image::ExifTool::QuickTime::ItemPropCont', 'Image::ExifTool::QuickTime::Keys', @@ -448,6 +449,7 @@ my @tableList = ( 'Image::ExifTool::QuickTime::Preview', 'Image::ExifTool::QuickTime::TrackHeader', 'Image::ExifTool::QuickTime::UserData', + 'Image::ExifTool::QuickTime::VideoKeys', 'Image::ExifTool::Reconyx::Main', 'Image::ExifTool::Reconyx::Type2', 'Image::ExifTool::Reconyx::Type3', @@ -593,43 +595,43 @@ my @tableList = ( # lookup for all writable tags my %tagLookup = ( 'aberrationcorrectiondistance' => { 115 => 0x69 }, - 'about' => { 544 => 'about' }, - 'aboutcvterm' => { 535 => 'AboutCvTerm' }, - 'aboutcvtermcvid' => { 535 => [\'AboutCvTerm','AboutCvTermCvId'] }, - 'aboutcvtermid' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermId'] }, - 'aboutcvtermname' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermName'] }, - 'aboutcvtermrefinedabout' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermRefinedAbout'] }, + 'about' => { 546 => 'about' }, + 'aboutcvterm' => { 537 => 'AboutCvTerm' }, + 'aboutcvtermcvid' => { 537 => [\'AboutCvTerm','AboutCvTermCvId'] }, + 'aboutcvtermid' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermId'] }, + 'aboutcvtermname' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermName'] }, + 'aboutcvtermrefinedabout' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermRefinedAbout'] }, 'absolutealtitude' => { 122 => 'AbsoluteAltitude' }, - 'abspeakaudiofilepath' => { 550 => 'absPeakAudioFilePath' }, - 'academicfield' => { 540 => 'academicField' }, - 'acceleration' => { 125 => 0x9404, 528 => 'Acceleration' }, + 'abspeakaudiofilepath' => { 552 => 'absPeakAudioFilePath' }, + 'academicfield' => { 542 => 'academicField' }, + 'acceleration' => { 125 => 0x9404, 530 => 'Acceleration' }, 'accelerationtracking' => { 90 => 0x518 }, 'accelerationvector' => { 1 => 0x8 }, - 'accelerometer' => { 425 => 0x3 }, - 'accelerometerdata' => { 415 => 'vrot' }, + 'accelerometer' => { 427 => 0x3 }, + 'accelerometerdata' => { 416 => 'vrot' }, 'accelerometerx' => { 354 => 0x8d }, 'accelerometery' => { 354 => 0x8e }, 'accelerometerz' => { 354 => 0x8c }, 'accessoryserialnumber' => { 354 => 0x54 }, 'accessorytype' => { 354 => 0x53 }, - 'acdseeregion' => { 494 => [\'Regions','RegionsRegionList'] }, - 'acdseeregionalgarea' => { 494 => [\'Regions','RegionsRegionListALGArea'] }, - 'acdseeregionalgareah' => { 494 => [\'Regions','RegionsRegionListALGAreaH'] }, - 'acdseeregionalgareaw' => { 494 => [\'Regions','RegionsRegionListALGAreaW'] }, - 'acdseeregionalgareax' => { 494 => [\'Regions','RegionsRegionListALGAreaX'] }, - 'acdseeregionalgareay' => { 494 => [\'Regions','RegionsRegionListALGAreaY'] }, - 'acdseeregionappliedtodimensions' => { 494 => [\'Regions','RegionsAppliedToDimensions'] }, - 'acdseeregionappliedtodimensionsh' => { 494 => [\'Regions','RegionsAppliedToDimensionsH'] }, - 'acdseeregionappliedtodimensionsunit' => { 494 => [\'Regions','RegionsAppliedToDimensionsUnit'] }, - 'acdseeregionappliedtodimensionsw' => { 494 => [\'Regions','RegionsAppliedToDimensionsW'] }, - 'acdseeregiondlyarea' => { 494 => [\'Regions','RegionsRegionListDLYArea'] }, - 'acdseeregiondlyareah' => { 494 => [\'Regions','RegionsRegionListDLYAreaH'] }, - 'acdseeregiondlyareaw' => { 494 => [\'Regions','RegionsRegionListDLYAreaW'] }, - 'acdseeregiondlyareax' => { 494 => [\'Regions','RegionsRegionListDLYAreaX'] }, - 'acdseeregiondlyareay' => { 494 => [\'Regions','RegionsRegionListDLYAreaY'] }, - 'acdseeregionname' => { 494 => [\'Regions','RegionsRegionListName'] }, - 'acdseeregionnameassigntype' => { 494 => [\'Regions','RegionsRegionListNameAssignType'] }, - 'acdseeregiontype' => { 494 => [\'Regions','RegionsRegionListType'] }, + 'acdseeregion' => { 496 => [\'Regions','RegionsRegionList'] }, + 'acdseeregionalgarea' => { 496 => [\'Regions','RegionsRegionListALGArea'] }, + 'acdseeregionalgareah' => { 496 => [\'Regions','RegionsRegionListALGAreaH'] }, + 'acdseeregionalgareaw' => { 496 => [\'Regions','RegionsRegionListALGAreaW'] }, + 'acdseeregionalgareax' => { 496 => [\'Regions','RegionsRegionListALGAreaX'] }, + 'acdseeregionalgareay' => { 496 => [\'Regions','RegionsRegionListALGAreaY'] }, + 'acdseeregionappliedtodimensions' => { 496 => [\'Regions','RegionsAppliedToDimensions'] }, + 'acdseeregionappliedtodimensionsh' => { 496 => [\'Regions','RegionsAppliedToDimensionsH'] }, + 'acdseeregionappliedtodimensionsunit' => { 496 => [\'Regions','RegionsAppliedToDimensionsUnit'] }, + 'acdseeregionappliedtodimensionsw' => { 496 => [\'Regions','RegionsAppliedToDimensionsW'] }, + 'acdseeregiondlyarea' => { 496 => [\'Regions','RegionsRegionListDLYArea'] }, + 'acdseeregiondlyareah' => { 496 => [\'Regions','RegionsRegionListDLYAreaH'] }, + 'acdseeregiondlyareaw' => { 496 => [\'Regions','RegionsRegionListDLYAreaW'] }, + 'acdseeregiondlyareax' => { 496 => [\'Regions','RegionsRegionListDLYAreaX'] }, + 'acdseeregiondlyareay' => { 496 => [\'Regions','RegionsRegionListDLYAreaY'] }, + 'acdseeregionname' => { 496 => [\'Regions','RegionsRegionListName'] }, + 'acdseeregionnameassigntype' => { 496 => [\'Regions','RegionsRegionListNameAssignType'] }, + 'acdseeregiontype' => { 496 => [\'Regions','RegionsRegionListType'] }, 'actionadvised' => { 138 => 0x2a }, 'activearea' => { 125 => 0xc68d }, 'actived-lighting' => { 243 => 0x22, 300 => 0x24 }, @@ -637,18 +639,18 @@ my %tagLookup = ( 'adaptervoltage' => { 145 => 0x407 }, 'addaspectratioinfo' => { 90 => 0x80e }, 'addiptcinformation' => { 90 => 0x815 }, - 'additionalmodelinformation' => { 535 => 'AddlModelInfo' }, + 'additionalmodelinformation' => { 537 => 'AddlModelInfo' }, 'addoriginaldecisiondata' => { 90 => 0x80f, 91 => 0x11, 92 => 0x13, 95 => 0x14 }, 'address' => { 168 => 'Address' }, - 'adjustmentmode' => { 432 => 0x15 }, + 'adjustmentmode' => { 434 => 0x15 }, 'adlbracketingstep' => { 205 => 0x17 }, 'adlbracketingtype' => { 205 => 0x18 }, 'adobe' => { 126 => 'Adobe' }, - 'adultcontentwarning' => { 340 => 'AdultContentWarning', 543 => 'adultContentWarning' }, + 'adultcontentwarning' => { 340 => 'AdultContentWarning', 545 => 'adultContentWarning' }, 'advancedfilter' => { 133 => 0x1201 }, 'advancedraw' => { 302 => 0x76a43203 }, 'advancedscenetype' => { 354 => 0x3d }, - 'advisory' => { 548 => 'Advisory' }, + 'advisory' => { 550 => 'Advisory' }, 'ae_iso' => { 362 => 0x2, 363 => 0x4, 364 => 0x12 }, 'aeaperture' => { 362 => 0x1, 363 => 0x3, 364 => 0x11 }, 'aeaperturesteps' => { 362 => 0x8, 363 => 0xb }, @@ -664,7 +666,7 @@ my %tagLookup = ( 'aeexposuretime' => { 362 => 0x0, 363 => 0x2, 364 => 0x10 }, 'aelbutton' => { 191 => 0x45 }, 'aelexposureindicator' => { 191 => 0x51 }, - 'aelock' => { 191 => 0x5b, 311 => '4.2', 320 => '4.2', 330 => 0x201, 390 => 0x48, 442 => 0x40, 443 => 0x40, 444 => [0x86,0x286] }, + 'aelock' => { 191 => 0x5b, 311 => '4.2', 320 => '4.2', 330 => 0x201, 390 => 0x48, 444 => 0x40, 445 => 0x40, 446 => [0x86,0x286] }, 'aelockbutton' => { 309 => '16.1', 311 => '4.1', 314 => '15.1', 315 => '16.1', 316 => '16.1', 318 => '30.1', 319 => '16.1', 320 => '4.1', 322 => '17.1', 324 => '17.1' }, 'aelockbuttonplusdials' => { 309 => '16.2', 318 => '32.1', 322 => '44.1' }, 'aelockformb-d80' => { 324 => '3.1' }, @@ -679,12 +681,12 @@ my %tagLookup = ( 'aeminaperture' => { 362 => 0xb, 363 => 0x12, 364 => 0x1e }, 'aeminexposuretime' => { 362 => 0x5, 363 => 0x13, 364 => 0x1f }, 'aeprogrammode' => { 362 => 0x6 }, - 'aeprojectlink' => { 522 => 'aeProjectLink' }, - 'aeprojectlinkcompositionid' => { 522 => [\'aeProjectLink','aeProjectLinkCompositionID'] }, - 'aeprojectlinkfullpath' => { 522 => [\'aeProjectLink','aeProjectLinkFullPath'] }, - 'aeprojectlinkrenderoutputmoduleindex' => { 522 => [\'aeProjectLink','aeProjectLinkRenderOutputModuleIndex'] }, - 'aeprojectlinkrenderqueueitemid' => { 522 => [\'aeProjectLink','aeProjectLinkRenderQueueItemID'] }, - 'aeprojectlinkrendertimestamp' => { 522 => [\'aeProjectLink','aeProjectLinkRenderTimeStamp'] }, + 'aeprojectlink' => { 524 => 'aeProjectLink' }, + 'aeprojectlinkcompositionid' => { 524 => [\'aeProjectLink','aeProjectLinkCompositionID'] }, + 'aeprojectlinkfullpath' => { 524 => [\'aeProjectLink','aeProjectLinkFullPath'] }, + 'aeprojectlinkrenderoutputmoduleindex' => { 524 => [\'aeProjectLink','aeProjectLinkRenderOutputModuleIndex'] }, + 'aeprojectlinkrenderqueueitemid' => { 524 => [\'aeProjectLink','aeProjectLinkRenderQueueItemID'] }, + 'aeprojectlinkrendertimestamp' => { 524 => [\'aeProjectLink','aeProjectLinkRenderTimeStamp'] }, 'aesetting' => { 37 => 0x21 }, 'aestable' => { 1 => 0x4 }, 'aestheticscore' => { 343 => 'aesthetic_score' }, @@ -717,80 +719,80 @@ my %tagLookup = ( 'afareainitialwidth' => { 257 => 0xbea }, 'afareainitialxposition' => { 257 => 0xbe8 }, 'afareainitialyposition' => { 257 => 0xbe9 }, - 'afareamode' => { 132 => '0.3', 187 => 0x33, 191 => 0xe, 199 => 0x0, 200 => 0x5, 201 => 0x5, 247 => 0x340, 249 => 0x224, 250 => 0x224, 251 => 0x210, 252 => 0x224, 253 => 0x224, 354 => 0xf, 422 => 0x1205, 435 => [0xa,0x3a], 442 => 0x11, 443 => 0x10, 444 => 0x24, 456 => 0xb043, 482 => 0x17 }, - 'afareamodesetting' => { 311 => '11.1', 314 => '0.1', 320 => '16.1', 324 => '2.1', 456 => 0x201c }, + 'afareamode' => { 132 => '0.3', 187 => 0x33, 191 => 0xe, 199 => 0x0, 200 => 0x5, 201 => 0x5, 247 => 0x340, 249 => 0x224, 250 => 0x224, 251 => 0x210, 252 => 0x224, 253 => 0x224, 354 => 0xf, 424 => 0x1205, 437 => [0xa,0x3a], 444 => 0x11, 445 => 0x10, 446 => 0x24, 458 => 0xb043, 484 => 0x17 }, + 'afareamodesetting' => { 311 => '11.1', 314 => '0.1', 320 => '16.1', 324 => '2.1', 458 => 0x201c }, 'afareapointsize' => { 132 => '0.4' }, 'afareas' => { 330 => 0x304 }, 'afareaselectionmethod' => { 2 => 0xd }, 'afareaselectmethod' => { 90 => 0x51b }, 'afareawidth' => { 200 => [0x18,0x32,0x4e], 201 => 0x46 }, - 'afareaxposition' => { 200 => [0x14,0x2e,0x4a], 201 => 0x42, 422 => 0x1203 }, - 'afareaxposition1' => { 422 => 0x1201 }, - 'afareayposition' => { 200 => [0x16,0x30,0x4c], 201 => 0x44, 422 => 0x1204 }, - 'afareayposition1' => { 422 => 0x1202 }, + 'afareaxposition' => { 200 => [0x14,0x2e,0x4a], 201 => 0x42, 424 => 0x1203 }, + 'afareaxposition1' => { 424 => 0x1201 }, + 'afareayposition' => { 200 => [0x16,0x30,0x4c], 201 => 0x44, 424 => 0x1204 }, + 'afareayposition1' => { 424 => 0x1202 }, 'afareazonesize' => { 132 => '0.5' }, 'afassist' => { 88 => 0x5, 96 => 0x5, 191 => 0x48, 309 => '2.5', 311 => '0.2', 314 => '0.2', 315 => '1.1', 316 => '1.1', 317 => '1.3', 318 => '2.4', 319 => '1.3', 320 => '0.2', 322 => '2.4', 324 => '2.3' }, 'afassistbeam' => { 2 => 0x8, 90 => 0x50e, 91 => 0x4, 92 => 0x5, 93 => 0x4, 94 => 0x4, 95 => 0x5 }, 'afassistlamp' => { 354 => 0x31 }, - 'afbuttonpressed' => { 444 => [0x83,0x283] }, + 'afbuttonpressed' => { 446 => [0x83,0x283] }, 'afconfidence' => { 1 => 0x3d }, 'afconfigtool' => { 2 => 0x1 }, 'afdefocus' => { 365 => 0x6 }, 'afduringliveview' => { 90 => 0x511 }, - 'affinea' => { 514 => 'AffineA' }, - 'affineb' => { 514 => 'AffineB' }, - 'affinec' => { 514 => 'AffineC' }, - 'affined' => { 514 => 'AffineD' }, + 'affinea' => { 516 => 'AffineA' }, + 'affineb' => { 516 => 'AffineB' }, + 'affinec' => { 516 => 'AffineC' }, + 'affined' => { 516 => 'AffineD' }, 'affinetune' => { 202 => 0x0, 249 => 0x6b0, 250 => 0x6c0, 251 => 0x5b0, 252 => 0x5e0, 253 => 0x5f8, 330 => 0x306 }, 'affinetuneadj' => { 202 => 0x2, 275 => 0x2d1, 276 => 0x2dc, 330 => 0x307 }, 'affinetuneadjtele' => { 202 => 0x3 }, 'affinetuneindex' => { 202 => 0x1 }, - 'affinex' => { 514 => 'AffineX' }, - 'affiney' => { 514 => 'AffineY' }, + 'affinex' => { 516 => 'AffineX' }, + 'affiney' => { 516 => 'AffineY' }, 'afhold' => { 365 => 0x1fd }, - 'afilluminator' => { 442 => 0x29, 456 => 0xb044 }, + 'afilluminator' => { 444 => 0x29, 458 => 0xb044 }, 'afimageheight' => { 200 => [0x12,0x2c,0x48], 201 => 0x40 }, 'afimagewidth' => { 200 => [0x10,0x2a,0x46], 201 => 0x3e }, 'afintegrationtime' => { 365 => 0x7 }, 'afmeasureddepth' => { 1 => 0x38 }, - 'afmicroadj' => { 435 => [0x17d,0x50] }, - 'afmicroadjmode' => { 3 => 0x1, 439 => 0x131 }, - 'afmicroadjregisteredlenses' => { 439 => '305.1' }, + 'afmicroadj' => { 437 => [0x17d,0x50] }, + 'afmicroadjmode' => { 3 => 0x1, 441 => 0x131 }, + 'afmicroadjregisteredlenses' => { 441 => '305.1' }, 'afmicroadjustment' => { 90 => 0x507 }, - 'afmicroadjvalue' => { 3 => 0x2, 439 => 0x130 }, - 'afmode' => { 119 => 0x3009, 133 => 0x1022, 187 => 0x16, 432 => 0x5 }, + 'afmicroadjvalue' => { 3 => 0x2, 441 => 0x130 }, + 'afmode' => { 119 => 0x3009, 133 => 0x1022, 187 => 0x16, 434 => 0x5 }, 'afmoderestrictions' => { 310 => '50.3', 312 => '48.3', 313 => '48.3', 322 => '48.3', 323 => '48.3' }, 'afonaelockbuttonswitch' => { 90 => 0x702 }, 'afonbutton' => { 309 => '3.1', 310 => '47.1', 325 => 0x87, 326 => 0x83, 327 => 0x83, 328 => 0x83 }, 'afperformance' => { 1 => 0x23 }, - 'afpoint' => { 37 => 0x13, 118 => 0x18, 187 => 0x15, 199 => 0x1, 333 => 0x308, 432 => 0x1f, 435 => [0x37,0x7], 439 => 0x19, 440 => 0x18, 441 => [0x18,0x20] }, + 'afpoint' => { 37 => 0x13, 118 => 0x18, 187 => 0x15, 199 => 0x1, 333 => 0x308, 434 => 0x1f, 437 => [0x37,0x7], 441 => 0x19, 442 => 0x18, 443 => [0x18,0x20] }, 'afpointactivationarea' => { 89 => 0x11, 95 => 0x11 }, 'afpointareaexpansion' => { 90 => 0x508 }, - 'afpointatshutterrelease' => { 435 => [0x39,0x9] }, + 'afpointatshutterrelease' => { 437 => [0x39,0x9] }, 'afpointautoselection' => { 90 => 0x50b }, 'afpointbrightness' => { 90 => 0x50d, 309 => '2.4', 310 => '46.5', 312 => '2.2', 313 => '2.2', 322 => '2.3', 323 => '2.2' }, 'afpointdetails' => { 333 => 0x31b }, 'afpointdisplayduringfocus' => { 2 => 0x10, 90 => 0x50c }, 'afpointillumination' => { 89 => 0xa, 309 => '2.3', 310 => '46.2', 312 => '47.2', 313 => '47.2', 317 => '1.2', 318 => '2.3', 319 => '1.2', 322 => '47.2', 323 => '47.2', 324 => '2.4' }, - 'afpointinfocus' => { 435 => [0x38,0x8] }, + 'afpointinfocus' => { 437 => [0x38,0x8] }, 'afpointmode' => { 370 => 0x3 }, 'afpointposition' => { 119 => 0x2021, 354 => 0x4d }, 'afpointregistration' => { 88 => 0x7 }, 'afpoints' => { 190 => 0x10 }, 'afpointsel' => { 325 => 0xb, 326 => 0xb, 327 => 0xb, 328 => 0xb }, - 'afpointselected' => { 191 => 0xd, 330 => 0x305, 390 => 0xe, 439 => 0x15, 440 => 0x14, 441 => [0x14,0x1c], 456 => 0x201e }, + 'afpointselected' => { 191 => 0xd, 330 => 0x305, 390 => 0xe, 441 => 0x15, 442 => 0x14, 443 => [0x14,0x1c], 458 => 0x201e }, 'afpointselected2' => { 370 => 0x4 }, 'afpointselection' => { 89 => 0xb, 309 => '1.3', 310 => '1.3', 318 => '1.3', 322 => '1.3', 323 => '1.3' }, 'afpointselectionmethod' => { 90 => 0x50f, 91 => 0xc, 92 => 0xd, 95 => 0xd }, - 'afpointsetting' => { 442 => 0x12, 443 => 0x11 }, + 'afpointsetting' => { 444 => 0x12, 445 => 0x11 }, 'afpointsinfocus' => { 82 => 0xe, 199 => 0x2, 200 => 0x30, 365 => 0xb, 366 => 0x4, 390 => [0xf,0x3c] }, 'afpointsinfocus5d' => { 19 => 0x38 }, 'afpointspotmetering' => { 89 => 0xd }, - 'afpointsselected' => { 200 => 0x1c, 366 => '4.1', 491 => 0x4 }, + 'afpointsselected' => { 200 => 0x1c, 366 => '4.1', 493 => 0x4 }, 'afpointsspecial' => { 366 => '4.2' }, 'afpointsunknown1' => { 365 => 0x0 }, 'afpointsunknown2' => { 365 => 0x2 }, - 'afpointsused' => { 200 => [0xa,0x8], 201 => 0xa, 435 => [0x10,0x16e] }, + 'afpointsused' => { 200 => [0xa,0x8], 201 => 0xa, 437 => [0x10,0x16e] }, 'afpointswitching' => { 2 => 0x4 }, 'afpredictor' => { 365 => 0x4 }, 'afresponse' => { 243 => 0xad }, @@ -798,169 +800,170 @@ my %tagLookup = ( 'afsearch' => { 330 => 0x303 }, 'afsensoractive' => { 187 => 0x1 }, 'afstable' => { 1 => 0x7 }, - 'afstatus' => { 422 => 0x1200 }, - 'afstatus_00_b4' => { 438 => 0x0 }, - 'afstatus_01_c4' => { 438 => 0x2 }, - 'afstatus_02_d4' => { 438 => 0x4 }, - 'afstatus_03_e4' => { 438 => 0x6 }, - 'afstatus_04_f4' => { 438 => 0x8 }, - 'afstatus_05_g4' => { 438 => 0xa }, - 'afstatus_06_h4' => { 438 => 0xc }, - 'afstatus_07_b3' => { 438 => 0xe }, - 'afstatus_08_c3' => { 438 => 0x10 }, - 'afstatus_09_d3' => { 438 => 0x12 }, - 'afstatus_10_e3' => { 438 => 0x14 }, - 'afstatus_11_f3' => { 438 => 0x16 }, - 'afstatus_12_g3' => { 438 => 0x18 }, - 'afstatus_13_h3' => { 438 => 0x1a }, - 'afstatus_14_b2' => { 438 => 0x1c }, - 'afstatus_15_c2' => { 438 => 0x1e }, - 'afstatus_16_d2' => { 438 => 0x20 }, - 'afstatus_17_e2' => { 438 => 0x22 }, - 'afstatus_18_f2' => { 438 => 0x24 }, - 'afstatus_19_g2' => { 438 => 0x26 }, - 'afstatus_20_h2' => { 438 => 0x28 }, - 'afstatus_21_c1' => { 438 => 0x2a }, - 'afstatus_22_d1' => { 438 => 0x2c }, - 'afstatus_23_e1' => { 438 => 0x2e }, - 'afstatus_24_f1' => { 438 => 0x30 }, - 'afstatus_25_g1' => { 438 => 0x32 }, - 'afstatus_26_a7_vertical' => { 438 => 0x34 }, - 'afstatus_27_a6_vertical' => { 438 => 0x36 }, - 'afstatus_28_a5_vertical' => { 438 => 0x38 }, - 'afstatus_29_c7_vertical' => { 438 => 0x3a }, - 'afstatus_30_c6_vertical' => { 438 => 0x3c }, - 'afstatus_31_c5_vertical' => { 438 => 0x3e }, - 'afstatus_32_e7_vertical' => { 438 => 0x40 }, - 'afstatus_33_e6_center_vertical' => { 438 => 0x42 }, - 'afstatus_34_e5_vertical' => { 438 => 0x44 }, - 'afstatus_35_g7_vertical' => { 438 => 0x46 }, - 'afstatus_36_g6_vertical' => { 438 => 0x48 }, - 'afstatus_37_g5_vertical' => { 438 => 0x4a }, - 'afstatus_38_i7_vertical' => { 438 => 0x4c }, - 'afstatus_39_i6_vertical' => { 438 => 0x4e }, - 'afstatus_40_i5_vertical' => { 438 => 0x50 }, - 'afstatus_41_a7' => { 438 => 0x52 }, - 'afstatus_42_b7' => { 438 => 0x54 }, - 'afstatus_43_c7' => { 438 => 0x56 }, - 'afstatus_44_d7' => { 438 => 0x58 }, - 'afstatus_45_e7' => { 438 => 0x5a }, - 'afstatus_46_f7' => { 438 => 0x5c }, - 'afstatus_47_g7' => { 438 => 0x5e }, - 'afstatus_48_h7' => { 438 => 0x60 }, - 'afstatus_49_i7' => { 438 => 0x62 }, - 'afstatus_50_a6' => { 438 => 0x64 }, - 'afstatus_51_b6' => { 438 => 0x66 }, - 'afstatus_52_c6' => { 438 => 0x68 }, - 'afstatus_53_d6' => { 438 => 0x6a }, - 'afstatus_54_e6_center' => { 438 => 0x6c }, - 'afstatus_55_f6' => { 438 => 0x6e }, - 'afstatus_56_g6' => { 438 => 0x70 }, - 'afstatus_57_h6' => { 438 => 0x72 }, - 'afstatus_58_i6' => { 438 => 0x74 }, - 'afstatus_59_a5' => { 438 => 0x76 }, - 'afstatus_60_b5' => { 438 => 0x78 }, - 'afstatus_61_c5' => { 438 => 0x7a }, - 'afstatus_62_d5' => { 438 => 0x7c }, - 'afstatus_63_e5' => { 438 => 0x7e }, - 'afstatus_64_f5' => { 438 => 0x80 }, - 'afstatus_65_g5' => { 438 => 0x82 }, - 'afstatus_66_h5' => { 438 => 0x84 }, - 'afstatus_67_i5' => { 438 => 0x86 }, - 'afstatus_68_c11' => { 438 => 0x88 }, - 'afstatus_69_d11' => { 438 => 0x8a }, - 'afstatus_70_e11' => { 438 => 0x8c }, - 'afstatus_71_f11' => { 438 => 0x8e }, - 'afstatus_72_g11' => { 438 => 0x90 }, - 'afstatus_73_b10' => { 438 => 0x92 }, - 'afstatus_74_c10' => { 438 => 0x94 }, - 'afstatus_75_d10' => { 438 => 0x96 }, - 'afstatus_76_e10' => { 438 => 0x98 }, - 'afstatus_77_f10' => { 438 => 0x9a }, - 'afstatus_78_g10' => { 438 => 0x9c }, - 'afstatus_79_h10' => { 438 => 0x9e }, - 'afstatus_80_b9' => { 438 => 0xa0 }, - 'afstatus_81_c9' => { 438 => 0xa2 }, - 'afstatus_82_d9' => { 438 => 0xa4 }, - 'afstatus_83_e9' => { 438 => 0xa6 }, - 'afstatus_84_f9' => { 438 => 0xa8 }, - 'afstatus_85_g9' => { 438 => 0xaa }, - 'afstatus_86_h9' => { 438 => 0xac }, - 'afstatus_87_b8' => { 438 => 0xae }, - 'afstatus_88_c8' => { 438 => 0xb0 }, - 'afstatus_89_d8' => { 438 => 0xb2 }, - 'afstatus_90_e8' => { 438 => 0xb4 }, - 'afstatus_91_f8' => { 438 => 0xb6 }, - 'afstatus_92_g8' => { 438 => 0xb8 }, - 'afstatus_93_h8' => { 438 => 0xba }, - 'afstatus_94_e6_center_f2-8' => { 438 => 0xbc }, - 'afstatusactivesensor' => { 187 => 0x2, 435 => [0x4,0x3b], 439 => 0x1e, 440 => 0x1b, 441 => [0x1b,0x21] }, - 'afstatusbottom' => { 187 => 0x8, 439 => 0x2a, 440 => 0x21, 441 => 0x21 }, - 'afstatusbottom-left' => { 187 => 0x12, 440 => 0x2b, 441 => 0x2b }, - 'afstatusbottom-right' => { 187 => 0x6, 440 => 0x1f, 441 => 0x1f }, - 'afstatusbottomassist-left' => { 439 => 0x28 }, - 'afstatusbottomassist-right' => { 439 => 0x2c }, - 'afstatusbottomhorizontal' => { 436 => 0x10, 437 => 0x1c }, - 'afstatusbottomvertical' => { 436 => 0x16, 437 => 0x26 }, - 'afstatuscenter-10' => { 439 => 0x34 }, - 'afstatuscenter-11' => { 439 => 0x36 }, - 'afstatuscenter-12' => { 439 => 0x38 }, - 'afstatuscenter-14' => { 439 => 0x3c }, - 'afstatuscenter-7' => { 439 => 0x2e }, - 'afstatuscenter-9' => { 439 => 0x32 }, - 'afstatuscenter-horizontal' => { 439 => 0x30 }, - 'afstatuscenter-vertical' => { 439 => 0x3a }, - 'afstatuscenterf2-8' => { 439 => 0x4c }, - 'afstatuscenterhorizontal' => { 187 => 0x2f, 436 => 0xc, 437 => 0x18, 440 => 0x2f, 441 => 0x2f }, - 'afstatuscentervertical' => { 187 => 0xc, 436 => 0x14, 437 => 0x22, 440 => 0x25, 441 => 0x25 }, - 'afstatusfarleft' => { 436 => 0x6, 439 => 0x26 }, - 'afstatusfarlefthorizontal' => { 437 => 0x4 }, - 'afstatusfarleftvertical' => { 437 => 0x12 }, - 'afstatusfarright' => { 436 => 0x18, 439 => 0x44 }, - 'afstatusfarrighthorizontal' => { 437 => 0x2c }, - 'afstatusfarrightvertical' => { 437 => 0x34 }, - 'afstatusleft' => { 187 => 0x2d, 436 => 0x2, 439 => 0x22, 440 => 0x2d, 441 => 0x2d }, - 'afstatuslefthorizontal' => { 437 => 0x6 }, - 'afstatusleftvertical' => { 437 => 0xe }, - 'afstatuslower-left' => { 436 => 0x4, 439 => 0x24 }, - 'afstatuslower-lefthorizontal' => { 437 => 0xa }, - 'afstatuslower-leftvertical' => { 437 => 0x10 }, - 'afstatuslower-middle' => { 436 => 0x22, 437 => 0x24 }, - 'afstatuslower-right' => { 436 => 0x1e, 439 => 0x4a }, - 'afstatuslower-righthorizontal' => { 437 => 0x32 }, - 'afstatuslower-rightvertical' => { 437 => 0x3a }, - 'afstatuslowerfarleft' => { 437 => 0x8 }, - 'afstatuslowerfarright' => { 437 => 0x30 }, - 'afstatusmiddlehorizontal' => { 187 => 0xa, 440 => 0x23, 441 => 0x23 }, - 'afstatusnearleft' => { 436 => 0xe, 437 => 0x1a }, - 'afstatusnearright' => { 436 => 0xa, 437 => 0x16 }, - 'afstatusright' => { 187 => 0x31, 436 => 0x1c, 439 => 0x48, 440 => 0x31, 441 => 0x31 }, - 'afstatusrighthorizontal' => { 437 => 0x2e }, - 'afstatusrightvertical' => { 437 => 0x38 }, - 'afstatustop' => { 187 => 0xe, 439 => 0x40, 440 => 0x27, 441 => 0x27 }, - 'afstatustop-left' => { 187 => 0x10, 440 => 0x29, 441 => 0x29 }, - 'afstatustop-right' => { 187 => 0x4, 440 => 0x1d, 441 => 0x1d }, - 'afstatustopassist-left' => { 439 => 0x3e }, - 'afstatustopassist-right' => { 439 => 0x42 }, - 'afstatustophorizontal' => { 436 => 0x8, 437 => 0x14 }, - 'afstatustopvertical' => { 436 => 0x12, 437 => 0x1e }, - 'afstatusupper-left' => { 436 => 0x0, 439 => 0x20 }, - 'afstatusupper-lefthorizontal' => { 437 => 0x2 }, - 'afstatusupper-leftvertical' => { 437 => 0xc }, - 'afstatusupper-middle' => { 436 => 0x20, 437 => 0x20 }, - 'afstatusupper-right' => { 436 => 0x1a, 439 => 0x46 }, - 'afstatusupper-righthorizontal' => { 437 => 0x2a }, - 'afstatusupper-rightvertical' => { 437 => 0x36 }, - 'afstatusupperfarleft' => { 437 => 0x0 }, - 'afstatusupperfarright' => { 437 => 0x28 }, + 'afstatus' => { 424 => 0x1200 }, + 'afstatus_00_b4' => { 440 => 0x0 }, + 'afstatus_01_c4' => { 440 => 0x2 }, + 'afstatus_02_d4' => { 440 => 0x4 }, + 'afstatus_03_e4' => { 440 => 0x6 }, + 'afstatus_04_f4' => { 440 => 0x8 }, + 'afstatus_05_g4' => { 440 => 0xa }, + 'afstatus_06_h4' => { 440 => 0xc }, + 'afstatus_07_b3' => { 440 => 0xe }, + 'afstatus_08_c3' => { 440 => 0x10 }, + 'afstatus_09_d3' => { 440 => 0x12 }, + 'afstatus_10_e3' => { 440 => 0x14 }, + 'afstatus_11_f3' => { 440 => 0x16 }, + 'afstatus_12_g3' => { 440 => 0x18 }, + 'afstatus_13_h3' => { 440 => 0x1a }, + 'afstatus_14_b2' => { 440 => 0x1c }, + 'afstatus_15_c2' => { 440 => 0x1e }, + 'afstatus_16_d2' => { 440 => 0x20 }, + 'afstatus_17_e2' => { 440 => 0x22 }, + 'afstatus_18_f2' => { 440 => 0x24 }, + 'afstatus_19_g2' => { 440 => 0x26 }, + 'afstatus_20_h2' => { 440 => 0x28 }, + 'afstatus_21_c1' => { 440 => 0x2a }, + 'afstatus_22_d1' => { 440 => 0x2c }, + 'afstatus_23_e1' => { 440 => 0x2e }, + 'afstatus_24_f1' => { 440 => 0x30 }, + 'afstatus_25_g1' => { 440 => 0x32 }, + 'afstatus_26_a7_vertical' => { 440 => 0x34 }, + 'afstatus_27_a6_vertical' => { 440 => 0x36 }, + 'afstatus_28_a5_vertical' => { 440 => 0x38 }, + 'afstatus_29_c7_vertical' => { 440 => 0x3a }, + 'afstatus_30_c6_vertical' => { 440 => 0x3c }, + 'afstatus_31_c5_vertical' => { 440 => 0x3e }, + 'afstatus_32_e7_vertical' => { 440 => 0x40 }, + 'afstatus_33_e6_center_vertical' => { 440 => 0x42 }, + 'afstatus_34_e5_vertical' => { 440 => 0x44 }, + 'afstatus_35_g7_vertical' => { 440 => 0x46 }, + 'afstatus_36_g6_vertical' => { 440 => 0x48 }, + 'afstatus_37_g5_vertical' => { 440 => 0x4a }, + 'afstatus_38_i7_vertical' => { 440 => 0x4c }, + 'afstatus_39_i6_vertical' => { 440 => 0x4e }, + 'afstatus_40_i5_vertical' => { 440 => 0x50 }, + 'afstatus_41_a7' => { 440 => 0x52 }, + 'afstatus_42_b7' => { 440 => 0x54 }, + 'afstatus_43_c7' => { 440 => 0x56 }, + 'afstatus_44_d7' => { 440 => 0x58 }, + 'afstatus_45_e7' => { 440 => 0x5a }, + 'afstatus_46_f7' => { 440 => 0x5c }, + 'afstatus_47_g7' => { 440 => 0x5e }, + 'afstatus_48_h7' => { 440 => 0x60 }, + 'afstatus_49_i7' => { 440 => 0x62 }, + 'afstatus_50_a6' => { 440 => 0x64 }, + 'afstatus_51_b6' => { 440 => 0x66 }, + 'afstatus_52_c6' => { 440 => 0x68 }, + 'afstatus_53_d6' => { 440 => 0x6a }, + 'afstatus_54_e6_center' => { 440 => 0x6c }, + 'afstatus_55_f6' => { 440 => 0x6e }, + 'afstatus_56_g6' => { 440 => 0x70 }, + 'afstatus_57_h6' => { 440 => 0x72 }, + 'afstatus_58_i6' => { 440 => 0x74 }, + 'afstatus_59_a5' => { 440 => 0x76 }, + 'afstatus_60_b5' => { 440 => 0x78 }, + 'afstatus_61_c5' => { 440 => 0x7a }, + 'afstatus_62_d5' => { 440 => 0x7c }, + 'afstatus_63_e5' => { 440 => 0x7e }, + 'afstatus_64_f5' => { 440 => 0x80 }, + 'afstatus_65_g5' => { 440 => 0x82 }, + 'afstatus_66_h5' => { 440 => 0x84 }, + 'afstatus_67_i5' => { 440 => 0x86 }, + 'afstatus_68_c11' => { 440 => 0x88 }, + 'afstatus_69_d11' => { 440 => 0x8a }, + 'afstatus_70_e11' => { 440 => 0x8c }, + 'afstatus_71_f11' => { 440 => 0x8e }, + 'afstatus_72_g11' => { 440 => 0x90 }, + 'afstatus_73_b10' => { 440 => 0x92 }, + 'afstatus_74_c10' => { 440 => 0x94 }, + 'afstatus_75_d10' => { 440 => 0x96 }, + 'afstatus_76_e10' => { 440 => 0x98 }, + 'afstatus_77_f10' => { 440 => 0x9a }, + 'afstatus_78_g10' => { 440 => 0x9c }, + 'afstatus_79_h10' => { 440 => 0x9e }, + 'afstatus_80_b9' => { 440 => 0xa0 }, + 'afstatus_81_c9' => { 440 => 0xa2 }, + 'afstatus_82_d9' => { 440 => 0xa4 }, + 'afstatus_83_e9' => { 440 => 0xa6 }, + 'afstatus_84_f9' => { 440 => 0xa8 }, + 'afstatus_85_g9' => { 440 => 0xaa }, + 'afstatus_86_h9' => { 440 => 0xac }, + 'afstatus_87_b8' => { 440 => 0xae }, + 'afstatus_88_c8' => { 440 => 0xb0 }, + 'afstatus_89_d8' => { 440 => 0xb2 }, + 'afstatus_90_e8' => { 440 => 0xb4 }, + 'afstatus_91_f8' => { 440 => 0xb6 }, + 'afstatus_92_g8' => { 440 => 0xb8 }, + 'afstatus_93_h8' => { 440 => 0xba }, + 'afstatus_94_e6_center_f2-8' => { 440 => 0xbc }, + 'afstatusactivesensor' => { 187 => 0x2, 437 => [0x4,0x3b], 441 => 0x1e, 442 => 0x1b, 443 => [0x1b,0x21] }, + 'afstatusbottom' => { 187 => 0x8, 441 => 0x2a, 442 => 0x21, 443 => 0x21 }, + 'afstatusbottom-left' => { 187 => 0x12, 442 => 0x2b, 443 => 0x2b }, + 'afstatusbottom-right' => { 187 => 0x6, 442 => 0x1f, 443 => 0x1f }, + 'afstatusbottomassist-left' => { 441 => 0x28 }, + 'afstatusbottomassist-right' => { 441 => 0x2c }, + 'afstatusbottomhorizontal' => { 438 => 0x10, 439 => 0x1c }, + 'afstatusbottomvertical' => { 438 => 0x16, 439 => 0x26 }, + 'afstatuscenter-10' => { 441 => 0x34 }, + 'afstatuscenter-11' => { 441 => 0x36 }, + 'afstatuscenter-12' => { 441 => 0x38 }, + 'afstatuscenter-14' => { 441 => 0x3c }, + 'afstatuscenter-7' => { 441 => 0x2e }, + 'afstatuscenter-9' => { 441 => 0x32 }, + 'afstatuscenter-horizontal' => { 441 => 0x30 }, + 'afstatuscenter-vertical' => { 441 => 0x3a }, + 'afstatuscenterf2-8' => { 441 => 0x4c }, + 'afstatuscenterhorizontal' => { 187 => 0x2f, 438 => 0xc, 439 => 0x18, 442 => 0x2f, 443 => 0x2f }, + 'afstatuscentervertical' => { 187 => 0xc, 438 => 0x14, 439 => 0x22, 442 => 0x25, 443 => 0x25 }, + 'afstatusfarleft' => { 438 => 0x6, 441 => 0x26 }, + 'afstatusfarlefthorizontal' => { 439 => 0x4 }, + 'afstatusfarleftvertical' => { 439 => 0x12 }, + 'afstatusfarright' => { 438 => 0x18, 441 => 0x44 }, + 'afstatusfarrighthorizontal' => { 439 => 0x2c }, + 'afstatusfarrightvertical' => { 439 => 0x34 }, + 'afstatusleft' => { 187 => 0x2d, 438 => 0x2, 441 => 0x22, 442 => 0x2d, 443 => 0x2d }, + 'afstatuslefthorizontal' => { 439 => 0x6 }, + 'afstatusleftvertical' => { 439 => 0xe }, + 'afstatuslower-left' => { 438 => 0x4, 441 => 0x24 }, + 'afstatuslower-lefthorizontal' => { 439 => 0xa }, + 'afstatuslower-leftvertical' => { 439 => 0x10 }, + 'afstatuslower-middle' => { 438 => 0x22, 439 => 0x24 }, + 'afstatuslower-right' => { 438 => 0x1e, 441 => 0x4a }, + 'afstatuslower-righthorizontal' => { 439 => 0x32 }, + 'afstatuslower-rightvertical' => { 439 => 0x3a }, + 'afstatuslowerfarleft' => { 439 => 0x8 }, + 'afstatuslowerfarright' => { 439 => 0x30 }, + 'afstatusmiddlehorizontal' => { 187 => 0xa, 442 => 0x23, 443 => 0x23 }, + 'afstatusnearleft' => { 438 => 0xe, 439 => 0x1a }, + 'afstatusnearright' => { 438 => 0xa, 439 => 0x16 }, + 'afstatusright' => { 187 => 0x31, 438 => 0x1c, 441 => 0x48, 442 => 0x31, 443 => 0x31 }, + 'afstatusrighthorizontal' => { 439 => 0x2e }, + 'afstatusrightvertical' => { 439 => 0x38 }, + 'afstatustop' => { 187 => 0xe, 441 => 0x40, 442 => 0x27, 443 => 0x27 }, + 'afstatustop-left' => { 187 => 0x10, 442 => 0x29, 443 => 0x29 }, + 'afstatustop-right' => { 187 => 0x4, 442 => 0x1d, 443 => 0x1d }, + 'afstatustopassist-left' => { 441 => 0x3e }, + 'afstatustopassist-right' => { 441 => 0x42 }, + 'afstatustophorizontal' => { 438 => 0x8, 439 => 0x14 }, + 'afstatustopvertical' => { 438 => 0x12, 439 => 0x1e }, + 'afstatusupper-left' => { 438 => 0x0, 441 => 0x20 }, + 'afstatusupper-lefthorizontal' => { 439 => 0x2 }, + 'afstatusupper-leftvertical' => { 439 => 0xc }, + 'afstatusupper-middle' => { 438 => 0x20, 439 => 0x20 }, + 'afstatusupper-right' => { 438 => 0x1a, 441 => 0x46 }, + 'afstatusupper-righthorizontal' => { 439 => 0x2a }, + 'afstatusupper-rightvertical' => { 439 => 0x36 }, + 'afstatusupperfarleft' => { 439 => 0x0 }, + 'afstatusupperfarright' => { 439 => 0x28 }, 'afstatusviewfinder' => { 2 => 0x12 }, - 'aftracking' => { 456 => 0x2021 }, + 'afsubjectdetection' => { 354 => 0xe9 }, + 'aftracking' => { 458 => 0x2021 }, 'aftrackingsensitivity' => { 2 => 0x2 }, - 'aftype' => { 435 => 0x2 }, - 'afwithshutter' => { 442 => 0x2a }, - 'aggregateissuenumber' => { 540 => 'aggregateIssueNumber' }, - 'aggregationtype' => { 540 => 'aggregationType' }, - 'agreement' => { 543 => 'agreement' }, + 'aftype' => { 437 => 0x2 }, + 'afwithshutter' => { 444 => 0x2a }, + 'aggregateissuenumber' => { 542 => 'aggregateIssueNumber' }, + 'aggregationtype' => { 542 => 'aggregationType' }, + 'agreement' => { 545 => 'agreement' }, 'ah2greeninterpolationthreshold' => { 145 => 0xe4e }, 'airplanemode' => { 247 => 0x9c0, 249 => 0x722, 250 => 0x732, 251 => 0x624, 252 => 0x654, 253 => 0x6bc }, 'aiservocontinuousshooting' => { 89 => 0x15 }, @@ -972,104 +975,104 @@ my %tagLookup = ( 'aiservotrackingmethod' => { 90 => 0x504 }, 'aiservotrackingsensitivity' => { 89 => 0x14, 90 => 0x502 }, 'aisubjecttrackingmode' => { 330 => 0x309 }, - 'album' => { 407 => ['albm',"\xa9alb"], 409 => 'album', 415 => ['albm',"\xa9alb"], 550 => 'album' }, - 'albumartist' => { 186 => 'WM/AlbumArtist', 407 => 'aART', 415 => 'albr' }, + 'album' => { 408 => ['albm',"\xa9alb"], 410 => 'album', 416 => ['albm',"\xa9alb"], 552 => 'album' }, + 'albumartist' => { 186 => 'WM/AlbumArtist', 408 => 'aART', 416 => 'albr' }, 'albumcoverurl' => { 186 => 'WM/AlbumCoverURL' }, - 'albumid' => { 407 => 'plID' }, + 'albumid' => { 408 => 'plID' }, 'albumtitle' => { 186 => 'WM/AlbumTitle' }, - 'alreadyapplied' => { 521 => 'AlreadyApplied', 523 => 'AlreadyApplied' }, - 'alternatetitle' => { 540 => 'alternateTitle' }, - 'alternatetitlea-lang' => { 540 => [\'alternateTitle','alternateTitleA-lang'] }, - 'alternatetitlea-platform' => { 540 => [\'alternateTitle','alternateTitleA-platform'] }, - 'alternatetitletext' => { 540 => [\'alternateTitle','alternateTitleText'] }, + 'alreadyapplied' => { 523 => 'AlreadyApplied', 525 => 'AlreadyApplied' }, + 'alternatetitle' => { 542 => 'alternateTitle' }, + 'alternatetitlea-lang' => { 542 => [\'alternateTitle','alternateTitleA-lang'] }, + 'alternatetitlea-platform' => { 542 => [\'alternateTitle','alternateTitleA-platform'] }, + 'alternatetitletext' => { 542 => [\'alternateTitle','alternateTitleText'] }, 'altitude' => { 204 => 0x6 }, - 'alttapename' => { 550 => 'altTapeName' }, - 'alttextaccessibility' => { 534 => 'AltTextAccessibility' }, - 'alttimecode' => { 550 => 'altTimecode' }, - 'alttimecodetimeformat' => { 550 => [\'altTimecode','altTimecodeTimeFormat'] }, - 'alttimecodetimevalue' => { 550 => [\'altTimecode','altTimecodeTimeValue'] }, - 'alttimecodevalue' => { 550 => [\'altTimecode','altTimecodeValue'] }, + 'alttapename' => { 552 => 'altTapeName' }, + 'alttextaccessibility' => { 536 => 'AltTextAccessibility' }, + 'alttimecode' => { 552 => 'altTimecode' }, + 'alttimecodetimeformat' => { 552 => [\'altTimecode','altTimecodeTimeFormat'] }, + 'alttimecodetimevalue' => { 552 => [\'altTimecode','altTimecodeTimeValue'] }, + 'alttimecodevalue' => { 552 => [\'altTimecode','altTimecodeValue'] }, 'ambienceselection' => { 4 => 0x1 }, - 'ambientinfrared' => { 418 => 0x5c }, - 'ambientlight' => { 418 => 0x5e }, - 'ambienttemperature' => { 125 => 0x9400, 416 => 0x14, 417 => 0x46, 418 => 0x50, 482 => 0x4, 528 => 'Temperature' }, - 'ambienttemperaturefahrenheit' => { 416 => 0x13, 417 => 0x44, 418 => 0x4e }, + 'ambientinfrared' => { 420 => 0x5c }, + 'ambientlight' => { 420 => 0x5e }, + 'ambienttemperature' => { 125 => 0x9400, 418 => 0x14, 419 => 0x46, 420 => 0x50, 484 => 0x4, 530 => 'Temperature' }, + 'ambienttemperaturefahrenheit' => { 418 => 0x13, 419 => 0x44, 420 => 0x4e }, 'analogbalance' => { 125 => 0xc627 }, 'analogcaptureiso' => { 145 => 0x89e }, 'analogisotable' => { 145 => 0x89d }, - 'androidcapturefps' => { 409 => 'com.android.capture.fps' }, - 'androidmake' => { 409 => 'com.android.manufacturer' }, - 'androidmodel' => { 409 => 'com.android.model' }, - 'androidversion' => { 409 => 'com.android.version' }, + 'androidcapturefps' => { 410 => 'com.android.capture.fps' }, + 'androidmake' => { 410 => 'com.android.manufacturer' }, + 'androidmodel' => { 410 => 'com.android.model' }, + 'androidversion' => { 410 => 'com.android.version' }, 'angleadj' => { 109 => 0x10003, 115 => 0x8b }, - 'angleinforoll' => { 517 => 'AngleInfoRoll' }, - 'angleinfoyaw' => { 517 => 'AngleInfoYaw' }, - 'anti-blur' => { 456 => 0xb04b }, + 'angleinforoll' => { 519 => 'AngleInfoRoll' }, + 'angleinfoyaw' => { 519 => 'AngleInfoYaw' }, + 'anti-blur' => { 458 => 0xb04b }, 'antialiasstrength' => { 125 => 0xc632 }, 'antiflicker' => { 61 => 0x20 }, 'aperturelock' => { 310 => '38.2', 312 => '38.2', 313 => '38.2', 322 => '38.2', 323 => '38.2', 325 => 0xbc, 326 => 0xb8, 327 => 0xb8, 328 => 0xb8 }, - 'aperturemode' => { 415 => 'apmd' }, + 'aperturemode' => { 416 => 'apmd' }, 'aperturerange' => { 90 => 0x10d }, 'apertureringuse' => { 370 => '1.4' }, - 'aperturesetting' => { 191 => 0x7, 442 => 0x30, 443 => 0x29, 444 => 0x1 }, - 'aperturevalue' => { 99 => 0x2, 125 => 0x9202, 335 => 0x1002, 399 => 0x401, 527 => 'ApertureValue' }, - 'appinfo' => { 497 => 'AppInfo' }, - 'appinfoapplication' => { 497 => [\'AppInfo','AppInfoApplication'] }, - 'appinfoitemuri' => { 497 => [\'AppInfo','AppInfoItemURI'] }, - 'appinfoversion' => { 497 => [\'AppInfo','AppInfoVersion'] }, + 'aperturesetting' => { 191 => 0x7, 444 => 0x30, 445 => 0x29, 446 => 0x1 }, + 'aperturevalue' => { 99 => 0x2, 125 => 0x9202, 335 => 0x1002, 399 => 0x401, 529 => 'ApertureValue' }, + 'appinfo' => { 499 => 'AppInfo' }, + 'appinfoapplication' => { 499 => [\'AppInfo','AppInfoApplication'] }, + 'appinfoitemuri' => { 499 => [\'AppInfo','AppInfoItemURI'] }, + 'appinfoversion' => { 499 => [\'AppInfo','AppInfoVersion'] }, 'apple_0x004e' => { 1 => 0x4e }, 'apple_0x004f' => { 1 => 0x4f }, 'applekeywords' => { 339 => 'AAPL:Keywords' }, - 'applephotosvariationidentifier' => { 409 => 'apple.photos.variation-identifier' }, - 'applestoreaccount' => { 407 => 'apID' }, - 'applestoreaccounttype' => { 407 => 'akID' }, - 'applestorecatalogid' => { 407 => 'cnID' }, - 'applestorecountry' => { 407 => 'sfID' }, + 'applephotosvariationidentifier' => { 410 => 'apple.photos.variation-identifier' }, + 'applestoreaccount' => { 408 => 'apID' }, + 'applestoreaccounttype' => { 408 => 'akID' }, + 'applestorecatalogid' => { 408 => 'cnID' }, + 'applestorecountry' => { 408 => 'sfID' }, 'applicationkeystring' => { 145 => 0x400 }, 'applicationnotes' => { 125 => 0x2bc, 359 => 0x2bc }, 'applicationrecordversion' => { 138 => 0x0 }, 'applyautomatically' => { 344 => 'ApplyAutomatically' }, 'applyshootingmeteringmode' => { 90 => 0x10e }, - 'approved' => { 529 => 'Approved' }, - 'approvedby' => { 529 => 'ApprovedBy' }, + 'approved' => { 531 => 'Approved' }, + 'approvedby' => { 531 => 'ApprovedBy' }, 'approximatefnumber' => { 349 => 0x313, 356 => 0x3406 }, - 'approximatefocusdistance' => { 518 => 'ApproximateFocusDistance' }, - 'appversion' => { 533 => 'AppVersion' }, - 'aps-csizecapture' => { 475 => 0x114, 476 => [0x114,0x1eb,0x1ee,0x21a,0x21c] }, + 'approximatefocusdistance' => { 520 => 'ApproximateFocusDistance' }, + 'appversion' => { 535 => 'AppVersion' }, + 'aps-csizecapture' => { 477 => 0x114, 478 => [0x114,0x1eb,0x1ee,0x21a,0x21c] }, 'aquahsl' => { 109 => 0x20914 }, 'armidentifier' => { 139 => 0x78 }, 'armversion' => { 139 => 0x7a }, - 'arranger' => { 407 => "\xa9arg", 415 => "\xa9arg" }, - 'arrangerkeywords' => { 415 => "\xa9ark" }, - 'artdirector' => { 407 => "\xa9ard" }, + 'arranger' => { 408 => "\xa9arg", 416 => "\xa9arg" }, + 'arrangerkeywords' => { 416 => "\xa9ark" }, + 'artdirector' => { 408 => "\xa9ard" }, 'artfilter' => { 330 => 0x529 }, 'artfiltereffect' => { 330 => 0x52f }, - 'artist' => { 125 => 0x13b, 343 => 'Artist', 359 => 0x13b, 390 => 0x22e, 407 => "\xa9ART", 409 => 'artist', 415 => "\xa9ART", 546 => 'Artist', 550 => 'artist' }, - 'artistid' => { 407 => 'atID' }, + 'artist' => { 125 => 0x13b, 343 => 'Artist', 359 => 0x13b, 390 => 0x22e, 408 => "\xa9ART", 410 => 'artist', 416 => "\xa9ART", 548 => 'Artist', 552 => 'artist' }, + 'artistid' => { 408 => 'atID' }, 'artmode' => { 119 => 0x301b }, 'artmodeparameters' => { 119 => 0x310b }, - 'artwork' => { 409 => 'artwork' }, - 'artworkcircadatecreated' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCircaDateCreated'] }, - 'artworkcontentdescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOContentDescription'] }, - 'artworkcontributiondescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOContributionDescription'] }, - 'artworkcopyrightnotice' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCopyrightNotice'] }, - 'artworkcopyrightownerid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerId'] }, - 'artworkcopyrightownername' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerName'] }, - 'artworkcreator' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCreator'] }, - 'artworkcreatorid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCreatorId'] }, - 'artworkdatecreated' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAODateCreated'] }, - 'artworklicensorid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorId'] }, - 'artworklicensorname' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorName'] }, - 'artworkorobject' => { 535 => 'ArtworkOrObject' }, - 'artworkphysicaldescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOPhysicalDescription'] }, - 'artworksource' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSource'] }, - 'artworksourceinventoryno' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvNo'] }, - 'artworksourceinvurl' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvURL'] }, - 'artworkstyleperiod' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOStylePeriod'] }, - 'artworktitle' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOTitle'] }, + 'artwork' => { 410 => 'artwork' }, + 'artworkcircadatecreated' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCircaDateCreated'] }, + 'artworkcontentdescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOContentDescription'] }, + 'artworkcontributiondescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOContributionDescription'] }, + 'artworkcopyrightnotice' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCopyrightNotice'] }, + 'artworkcopyrightownerid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerId'] }, + 'artworkcopyrightownername' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerName'] }, + 'artworkcreator' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCreator'] }, + 'artworkcreatorid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCreatorId'] }, + 'artworkdatecreated' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAODateCreated'] }, + 'artworklicensorid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorId'] }, + 'artworklicensorname' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorName'] }, + 'artworkorobject' => { 537 => 'ArtworkOrObject' }, + 'artworkphysicaldescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOPhysicalDescription'] }, + 'artworksource' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSource'] }, + 'artworksourceinventoryno' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvNo'] }, + 'artworksourceinvurl' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvURL'] }, + 'artworkstyleperiod' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOStylePeriod'] }, + 'artworktitle' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOTitle'] }, 'aspectframe' => { 334 => 0x1113 }, - 'aspectratio' => { 5 => 0x0, 334 => 0x1112, 390 => 0x80, 442 => 0x55, 443 => 0x55, 444 => 0xa, 469 => [0x192c,0x1a88], 470 => 0x192c, 471 => 0x1958, 472 => 0x192c, 473 => 0x188c }, - 'assetid' => { 509 => 'AssetID' }, + 'aspectratio' => { 5 => 0x0, 334 => 0x1112, 390 => 0x80, 444 => 0x55, 445 => 0x55, 446 => 0xa, 471 => [0x192c,0x1a88], 472 => 0x192c, 473 => 0x1958, 474 => 0x192c, 475 => 0x188c }, + 'assetid' => { 511 => 'AssetID' }, 'asshoticcprofile' => { 125 => 0xc68f }, 'asshotneutral' => { 125 => 0xc628 }, 'asshotpreprofilematrix' => { 125 => 0xc690 }, @@ -1093,44 +1096,44 @@ my %tagLookup = ( 'assignremotefnbutton' => { 310 => '54.1', 322 => '51.1' }, 'assistbuttonfunction' => { 88 => 0xd }, 'atcaptureusercrop' => { 145 => 0x943 }, - 'attributionname' => { 519 => 'attributionName' }, - 'attributionurl' => { 519 => 'attributionURL' }, + 'attributionname' => { 521 => 'attributionName' }, + 'attributionurl' => { 521 => 'attributionURL' }, 'audio' => { 354 => 0x20 }, - 'audiobitrate' => { 72 => 0x6c, 535 => 'audioBitRate' }, - 'audiobitratemode' => { 535 => 'audioBitRateMode' }, - 'audiobitspersample' => { 535 => 'audioBitsPerSample' }, + 'audiobitrate' => { 72 => 0x6c, 537 => 'audioBitRate' }, + 'audiobitratemode' => { 537 => 'audioBitRateMode' }, + 'audiobitspersample' => { 537 => 'audioBitsPerSample' }, 'audiobutton' => { 327 => 0x17b, 328 => 0x193 }, 'audiobuttonplaybackmode' => { 327 => 0x1b9, 328 => 0x1d1 }, - 'audiochannelcount' => { 535 => 'audioChannelCount' }, + 'audiochannelcount' => { 537 => 'audioChannelCount' }, 'audiochannels' => { 72 => 0x70 }, - 'audiochanneltype' => { 550 => 'audioChannelType' }, + 'audiochanneltype' => { 552 => 'audioChannelType' }, 'audiocompression' => { 90 => 0x816, 162 => 'Compression' }, - 'audiocompressor' => { 550 => 'audioCompressor' }, - 'audiodata' => { 500 => 'Data' }, + 'audiocompressor' => { 552 => 'audioCompressor' }, + 'audiodata' => { 502 => 'Data' }, 'audioduration' => { 138 => 0x99 }, - 'audiogain' => { 409 => 'player.movie.audio.gain' }, - 'audiomimetype' => { 500 => 'Mime' }, - 'audiomoddate' => { 550 => 'audioModDate' }, + 'audiogain' => { 407 => 'player.movie.audio.gain', 410 => 'player.movie.audio.gain' }, + 'audiomimetype' => { 502 => 'Mime' }, + 'audiomoddate' => { 552 => 'audioModDate' }, 'audiooutcue' => { 138 => 0x9a }, - 'audiosamplerate' => { 72 => 0x6e, 550 => 'audioSampleRate' }, - 'audiosampletype' => { 550 => 'audioSampleType' }, + 'audiosamplerate' => { 72 => 0x6e, 552 => 'audioSampleRate' }, + 'audiosampletype' => { 552 => 'audioSampleType' }, 'audiosamplingrate' => { 138 => 0x97 }, 'audiosamplingresolution' => { 138 => 0x98 }, 'audiotype' => { 138 => 0x96 }, - 'author' => { 164 => 'Author', 339 => 'Author', 343 => 'Author', 406 => 'Author', 407 => ['auth',"\xa9aut"], 409 => 'author', 415 => 'auth', 515 => 'author', 537 => 'Author', 548 => 'Author' }, - 'authorsposition' => { 538 => 'AuthorsPosition' }, + 'author' => { 164 => 'Author', 339 => 'Author', 343 => 'Author', 406 => 'Author', 408 => ['auth',"\xa9aut"], 410 => 'author', 416 => 'auth', 517 => 'author', 539 => 'Author', 550 => 'Author' }, + 'authorsposition' => { 540 => 'AuthorsPosition' }, 'authorurl' => { 186 => 'WM/AuthorURL' }, 'autoafpointcolortracking' => { 90 => 0x51c }, 'autoafpointseleositraf' => { 2 => 0xa }, 'autoaperture' => { 380 => '0.1' }, - 'autobracket' => { 432 => 0x19 }, - 'autobracketing' => { 133 => 0x1100, 390 => 0x18, 422 => 0x1007 }, + 'autobracket' => { 434 => 0x19 }, + 'autobracketing' => { 133 => 0x1100, 390 => 0x18, 424 => 0x1007 }, 'autobracketingmode' => { 321 => '12.3' }, 'autobracketingset' => { 321 => '12.1' }, 'autobracketmodem' => { 309 => '21.2', 310 => '13.3', 312 => '13.2', 313 => '13.2', 318 => '26.2', 322 => '13.3', 323 => '13.2', 325 => 0x63, 326 => 0x5f, 327 => 0x5f, 328 => 0x5f }, 'autobracketorder' => { 191 => 0x43, 309 => '21.3', 310 => '13.2', 312 => '13.1', 313 => '13.1', 318 => '26.3', 319 => '12.2', 320 => '2.2', 321 => '12.2', 322 => '13.2', 323 => '13.1', 324 => '13.2', 325 => 0x65, 326 => 0x61, 327 => 0x61, 328 => 0x61 }, 'autobracketset' => { 309 => '21.1', 310 => '13.1', 314 => '11.1', 315 => '12.1', 316 => '12.1', 318 => '26.1', 319 => '12.1', 320 => '2.1', 322 => '13.1', 324 => '13.1' }, - 'autobrightness' => { 521 => 'AutoBrightness', 523 => 'AutoBrightness' }, + 'autobrightness' => { 523 => 'AutoBrightness', 525 => 'AutoBrightness' }, 'autocapturecriteria' => { 203 => 0x1 }, 'autocapturecriteriamotiondirection' => { 203 => 0x5f }, 'autocapturecriteriamotionsize' => { 203 => 0x64 }, @@ -1143,10 +1146,10 @@ my %tagLookup = ( 'autocapturepreset' => { 253 => 0x746 }, 'autocapturerecordingtime' => { 203 => 0x37 }, 'autocapturewaittime' => { 203 => 0x38 }, - 'autocontrast' => { 521 => 'AutoContrast', 523 => 'AutoContrast' }, + 'autocontrast' => { 523 => 'AutoContrast', 525 => 'AutoContrast' }, 'autodistortioncontrol' => { 217 => 0x4, 247 => 0x2cf, 248 => 0x143 }, 'autodynamicrange' => { 133 => 0x140b }, - 'autoexposure' => { 521 => 'AutoExposure', 523 => 'AutoExposure' }, + 'autoexposure' => { 523 => 'AutoExposure', 525 => 'AutoExposure' }, 'autoexposurebracketing' => { 82 => 0x10 }, 'autoflashisosensitivity' => { 312 => '38.5', 313 => '38.5', 323 => '38.5', 325 => 0x5f, 326 => 0x5b, 327 => 0x5b, 328 => 0x5b }, 'autofocus' => { 333 => 0x209 }, @@ -1155,18 +1158,18 @@ my %tagLookup = ( 'autoiso' => { 82 => 0x1, 119 => 0x3008, 247 => 0x288, 249 => 0x152, 250 => 0x152, 251 => 0x142, 252 => 0x156, 253 => 0x156, 311 => '1.1', 320 => '1.1' }, 'autoisomax' => { 311 => '1.2', 320 => '1.2' }, 'autoisominshutterspeed' => { 311 => '1.3', 320 => '1.3' }, - 'autolateralca' => { 521 => 'AutoLateralCA', 523 => 'AutoLateralCA' }, + 'autolateralca' => { 523 => 'AutoLateralCA', 525 => 'AutoLateralCA' }, 'autolightingoptimizer' => { 16 => 0xbe, 17 => 0xbf, 20 => 0xbf, 67 => 0x2, 90 => 0x204, 109 => 0x20500, 115 => 0x6f }, 'autolightingoptimizeron' => { 109 => '0x20500.0', 115 => 0x6e }, - 'autoportraitframed' => { 456 => 0x2016 }, + 'autoportraitframed' => { 458 => 0x2016 }, 'autoredeye' => { 302 => 0xfe28a44f }, 'autorotate' => { 82 => 0x1b }, - 'autoshadows' => { 521 => 'AutoShadows', 523 => 'AutoShadows' }, - 'autotone' => { 521 => 'AutoTone', 523 => 'AutoTone' }, - 'autotonedigest' => { 521 => 'AutoToneDigest', 523 => 'AutoToneDigest' }, - 'autotonedigestnosat' => { 521 => 'AutoToneDigestNoSat', 523 => 'AutoToneDigestNoSat' }, - 'autowhiteversion' => { 521 => 'AutoWhiteVersion', 523 => 'AutoWhiteVersion' }, - 'auxiliaryimagetype' => { 516 => 'AuxiliaryImageType' }, + 'autoshadows' => { 523 => 'AutoShadows', 525 => 'AutoShadows' }, + 'autotone' => { 523 => 'AutoTone', 525 => 'AutoTone' }, + 'autotonedigest' => { 523 => 'AutoToneDigest', 525 => 'AutoToneDigest' }, + 'autotonedigestnosat' => { 523 => 'AutoToneDigestNoSat', 525 => 'AutoToneDigestNoSat' }, + 'autowhiteversion' => { 523 => 'AutoWhiteVersion', 525 => 'AutoWhiteVersion' }, + 'auxiliaryimagetype' => { 518 => 'AuxiliaryImageType' }, 'auxiliarylens' => { 243 => 0x82 }, 'avaperturesetting' => { 370 => 0x13 }, 'averageblacklevel' => { 49 => 0xe7, 51 => 0xfb, 52 => 0x114, 53 => 0x146 }, @@ -1175,10 +1178,10 @@ my %tagLookup = ( 'azimuth' => { 172 => 'Azimuth' }, 'babyage' => { 354 => [0x8010,0x33] }, 'babyname' => { 354 => 0x66 }, - 'backgroundalpha' => { 545 => 'bgalpha' }, - 'balance' => { 409 => 'player.movie.audio.balance' }, + 'backgroundalpha' => { 547 => 'bgalpha' }, + 'balance' => { 407 => 'player.movie.audio.balance', 410 => 'player.movie.audio.balance' }, 'baseexposurecompensation' => { 370 => 0x15 }, - 'baseiso' => { 82 => 0x2, 103 => 0x101c, 145 => 0x903, 356 => 0x312a, 488 => 0x6 }, + 'baseiso' => { 82 => 0x2, 103 => 0x101c, 145 => 0x903, 356 => 0x312a, 490 => 0x6 }, 'baseisodaylight' => { 145 => 0x910 }, 'baseisoflash' => { 145 => 0x913 }, 'baseisofluorescent' => { 145 => 0x912 }, @@ -1187,31 +1190,31 @@ my %tagLookup = ( 'baselineexposureoffset' => { 125 => 0xc7a5 }, 'baselinenoise' => { 125 => 0xc62b }, 'baselinesharpness' => { 125 => 0xc62c }, - 'baserenditionishdr' => { 532 => 'BaseRenditionIsHDR' }, - 'baseurl' => { 548 => 'BaseURL' }, - 'bass' => { 409 => 'player.movie.audio.bass' }, - 'batterylevel' => { 354 => 0x38, 442 => 0x51, 446 => 0xc, 447 => 0x4, 448 => 0x4, 489 => 0x7, 490 => 0x5 }, - 'batterylevel2' => { 490 => 0x7 }, - 'batterylevelgrip1' => { 489 => 0x6 }, - 'batterylevelgrip2' => { 489 => 0x8 }, + 'baserenditionishdr' => { 534 => 'BaseRenditionIsHDR' }, + 'baseurl' => { 550 => 'BaseURL' }, + 'bass' => { 407 => 'player.movie.audio.bass', 410 => 'player.movie.audio.bass' }, + 'batterylevel' => { 354 => 0x38, 444 => 0x51, 448 => 0xc, 449 => 0x4, 450 => 0x4, 491 => 0x7, 492 => 0x5 }, + 'batterylevel2' => { 492 => 0x7 }, + 'batterylevelgrip1' => { 491 => 0x6 }, + 'batterylevelgrip2' => { 491 => 0x8 }, 'batteryorder' => { 309 => '12.5', 318 => '13.2', 319 => '2.1', 322 => '3.1' }, - 'batterystate' => { 191 => 0x60, 442 => 0x50, 448 => 0x14 }, - 'batterytemperature' => { 446 => 0x1, 448 => 0x2, 489 => 0x5 }, - 'batterytype' => { 69 => 0x38, 418 => 0x66 }, - 'batteryunknown' => { 446 => 0x2, 448 => 0x0 }, - 'batteryvoltage' => { 145 => 0x408, 416 => 0x2a, 417 => 0x49, 418 => 0x62, 446 => 0x8 }, - 'batteryvoltage1' => { 448 => 0x6 }, - 'batteryvoltage2' => { 448 => 0x8 }, - 'batteryvoltageavg' => { 418 => 0x64 }, + 'batterystate' => { 191 => 0x60, 444 => 0x50, 450 => 0x14 }, + 'batterytemperature' => { 448 => 0x1, 450 => 0x2, 491 => 0x5 }, + 'batterytype' => { 69 => 0x38, 420 => 0x66 }, + 'batteryunknown' => { 448 => 0x2, 450 => 0x0 }, + 'batteryvoltage' => { 145 => 0x408, 418 => 0x2a, 419 => 0x49, 420 => 0x62, 448 => 0x8 }, + 'batteryvoltage1' => { 450 => 0x6 }, + 'batteryvoltage2' => { 450 => 0x8 }, + 'batteryvoltageavg' => { 420 => 0x64 }, 'bayergreensplit' => { 125 => 0xc62d }, 'bayerpattern' => { 144 => 0xf902, 195 => 0x17 }, - 'beatsperminute' => { 407 => 'tmpo' }, - 'beatspliceparams' => { 550 => 'beatSpliceParams' }, - 'beatspliceparamsriseindecibel' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInDecibel'] }, - 'beatspliceparamsriseintimeduration' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDuration'] }, - 'beatspliceparamsriseintimedurationscale' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationScale'] }, - 'beatspliceparamsriseintimedurationvalue' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationValue'] }, - 'beatspliceparamsusefilebeatsmarker' => { 550 => [\'beatSpliceParams','beatSpliceParamsUseFileBeatsMarker'] }, + 'beatsperminute' => { 408 => 'tmpo' }, + 'beatspliceparams' => { 552 => 'beatSpliceParams' }, + 'beatspliceparamsriseindecibel' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInDecibel'] }, + 'beatspliceparamsriseintimeduration' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDuration'] }, + 'beatspliceparamsriseintimedurationscale' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationScale'] }, + 'beatspliceparamsriseintimedurationvalue' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationValue'] }, + 'beatspliceparamsusefilebeatsmarker' => { 552 => [\'beatSpliceParams','beatSpliceParamsUseFileBeatsMarker'] }, 'beep' => { 309 => '13.1', 310 => '5.4', 311 => '0.1', 314 => '2.1', 315 => '3.1', 316 => '3.1', 318 => '10.1', 320 => '0.1', 322 => '5.5', 324 => '4.1' }, 'beeppitch' => { 319 => '3.1' }, 'beepvolume' => { 319 => '4.5' }, @@ -1219,9 +1222,9 @@ my %tagLookup = ( 'bestshotmode' => { 119 => 0x3007 }, 'bitdepth' => { 169 => 'BitDepth', 195 => 0x11, 268 => 0x41 }, 'bitspercomponent' => { 140 => 0x87 }, - 'bitspersample' => { 125 => 0x102, 359 => 0xa, 546 => 'BitsPerSample' }, + 'bitspersample' => { 125 => 0x102, 359 => 0xa, 548 => 'BitsPerSample' }, 'blackacquirerows' => { 145 => 0x18ba }, - 'blacklevel' => { 125 => [0x7310,0xc61a], 214 => 0x20, 243 => 0x3d, 335 => [0x401,0x1012], 399 => 0x21d, 463 => [0x7300,0x7310] }, + 'blacklevel' => { 125 => [0x7310,0xc61a], 214 => 0x20, 243 => 0x3d, 335 => [0x401,0x1012], 399 => 0x21d, 465 => [0x7300,0x7310] }, 'blacklevel2' => { 334 => 0x600, 338 => 0x600 }, 'blacklevelblue' => { 359 => 0x1e }, 'blacklevelbottom' => { 145 => 0x3f0 }, @@ -1236,19 +1239,19 @@ my %tagLookup = ( 'blacklevels' => { 38 => 0x1d }, 'blackleveltop' => { 145 => 0x3ef }, 'blackpoint' => { 390 => 0x200 }, - 'blacks2012' => { 521 => 'Blacks2012', 523 => 'Blacks2012' }, - 'blacksadj' => { 493 => 0x9018 }, + 'blacks2012' => { 523 => 'Blacks2012', 525 => 'Blacks2012' }, + 'blacksadj' => { 495 => 0x9018 }, 'bleachbypasstoning' => { 390 => 0x7f }, 'blockshotafresponse' => { 312 => '1.5', 313 => '1.5', 323 => '1.5', 325 => 0x7, 326 => 0x7, 327 => 0x7, 328 => 0x7 }, - 'blogtitle' => { 540 => 'blogTitle' }, - 'blogurl' => { 540 => 'blogURL' }, + 'blogtitle' => { 542 => 'blogTitle' }, + 'blogurl' => { 542 => 'blogURL' }, 'bluebalance' => { 335 => 0x1018, 359 => 0x12, 390 => 0x1b }, 'bluecurvelimits' => { 114 => 0x1fe }, 'bluecurvepoints' => { 113 => 0x79, 114 => 0x1d4 }, 'bluehsl' => { 109 => 0x20915 }, - 'bluehue' => { 521 => 'BlueHue', 523 => 'BlueHue' }, - 'bluesaturation' => { 521 => 'BlueSaturation', 523 => 'BlueSaturation' }, - 'bluratinfinity' => { 505 => 'BlurAtInfinity' }, + 'bluehue' => { 523 => 'BlueHue', 525 => 'BlueHue' }, + 'bluesaturation' => { 523 => 'BlueSaturation', 525 => 'BlueSaturation' }, + 'bluratinfinity' => { 507 => 'BlurAtInfinity' }, 'blurcontrol' => { 390 => 0x82 }, 'blurwarning' => { 133 => 0x1300 }, 'bodybatteryadload' => { 368 => 0x3 }, @@ -1260,11 +1263,11 @@ my %tagLookup = ( 'bodybatteryvoltage2' => { 368 => 0x4 }, 'bodybatteryvoltage3' => { 368 => 0x6 }, 'bodybatteryvoltage4' => { 368 => 0x8 }, - 'bodyfirmware' => { 423 => 0x0 }, + 'bodyfirmware' => { 425 => 0x0 }, 'bodyfirmwareversion' => { 331 => 0x104, 332 => 0x100, 335 => 0x104 }, - 'bodyserialnumber' => { 423 => 0x10 }, - 'bookedition' => { 540 => 'bookEdition' }, - 'bootloaderversion' => { 417 => 0x26 }, + 'bodyserialnumber' => { 425 => 0x10 }, + 'bookedition' => { 542 => 'bookEdition' }, + 'bootloaderversion' => { 419 => 0x26 }, 'bracketbutton' => { 250 => 0x808, 253 => 0x80c }, 'bracketbuttonplaybackmode' => { 250 => 0x810, 253 => 0x816 }, 'bracketincrement' => { 247 => 0x34a, 249 => 0x22e, 250 => 0x22e, 251 => 0x21a, 252 => 0x22e, 253 => 0x22e }, @@ -1273,22 +1276,22 @@ my %tagLookup = ( 'bracketsequence' => { 119 => 0x301d }, 'bracketset' => { 247 => 0x346, 249 => 0x22a, 250 => 0x22a, 251 => 0x216, 252 => 0x22a, 253 => 0x22a }, 'bracketsettings' => { 354 => 0x45 }, - 'bracketshotnumber' => { 61 => 0x5, 370 => 0x9, 453 => 0x2b }, - 'bracketshotnumber2' => { 453 => 0x2d }, + 'bracketshotnumber' => { 61 => 0x5, 370 => 0x9, 455 => 0x2b }, + 'bracketshotnumber2' => { 455 => 0x2d }, 'bracketstep' => { 188 => 0xe }, 'bracketvalue' => { 61 => 0x4 }, - 'brightness' => { 125 => 0xfe53, 163 => 'Brightness', 183 => 'Brightness', 188 => 0x2c, 260 => 0x34, 261 => 0x39, 262 => 0x41, 409 => 'player.movie.visual.brightness', 416 => 0x25, 418 => 0x54, 442 => 0x22, 456 => 0x2007, 521 => 'Brightness', 523 => 'Brightness' }, - 'brightnessadj' => { 114 => 0x114, 295 => 0x0, 305 => 0x2d, 493 => 0x8018 }, - 'brightnessvalue' => { 125 => 0x9203, 194 => [0x691,0x49c3], 335 => 0x1003, 461 => 0x1e, 465 => 0x1140, 466 => 0x1140, 467 => 0x111c, 468 => 0x1198, 469 => 0x1174, 470 => 0x102c, 471 => 0x224, 472 => 0x224, 473 => 0x219, 527 => 'BrightnessValue' }, + 'brightness' => { 125 => 0xfe53, 163 => 'Brightness', 183 => 'Brightness', 188 => 0x2c, 260 => 0x34, 261 => 0x39, 262 => 0x41, 410 => 'player.movie.visual.brightness', 418 => 0x25, 420 => 0x54, 444 => 0x22, 458 => 0x2007, 523 => 'Brightness', 525 => 'Brightness' }, + 'brightnessadj' => { 114 => 0x114, 295 => 0x0, 305 => 0x2d, 495 => 0x8018 }, + 'brightnessvalue' => { 125 => 0x9203, 194 => [0x691,0x49c3], 335 => 0x1003, 463 => 0x1e, 467 => 0x1140, 468 => 0x1140, 469 => 0x111c, 470 => 0x1198, 471 => 0x1174, 472 => 0x102c, 473 => 0x224, 474 => 0x224, 475 => 0x219, 529 => 'BrightnessValue' }, 'buildnumber' => { 198 => 0x5500 }, 'bulbduration' => { 82 => 0x18 }, 'burstcount' => { 145 => 0x40d }, 'burstgroupid' => { 245 => 0x4 }, - 'burstid' => { 501 => 'BurstID' }, + 'burstid' => { 503 => 'BurstID' }, 'burstmode' => { 147 => 0xa, 354 => 0x2a }, 'burstmode2' => { 147 => 0x18 }, - 'burstprimary' => { 501 => 'BurstPrimary' }, - 'burstshot' => { 432 => 0x34 }, + 'burstprimary' => { 503 => 'BurstPrimary' }, + 'burstshot' => { 434 => 0x34 }, 'burstspeed' => { 354 => 0x77 }, 'burstuuid' => { 1 => 0xb }, 'buttonfunctioncontroloff' => { 90 => 0x70a }, @@ -1298,27 +1301,27 @@ my %tagLookup = ( 'bwmode' => { 335 => 0x203 }, 'by-line' => { 138 => 0x50 }, 'by-linetitle' => { 138 => 0x55 }, - 'bytecount' => { 540 => 'byteCount' }, + 'bytecount' => { 542 => 'byteCount' }, 'c14configuration' => { 145 => 0x1964 }, 'cacheversion' => { 125 => 0xc7aa }, 'calibratedfocallength' => { 122 => 'CalibratedFocalLength' }, 'calibratedopticalcenterx' => { 122 => 'CalibratedOpticalCenterX' }, 'calibratedopticalcentery' => { 122 => 'CalibratedOpticalCenterY' }, - 'calibration' => { 432 => [0x24,0x30] }, + 'calibration' => { 434 => [0x24,0x30] }, 'calibrationhistory' => { 145 => 0x9c9 }, 'calibrationilluminant1' => { 125 => 0xc65a }, 'calibrationilluminant2' => { 125 => 0xc65b }, 'calibrationilluminant3' => { 125 => 0xcd31 }, 'calibrationversion' => { 145 => 0x9c6 }, - 'callforimage' => { 509 => 'CallForImage' }, - 'camera' => { 497 => [\'Cameras','CamerasCamera'] }, - 'cameraangle' => { 415 => 'angl', 550 => 'cameraAngle' }, - 'cameraappinfo' => { 497 => [\'Cameras','CamerasCameraAppInfo'] }, - 'cameraappinfoapplication' => { 497 => [\'Cameras','CamerasCameraAppInfoApplication'] }, - 'cameraappinfoitemuri' => { 497 => [\'Cameras','CamerasCameraAppInfoItemURI'] }, - 'cameraappinfoversion' => { 497 => [\'Cameras','CamerasCameraAppInfoVersion'] }, - 'cameraburstid' => { 503 => 'CameraBurstID' }, - 'cameracalibration' => { 432 => 0x11f }, + 'callforimage' => { 511 => 'CallForImage' }, + 'camera' => { 499 => [\'Cameras','CamerasCamera'] }, + 'cameraangle' => { 416 => 'angl', 552 => 'cameraAngle' }, + 'cameraappinfo' => { 499 => [\'Cameras','CamerasCameraAppInfo'] }, + 'cameraappinfoapplication' => { 499 => [\'Cameras','CamerasCameraAppInfoApplication'] }, + 'cameraappinfoitemuri' => { 499 => [\'Cameras','CamerasCameraAppInfoItemURI'] }, + 'cameraappinfoversion' => { 499 => [\'Cameras','CamerasCameraAppInfoVersion'] }, + 'cameraburstid' => { 505 => 'CameraBurstID' }, + 'cameracalibration' => { 434 => 0x11f }, 'cameracalibration1' => { 125 => 0xc623 }, 'cameracalibration2' => { 125 => 0xc624 }, 'cameracalibration3' => { 125 => 0xcd32 }, @@ -1338,95 +1341,95 @@ my %tagLookup = ( 'cameracolorcalibration13' => { 39 => 0x30, 40 => 0x3c }, 'cameracolorcalibration14' => { 39 => 0x34, 40 => 0x41 }, 'cameracolorcalibration15' => { 39 => 0x38, 40 => 0x46 }, - 'cameradepthmap' => { 497 => [\'Cameras','CamerasCameraDepthMap'] }, - 'cameradepthmapconfidenceuri' => { 497 => [\'Cameras','CamerasCameraDepthMapConfidenceURI'] }, - 'cameradepthmapdepthuri' => { 497 => [\'Cameras','CamerasCameraDepthMapDepthURI'] }, - 'cameradepthmapfar' => { 497 => [\'Cameras','CamerasCameraDepthMapFar'] }, - 'cameradepthmapfocaltable' => { 497 => [\'Cameras','CamerasCameraDepthMapFocalTable'] }, - 'cameradepthmapfocaltableentrycount' => { 497 => [\'Cameras','CamerasCameraDepthMapFocalTableEntryCount'] }, - 'cameradepthmapformat' => { 497 => [\'Cameras','CamerasCameraDepthMapFormat'] }, - 'cameradepthmapitemsemantic' => { 497 => [\'Cameras','CamerasCameraDepthMapItemSemantic'] }, - 'cameradepthmapmeasuretype' => { 497 => [\'Cameras','CamerasCameraDepthMapMeasureType'] }, - 'cameradepthmapnear' => { 497 => [\'Cameras','CamerasCameraDepthMapNear'] }, - 'cameradepthmapsoftware' => { 497 => [\'Cameras','CamerasCameraDepthMapSoftware'] }, - 'cameradepthmapunits' => { 497 => [\'Cameras','CamerasCameraDepthMapUnits'] }, - 'cameradirection' => { 409 => 'direction.facing' }, - 'camerae-mountversion' => { 492 => 0xb }, - 'cameraelevationangle' => { 125 => 0x9405, 528 => 'CameraElevationAngle' }, - 'camerafilename' => { 509 => 'CameraFilename' }, - 'camerafirmware' => { 125 => 0xa439, 528 => 'CameraFirmware' }, - 'cameraid' => { 335 => 0x209, 415 => 'cmid', 431 => 0x209 }, - 'cameraidentifier' => { 409 => 'camera.identifier' }, - 'cameraimage' => { 497 => [\'Cameras','CamerasCameraImage'] }, - 'cameraimageitemsemantic' => { 497 => [\'Cameras','CamerasCameraImageItemSemantic'] }, - 'cameraimageitemuri' => { 497 => [\'Cameras','CamerasCameraImageItemURI'] }, - 'cameraimagingmodel' => { 497 => [\'Cameras','CamerasCameraImagingModel'] }, - 'cameraimagingmodeldistortion' => { 497 => [\'Cameras','CamerasCameraImagingModelDistortion'] }, - 'cameraimagingmodeldistortioncount' => { 497 => [\'Cameras','CamerasCameraImagingModelDistortionCount'] }, - 'cameraimagingmodelfocallengthx' => { 497 => [\'Cameras','CamerasCameraImagingModelFocalLengthX'] }, - 'cameraimagingmodelfocallengthy' => { 497 => [\'Cameras','CamerasCameraImagingModelFocalLengthY'] }, - 'cameraimagingmodelimageheight' => { 497 => [\'Cameras','CamerasCameraImagingModelImageHeight'] }, - 'cameraimagingmodelimagewidth' => { 497 => [\'Cameras','CamerasCameraImagingModelImageWidth'] }, - 'cameraimagingmodelpixelaspectratio' => { 497 => [\'Cameras','CamerasCameraImagingModelPixelAspectRatio'] }, - 'cameraimagingmodelprincipalpointx' => { 497 => [\'Cameras','CamerasCameraImagingModelPrincipalPointX'] }, - 'cameraimagingmodelprincipalpointy' => { 497 => [\'Cameras','CamerasCameraImagingModelPrincipalPointY'] }, - 'cameraimagingmodelskew' => { 497 => [\'Cameras','CamerasCameraImagingModelSkew'] }, + 'cameradepthmap' => { 499 => [\'Cameras','CamerasCameraDepthMap'] }, + 'cameradepthmapconfidenceuri' => { 499 => [\'Cameras','CamerasCameraDepthMapConfidenceURI'] }, + 'cameradepthmapdepthuri' => { 499 => [\'Cameras','CamerasCameraDepthMapDepthURI'] }, + 'cameradepthmapfar' => { 499 => [\'Cameras','CamerasCameraDepthMapFar'] }, + 'cameradepthmapfocaltable' => { 499 => [\'Cameras','CamerasCameraDepthMapFocalTable'] }, + 'cameradepthmapfocaltableentrycount' => { 499 => [\'Cameras','CamerasCameraDepthMapFocalTableEntryCount'] }, + 'cameradepthmapformat' => { 499 => [\'Cameras','CamerasCameraDepthMapFormat'] }, + 'cameradepthmapitemsemantic' => { 499 => [\'Cameras','CamerasCameraDepthMapItemSemantic'] }, + 'cameradepthmapmeasuretype' => { 499 => [\'Cameras','CamerasCameraDepthMapMeasureType'] }, + 'cameradepthmapnear' => { 499 => [\'Cameras','CamerasCameraDepthMapNear'] }, + 'cameradepthmapsoftware' => { 499 => [\'Cameras','CamerasCameraDepthMapSoftware'] }, + 'cameradepthmapunits' => { 499 => [\'Cameras','CamerasCameraDepthMapUnits'] }, + 'cameradirection' => { 410 => 'direction.facing' }, + 'camerae-mountversion' => { 494 => 0xb }, + 'cameraelevationangle' => { 125 => 0x9405, 530 => 'CameraElevationAngle' }, + 'camerafilename' => { 511 => 'CameraFilename' }, + 'camerafirmware' => { 125 => 0xa439, 530 => 'CameraFirmware' }, + 'cameraid' => { 335 => 0x209, 416 => 'cmid', 433 => 0x209 }, + 'cameraidentifier' => { 417 => 'camera.identifier' }, + 'cameraimage' => { 499 => [\'Cameras','CamerasCameraImage'] }, + 'cameraimageitemsemantic' => { 499 => [\'Cameras','CamerasCameraImageItemSemantic'] }, + 'cameraimageitemuri' => { 499 => [\'Cameras','CamerasCameraImageItemURI'] }, + 'cameraimagingmodel' => { 499 => [\'Cameras','CamerasCameraImagingModel'] }, + 'cameraimagingmodeldistortion' => { 499 => [\'Cameras','CamerasCameraImagingModelDistortion'] }, + 'cameraimagingmodeldistortioncount' => { 499 => [\'Cameras','CamerasCameraImagingModelDistortionCount'] }, + 'cameraimagingmodelfocallengthx' => { 499 => [\'Cameras','CamerasCameraImagingModelFocalLengthX'] }, + 'cameraimagingmodelfocallengthy' => { 499 => [\'Cameras','CamerasCameraImagingModelFocalLengthY'] }, + 'cameraimagingmodelimageheight' => { 499 => [\'Cameras','CamerasCameraImagingModelImageHeight'] }, + 'cameraimagingmodelimagewidth' => { 499 => [\'Cameras','CamerasCameraImagingModelImageWidth'] }, + 'cameraimagingmodelpixelaspectratio' => { 499 => [\'Cameras','CamerasCameraImagingModelPixelAspectRatio'] }, + 'cameraimagingmodelprincipalpointx' => { 499 => [\'Cameras','CamerasCameraImagingModelPrincipalPointX'] }, + 'cameraimagingmodelprincipalpointy' => { 499 => [\'Cameras','CamerasCameraImagingModelPrincipalPointY'] }, + 'cameraimagingmodelskew' => { 499 => [\'Cameras','CamerasCameraImagingModelSkew'] }, 'cameraiso' => { 37 => 0x10 }, - 'cameralabel' => { 125 => 0xc7a1, 550 => 'cameraLabel' }, - 'cameralightestimate' => { 497 => [\'Cameras','CamerasCameraLightEstimate'] }, - 'cameralightestimatecolorcorrectionb' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionB'] }, - 'cameralightestimatecolorcorrectiong' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionG'] }, - 'cameralightestimatecolorcorrectionr' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionR'] }, - 'cameralightestimatepixelintensity' => { 497 => [\'Cameras','CamerasCameraLightEstimatePixelIntensity'] }, - 'cameramakemodel' => { 509 => 'CameraMakeModel' }, - 'cameramodel' => { 399 => 0x410, 550 => 'cameraModel' }, + 'cameralabel' => { 125 => 0xc7a1, 552 => 'cameraLabel' }, + 'cameralightestimate' => { 499 => [\'Cameras','CamerasCameraLightEstimate'] }, + 'cameralightestimatecolorcorrectionb' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionB'] }, + 'cameralightestimatecolorcorrectiong' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionG'] }, + 'cameralightestimatecolorcorrectionr' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionR'] }, + 'cameralightestimatepixelintensity' => { 499 => [\'Cameras','CamerasCameraLightEstimatePixelIntensity'] }, + 'cameramakemodel' => { 511 => 'CameraMakeModel' }, + 'cameramodel' => { 399 => 0x410, 552 => 'cameraModel' }, 'cameramodelid' => { 183 => 'CameraModelID' }, - 'cameramodelrestriction' => { 521 => 'CameraModelRestriction', 523 => 'CameraModelRestriction' }, - 'cameramotion' => { 409 => 'direction.motion' }, - 'cameramove' => { 550 => 'cameraMove' }, - 'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => [0x36,0x3a], 24 => 0x7d, 25 => 0x83, 26 => 0x84, 27 => 0x96, 28 => 0x35, 29 => 0x96, 354 => 0x8f, 389 => 0x1, 394 => 0x1, 399 => 0x100, 448 => [0x16,0x18], 479 => 0x28, 480 => 0x24, 481 => 0x29 }, + 'cameramodelrestriction' => { 523 => 'CameraModelRestriction', 525 => 'CameraModelRestriction' }, + 'cameramotion' => { 410 => 'direction.motion' }, + 'cameramove' => { 552 => 'cameraMove' }, + 'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => [0x36,0x3a], 24 => 0x7d, 25 => 0x83, 26 => 0x84, 27 => 0x96, 28 => 0x35, 29 => 0x96, 354 => 0x8f, 389 => 0x1, 394 => 0x1, 399 => 0x100, 450 => [0x16,0x18], 481 => 0x28, 482 => 0x24, 483 => 0x29 }, 'cameraowner' => { 148 => 0xc353 }, 'cameraparameters' => { 335 => 0x2050 }, 'camerapicturestyle' => { 28 => 0xaf }, - 'camerapitch' => { 121 => 0x9, 415 => "\xa9gpt" }, - 'camerapointcloud' => { 497 => [\'Cameras','CamerasCameraPointCloud'] }, - 'camerapointcloudmetric' => { 497 => [\'Cameras','CamerasCameraPointCloudMetric'] }, - 'camerapointcloudpointcloud' => { 497 => [\'Cameras','CamerasCameraPointCloudPointCloud'] }, - 'camerapointcloudpoints' => { 497 => [\'Cameras','CamerasCameraPointCloudPoints'] }, - 'camerapose' => { 497 => [\'Cameras','CamerasCameraPose'] }, - 'cameraposepositionx' => { 497 => [\'Cameras','CamerasCameraPosePositionX'] }, - 'cameraposepositiony' => { 497 => [\'Cameras','CamerasCameraPosePositionY'] }, - 'cameraposepositionz' => { 497 => [\'Cameras','CamerasCameraPosePositionZ'] }, - 'cameraposerotationw' => { 497 => [\'Cameras','CamerasCameraPoseRotationW'] }, - 'cameraposerotationx' => { 497 => [\'Cameras','CamerasCameraPoseRotationX'] }, - 'cameraposerotationy' => { 497 => [\'Cameras','CamerasCameraPoseRotationY'] }, - 'cameraposerotationz' => { 497 => [\'Cameras','CamerasCameraPoseRotationZ'] }, - 'cameraposetimestamp' => { 497 => [\'Cameras','CamerasCameraPoseTimestamp'] }, - 'cameraprofile' => { 521 => 'CameraProfile', 523 => 'CameraProfile' }, - 'cameraprofiledigest' => { 521 => 'CameraProfileDigest', 523 => 'CameraProfileDigest' }, - 'cameraprofiles' => { 538 => 'CameraProfiles' }, - 'cameraprofilesaperturevalue' => { 538 => [\'CameraProfiles','CameraProfilesApertureValue'] }, - 'cameraprofilesauthor' => { 538 => [\'CameraProfiles','CameraProfilesAuthor'] }, - 'cameraprofilesautoscale' => { 538 => [\'CameraProfiles','CameraProfilesAutoScale'] }, - 'cameraprofilescameraprettyname' => { 538 => [\'CameraProfiles','CameraProfilesCameraPrettyName'] }, - 'cameraprofilescamerarawprofile' => { 538 => [\'CameraProfiles','CameraProfilesCameraRawProfile'] }, - 'cameraprofilesfocallength' => { 538 => [\'CameraProfiles','CameraProfilesFocalLength'] }, - 'cameraprofilesfocusdistance' => { 538 => [\'CameraProfiles','CameraProfilesFocusDistance'] }, - 'cameraprofileslens' => { 538 => [\'CameraProfiles','CameraProfilesLens'] }, - 'cameraprofileslensprettyname' => { 538 => [\'CameraProfiles','CameraProfilesLensPrettyName'] }, - 'cameraprofilesmake' => { 538 => [\'CameraProfiles','CameraProfilesMake'] }, - 'cameraprofilesmodel' => { 538 => [\'CameraProfiles','CameraProfilesModel'] }, - 'cameraprofilesperspectivemodel' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModel'] }, - 'cameraprofilesperspectivemodelimagexcenter' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageXCenter'] }, - 'cameraprofilesperspectivemodelimageycenter' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageYCenter'] }, - 'cameraprofilesperspectivemodelradialdistortparam1' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam1'] }, - 'cameraprofilesperspectivemodelradialdistortparam2' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam2'] }, - 'cameraprofilesperspectivemodelradialdistortparam3' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam3'] }, - 'cameraprofilesperspectivemodelscalefactor' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelScaleFactor'] }, - 'cameraprofilesperspectivemodelversion' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelVersion'] }, - 'cameraprofilesprofilename' => { 538 => [\'CameraProfiles','CameraProfilesProfileName'] }, - 'cameraprofilessensorformatfactor' => { 538 => [\'CameraProfiles','CameraProfilesSensorFormatFactor'] }, - 'cameraprofilesuniquecameramodel' => { 538 => [\'CameraProfiles','CameraProfilesUniqueCameraModel'] }, + 'camerapitch' => { 121 => 0x9, 416 => "\xa9gpt" }, + 'camerapointcloud' => { 499 => [\'Cameras','CamerasCameraPointCloud'] }, + 'camerapointcloudmetric' => { 499 => [\'Cameras','CamerasCameraPointCloudMetric'] }, + 'camerapointcloudpointcloud' => { 499 => [\'Cameras','CamerasCameraPointCloudPointCloud'] }, + 'camerapointcloudpoints' => { 499 => [\'Cameras','CamerasCameraPointCloudPoints'] }, + 'camerapose' => { 499 => [\'Cameras','CamerasCameraPose'] }, + 'cameraposepositionx' => { 499 => [\'Cameras','CamerasCameraPosePositionX'] }, + 'cameraposepositiony' => { 499 => [\'Cameras','CamerasCameraPosePositionY'] }, + 'cameraposepositionz' => { 499 => [\'Cameras','CamerasCameraPosePositionZ'] }, + 'cameraposerotationw' => { 499 => [\'Cameras','CamerasCameraPoseRotationW'] }, + 'cameraposerotationx' => { 499 => [\'Cameras','CamerasCameraPoseRotationX'] }, + 'cameraposerotationy' => { 499 => [\'Cameras','CamerasCameraPoseRotationY'] }, + 'cameraposerotationz' => { 499 => [\'Cameras','CamerasCameraPoseRotationZ'] }, + 'cameraposetimestamp' => { 499 => [\'Cameras','CamerasCameraPoseTimestamp'] }, + 'cameraprofile' => { 523 => 'CameraProfile', 525 => 'CameraProfile' }, + 'cameraprofiledigest' => { 523 => 'CameraProfileDigest', 525 => 'CameraProfileDigest' }, + 'cameraprofiles' => { 540 => 'CameraProfiles' }, + 'cameraprofilesaperturevalue' => { 540 => [\'CameraProfiles','CameraProfilesApertureValue'] }, + 'cameraprofilesauthor' => { 540 => [\'CameraProfiles','CameraProfilesAuthor'] }, + 'cameraprofilesautoscale' => { 540 => [\'CameraProfiles','CameraProfilesAutoScale'] }, + 'cameraprofilescameraprettyname' => { 540 => [\'CameraProfiles','CameraProfilesCameraPrettyName'] }, + 'cameraprofilescamerarawprofile' => { 540 => [\'CameraProfiles','CameraProfilesCameraRawProfile'] }, + 'cameraprofilesfocallength' => { 540 => [\'CameraProfiles','CameraProfilesFocalLength'] }, + 'cameraprofilesfocusdistance' => { 540 => [\'CameraProfiles','CameraProfilesFocusDistance'] }, + 'cameraprofileslens' => { 540 => [\'CameraProfiles','CameraProfilesLens'] }, + 'cameraprofileslensprettyname' => { 540 => [\'CameraProfiles','CameraProfilesLensPrettyName'] }, + 'cameraprofilesmake' => { 540 => [\'CameraProfiles','CameraProfilesMake'] }, + 'cameraprofilesmodel' => { 540 => [\'CameraProfiles','CameraProfilesModel'] }, + 'cameraprofilesperspectivemodel' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModel'] }, + 'cameraprofilesperspectivemodelimagexcenter' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageXCenter'] }, + 'cameraprofilesperspectivemodelimageycenter' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageYCenter'] }, + 'cameraprofilesperspectivemodelradialdistortparam1' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam1'] }, + 'cameraprofilesperspectivemodelradialdistortparam2' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam2'] }, + 'cameraprofilesperspectivemodelradialdistortparam3' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam3'] }, + 'cameraprofilesperspectivemodelscalefactor' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelScaleFactor'] }, + 'cameraprofilesperspectivemodelversion' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelVersion'] }, + 'cameraprofilesprofilename' => { 540 => [\'CameraProfiles','CameraProfilesProfileName'] }, + 'cameraprofilessensorformatfactor' => { 540 => [\'CameraProfiles','CameraProfilesSensorFormatFactor'] }, + 'cameraprofilesuniquecameramodel' => { 540 => [\'CameraProfiles','CameraProfilesUniqueCameraModel'] }, 'camerarawcolortone' => { 115 => 0xe1 }, 'camerarawcontrast' => { 115 => 0xe3 }, 'camerarawhighlightpoint' => { 115 => 0xe6 }, @@ -1436,23 +1439,23 @@ my %tagLookup = ( 'camerarawsaturation' => { 115 => 0xe2 }, 'camerarawshadowpoint' => { 115 => 0xe7 }, 'camerarawsharpness' => { 115 => 0xe5 }, - 'cameraroll' => { 121 => 0xb, 415 => "\xa9grl" }, - 'cameras' => { 497 => 'Cameras' }, - 'cameraserialnumber' => { 125 => 0xc62f, 185 => 'CameraSerialNumber', 509 => 'CameraSerialNumber' }, + 'cameraroll' => { 121 => 0xb, 416 => "\xa9grl" }, + 'cameras' => { 499 => 'Cameras' }, + 'cameraserialnumber' => { 125 => 0xc62f, 185 => 'CameraSerialNumber', 511 => 'CameraSerialNumber' }, 'camerasettingsversion' => { 330 => 0x0 }, - 'cameratemperature' => { 7 => 0x18, 9 => 0x1b, 11 => 0x18, 13 => 0x19, 14 => 0x18, 15 => 0x18, 16 => 0x19, 17 => 0x19, 18 => 0x19, 19 => 0x17, 20 => 0x19, 21 => 0x1b, 22 => 0x19, 23 => 0x19, 24 => 0x1b, 25 => 0x1b, 26 => 0x1b, 27 => 0x1b, 28 => 0x19, 29 => 0x1b, 31 => [0x87,0x91], 32 => [0x99,0x9f,0xa4,0xa8,0x105], 36 => ['-3',0x64,0x47,0x53,0x5b,0x5c], 82 => 0xc, 145 => 0x406, 334 => 0x1306, 349 => 0x320, 356 => 0x3402, 390 => 0x47, 429 => 0x43, 483 => 0x5 }, + 'cameratemperature' => { 7 => 0x18, 9 => 0x1b, 11 => 0x18, 13 => 0x19, 14 => 0x18, 15 => 0x18, 16 => 0x19, 17 => 0x19, 18 => 0x19, 19 => 0x17, 20 => 0x19, 21 => 0x1b, 22 => 0x19, 23 => 0x19, 24 => 0x1b, 25 => 0x1b, 26 => 0x1b, 27 => 0x1b, 28 => 0x19, 29 => 0x1b, 31 => [0x87,0x91], 32 => [0x99,0x9f,0xa4,0xa8,0x105], 36 => ['-3',0x64,0x47,0x53,0x5b,0x5c], 82 => 0xc, 145 => 0x406, 334 => 0x1306, 349 => 0x320, 356 => 0x3402, 390 => 0x47, 431 => 0x43, 485 => 0x5 }, 'cameratemperature4' => { 395 => 0x14 }, 'cameratemperature5' => { 395 => 0x16 }, 'cameratemperaturerangemax' => { 127 => 0x5 }, 'cameratemperaturerangemin' => { 127 => 0x6 }, - 'cameratrait' => { 497 => [\'Cameras','CamerasCameraTrait'] }, + 'cameratrait' => { 499 => [\'Cameras','CamerasCameraTrait'] }, 'cameratype' => { 1 => 0x2e, 82 => 0x1a, 335 => 0x207 }, 'cameratype2' => { 331 => 0x100 }, - 'cameravendorinfo' => { 497 => [\'Cameras','CamerasCameraVendorInfo'] }, - 'cameravendorinfomanufacturer' => { 497 => [\'Cameras','CamerasCameraVendorInfoManufacturer'] }, - 'cameravendorinfomodel' => { 497 => [\'Cameras','CamerasCameraVendorInfoModel'] }, - 'cameravendorinfonotes' => { 497 => [\'Cameras','CamerasCameraVendorInfoNotes'] }, - 'camerayaw' => { 121 => 0xa, 415 => "\xa9gyw" }, + 'cameravendorinfo' => { 499 => [\'Cameras','CamerasCameraVendorInfo'] }, + 'cameravendorinfomanufacturer' => { 499 => [\'Cameras','CamerasCameraVendorInfoManufacturer'] }, + 'cameravendorinfomodel' => { 499 => [\'Cameras','CamerasCameraVendorInfoModel'] }, + 'cameravendorinfonotes' => { 499 => [\'Cameras','CamerasCameraVendorInfoNotes'] }, + 'camerayaw' => { 121 => 0xa, 416 => "\xa9gyw" }, 'camreverse' => { 122 => 'CamReverse' }, 'canondr4' => { 126 => 'CanonDR4' }, 'canonexposuremode' => { 37 => 0x14 }, @@ -1466,248 +1469,248 @@ my %tagLookup = ( 'canonlogversion' => { 68 => 0xb }, 'canonmodelid' => { 69 => 0x10, 103 => 0x1834 }, 'canonvrd' => { 126 => 'CanonVRD' }, - 'caption' => { 515 => 'caption' }, + 'caption' => { 517 => 'caption' }, 'caption-abstract' => { 138 => 0x78 }, - 'captionsauthornames' => { 526 => 'CaptionsAuthorNames' }, - 'captionsdatetimestamps' => { 526 => 'CaptionsDateTimeStamps' }, - 'captionwriter' => { 538 => 'CaptionWriter' }, + 'captionsauthornames' => { 528 => 'CaptionsAuthorNames' }, + 'captionsdatetimestamps' => { 528 => 'CaptionsDateTimeStamps' }, + 'captionwriter' => { 540 => 'CaptionWriter' }, 'captureframerate' => { 119 => 0x4001 }, 'captureheightnormal' => { 145 => 0x1839 }, 'capturelook' => { 145 => 0xc48 }, - 'capturemode' => { 409 => 'com.apple.photos.captureMode' }, - 'capturesoftware' => { 507 => 'CaptureSoftware' }, + 'capturemode' => { 417 => 'com.apple.photos.captureMode' }, + 'capturesoftware' => { 509 => 'CaptureSoftware' }, 'capturewidthnormal' => { 145 => 0x1838 }, 'capturewidthtest' => { 145 => 0x1842 }, 'cardshutterlock' => { 191 => 0x49 }, 'casioimagesize' => { 119 => 0x9 }, - 'catalogsets' => { 138 => 0xff, 499 => 'CatalogSets', 513 => 'CatalogSets' }, - 'categories' => { 69 => 0x23, 515 => 'categories' }, - 'category' => { 138 => 0xf, 186 => 'WM/Category', 329 => 0x30, 407 => 'catg', 538 => 'Category' }, - 'cbcrgain' => { 429 => 0xa036 }, - 'cbcrgaindefault' => { 429 => 0xa035 }, - 'cbcrmatrix' => { 429 => 0xa034 }, - 'cbcrmatrixdefault' => { 429 => 0xa033 }, + 'catalogsets' => { 138 => 0xff, 501 => 'CatalogSets', 515 => 'CatalogSets' }, + 'categories' => { 69 => 0x23, 517 => 'categories' }, + 'category' => { 138 => 0xf, 186 => 'WM/Category', 329 => 0x30, 408 => 'catg', 540 => 'Category' }, + 'cbcrgain' => { 431 => 0xa036 }, + 'cbcrgaindefault' => { 431 => 0xa035 }, + 'cbcrmatrix' => { 431 => 0xa034 }, + 'cbcrmatrixdefault' => { 431 => 0xa033 }, 'ccdboardversion' => { 349 => 0x331 }, 'ccdscanmode' => { 335 => 0x1039 }, 'ccdsensitivity' => { 291 => 0x6 }, 'ccdversion' => { 349 => 0x330 }, - 'ccvavgluminancenits' => { 531 => 'ccv_avg_luminance_nits' }, - 'ccvmaxluminancenits' => { 531 => 'ccv_max_luminance_nits' }, - 'ccvminluminancenits' => { 531 => 'ccv_min_luminance_nits' }, - 'ccvprimariesxy' => { 531 => 'ccv_primaries_xy' }, - 'ccvwhitexy' => { 531 => 'ccv_white_xy' }, - 'cellglobalid' => { 520 => 'cgi' }, + 'ccvavgluminancenits' => { 533 => 'ccv_avg_luminance_nits' }, + 'ccvmaxluminancenits' => { 533 => 'ccv_max_luminance_nits' }, + 'ccvminluminancenits' => { 533 => 'ccv_min_luminance_nits' }, + 'ccvprimariesxy' => { 533 => 'ccv_primaries_xy' }, + 'ccvwhitexy' => { 533 => 'ccv_white_xy' }, + 'cellglobalid' => { 522 => 'cgi' }, 'celllength' => { 125 => 0x109 }, - 'cellr' => { 520 => 'r' }, - 'celltowerid' => { 520 => 'cellid' }, + 'cellr' => { 522 => 'r' }, + 'celltowerid' => { 522 => 'cellid' }, 'cellwidth' => { 125 => 0x108 }, 'centerafarea' => { 320 => '15.1' }, 'centerfocuspoint' => { 324 => '2.2' }, 'centerpixel' => { 145 => 0x40c }, 'centerweightedareasize' => { 309 => '7.1', 310 => '8.1', 312 => '8.1', 313 => '8.1', 317 => '7.1', 318 => '5.1', 319 => '7.1', 320 => '6.3', 322 => '8.1', 323 => '8.1', 324 => '8.1', 325 => 0x21, 326 => 0x1f, 327 => 0x1f, 328 => 0x1f }, - 'certificate' => { 554 => 'Certificate' }, + 'certificate' => { 556 => 'Certificate' }, 'cfainterpolationalgorithm' => { 145 => 0xe60 }, 'cfainterpolationmetric' => { 145 => 0xe61 }, 'cfaoffsetcols' => { 145 => 0xc71 }, 'cfaoffsetrows' => { 145 => 0xc6f }, - 'cfapattern' => { 125 => 0xa302, 359 => 0x9, 527 => 'CFAPattern' }, + 'cfapattern' => { 125 => 0xa302, 359 => 0x9, 529 => 'CFAPattern' }, 'cfapattern2' => { 125 => 0x828e }, - 'cfapatterncolumns' => { 527 => [\'CFAPattern','CFAPatternColumns'] }, - 'cfapatternrows' => { 527 => [\'CFAPattern','CFAPatternRows'] }, - 'cfapatternvalues' => { 527 => [\'CFAPattern','CFAPatternValues'] }, + 'cfapatterncolumns' => { 529 => [\'CFAPattern','CFAPatternColumns'] }, + 'cfapatternrows' => { 529 => [\'CFAPattern','CFAPatternRows'] }, + 'cfapatternvalues' => { 529 => [\'CFAPattern','CFAPatternValues'] }, 'cfarepeatpatterndim' => { 125 => 0x828d }, 'cfazipperfixthreshold' => { 145 => 0xe62 }, - 'channel' => { 540 => 'channel' }, - 'channela-lang' => { 540 => [\'channel','channelA-lang'] }, - 'channelchannel' => { 540 => [\'channel','channelChannel'] }, + 'channel' => { 542 => 'channel' }, + 'channela-lang' => { 542 => [\'channel','channelA-lang'] }, + 'channelchannel' => { 542 => [\'channel','channelChannel'] }, 'channels' => { 162 => 'Channels' }, - 'channelsubchannel1' => { 540 => [\'channel','channelSubchannel1'] }, - 'channelsubchannel2' => { 540 => [\'channel','channelSubchannel2'] }, - 'channelsubchannel3' => { 540 => [\'channel','channelSubchannel3'] }, - 'channelsubchannel4' => { 540 => [\'channel','channelSubchannel4'] }, - 'chapterlist' => { 415 => 'chpl' }, + 'channelsubchannel1' => { 542 => [\'channel','channelSubchannel1'] }, + 'channelsubchannel2' => { 542 => [\'channel','channelSubchannel2'] }, + 'channelsubchannel3' => { 542 => [\'channel','channelSubchannel3'] }, + 'channelsubchannel4' => { 542 => [\'channel','channelSubchannel4'] }, + 'chapterlist' => { 416 => 'chpl' }, 'checkmark' => { 109 => 0x10101, 114 => 0x26a }, 'checkmark2' => { 115 => 0x8e }, - 'childfontfiles' => { 555 => [\'Fonts','FontsChildFontFiles'] }, + 'childfontfiles' => { 557 => [\'Fonts','FontsChildFontFiles'] }, 'chmodeshootingspeed' => { 309 => '10.3', 310 => '11.2', 326 => 0x10b, 327 => 0x10b, 328 => 0x121 }, 'chromablurradius' => { 125 => 0xc631 }, 'chromanoisecolorspace' => { 145 => 0xe6d }, 'chromanoiseedgemapthresh' => { 145 => 0xe6c }, 'chromanoisehighfthresh' => { 145 => 0xe6a }, 'chromanoiselowfthresh' => { 145 => 0xe6b }, - 'chromaticaberration' => { 109 => 0x20703, 115 => 0x66, 429 => 0xa051 }, - 'chromaticaberrationb' => { 521 => 'ChromaticAberrationB', 523 => 'ChromaticAberrationB' }, + 'chromaticaberration' => { 109 => 0x20703, 115 => 0x66, 431 => 0xa051 }, + 'chromaticaberrationb' => { 523 => 'ChromaticAberrationB', 525 => 'ChromaticAberrationB' }, 'chromaticaberrationblue' => { 109 => 0x20708, 115 => 0x6b }, 'chromaticaberrationcorr' => { 84 => [0x4,0x5] }, - 'chromaticaberrationcorrection' => { 125 => 0x7034, 379 => 0x1, 493 => 0x900d }, - 'chromaticaberrationcorrparams' => { 125 => 0x7035, 487 => 0x66a, 488 => [0x37c,0x384,0x39c,0x3b0,0x3b8] }, + 'chromaticaberrationcorrection' => { 125 => 0x7034, 379 => 0x1, 495 => 0x900d }, + 'chromaticaberrationcorrparams' => { 125 => 0x7035, 489 => 0x66a, 490 => [0x37c,0x384,0x39c,0x3b0,0x3b8] }, 'chromaticaberrationon' => { 109 => '0x20703.0', 115 => 0x62 }, - 'chromaticaberrationr' => { 521 => 'ChromaticAberrationR', 523 => 'ChromaticAberrationR' }, + 'chromaticaberrationr' => { 523 => 'ChromaticAberrationR', 525 => 'ChromaticAberrationR' }, 'chromaticaberrationred' => { 109 => 0x20707, 115 => 0x6a }, 'chromaticaberrationsetting' => { 85 => 0x6 }, - 'chrominancenoisereduction' => { 109 => 0x20601, 115 => 0x5e, 432 => 0x1a }, + 'chrominancenoisereduction' => { 109 => 0x20601, 115 => 0x5e, 434 => 0x1a }, 'chrominancenr_tiff_jpeg' => { 115 => 0x60 }, - 'circadatecreated' => { 535 => 'CircaDateCreated' }, - 'circgradbasedcorractive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'] }, - 'circgradbasedcorramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'] }, - 'circgradbasedcorrblacks2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'] }, - 'circgradbasedcorrbrightness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'] }, - 'circgradbasedcorrclarity' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'] }, - 'circgradbasedcorrclarity2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'] }, - 'circgradbasedcorrcontrast' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'] }, - 'circgradbasedcorrcontrast2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'] }, - 'circgradbasedcorrcorrectionname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'] }, - 'circgradbasedcorrcorrectionsyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'] }, - 'circgradbasedcorrdefringe' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'] }, - 'circgradbasedcorrdehaze' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'] }, - 'circgradbasedcorrexposure' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'] }, - 'circgradbasedcorrexposure2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'] }, - 'circgradbasedcorrhighlights2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'] }, - 'circgradbasedcorrhue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'] }, - 'circgradbasedcorrluminancenoise' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'] }, - 'circgradbasedcorrmaskalpha' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'] }, - 'circgradbasedcorrmaskangle' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'] }, - 'circgradbasedcorrmaskbottom' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'] }, - 'circgradbasedcorrmaskcentervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'] }, - 'circgradbasedcorrmaskcenterweight' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'circgradbasedcorrmaskdabs' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'] }, - 'circgradbasedcorrmaskfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'] }, - 'circgradbasedcorrmaskflipped' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'] }, - 'circgradbasedcorrmaskflow' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'] }, - 'circgradbasedcorrmaskfullx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'] }, - 'circgradbasedcorrmaskfully' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'] }, - 'circgradbasedcorrmaskinputdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'] }, - 'circgradbasedcorrmaskleft' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'] }, - 'circgradbasedcorrmaskmaskactive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'] }, - 'circgradbasedcorrmaskmaskblendmode' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'circgradbasedcorrmaskmaskdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'circgradbasedcorrmaskmaskinverted' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'circgradbasedcorrmaskmaskname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'] }, - 'circgradbasedcorrmaskmasks' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'] }, - 'circgradbasedcorrmaskmasksalpha' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'circgradbasedcorrmaskmasksangle' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'circgradbasedcorrmaskmasksbottom' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'circgradbasedcorrmaskmaskscentervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'circgradbasedcorrmaskmaskscenterweight' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'circgradbasedcorrmaskmasksdabs' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'circgradbasedcorrmaskmasksfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'circgradbasedcorrmaskmasksflipped' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'circgradbasedcorrmaskmasksflow' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'circgradbasedcorrmaskmasksfullx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'circgradbasedcorrmaskmasksfully' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'circgradbasedcorrmaskmasksinputdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'circgradbasedcorrmaskmasksleft' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'circgradbasedcorrmaskmasksmaskactive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'circgradbasedcorrmaskmasksmaskblendmode' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'circgradbasedcorrmaskmasksmaskdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'circgradbasedcorrmaskmasksmaskinverted' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'circgradbasedcorrmaskmasksmaskname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'circgradbasedcorrmaskmasksmasksubtype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'circgradbasedcorrmaskmasksmasksyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'circgradbasedcorrmaskmasksmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'circgradbasedcorrmaskmasksmidpoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'circgradbasedcorrmaskmasksorigin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'circgradbasedcorrmaskmasksperimetervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'circgradbasedcorrmaskmasksradius' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'circgradbasedcorrmaskmasksreferencepoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'circgradbasedcorrmaskmasksright' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'] }, - 'circgradbasedcorrmaskmasksroundness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'circgradbasedcorrmaskmaskssizex' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'circgradbasedcorrmaskmaskssizey' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'circgradbasedcorrmaskmaskstop' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'] }, - 'circgradbasedcorrmaskmasksubtype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'circgradbasedcorrmaskmasksvalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'circgradbasedcorrmaskmasksversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'circgradbasedcorrmaskmaskswhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'circgradbasedcorrmaskmaskswholeimagearea' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'circgradbasedcorrmaskmasksx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'] }, - 'circgradbasedcorrmaskmasksy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'] }, - 'circgradbasedcorrmaskmasksyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'circgradbasedcorrmaskmaskszerox' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'circgradbasedcorrmaskmaskszeroy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'circgradbasedcorrmaskmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'circgradbasedcorrmaskmidpoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'] }, - 'circgradbasedcorrmaskorigin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'] }, - 'circgradbasedcorrmaskperimetervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'circgradbasedcorrmaskradius' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'] }, - 'circgradbasedcorrmaskrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'circgradbasedcorrmaskrangeareamodels' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'circgradbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'circgradbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'circgradbasedcorrmaskrangecoloramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'circgradbasedcorrmaskrangedepthfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'circgradbasedcorrmaskrangedepthmax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'circgradbasedcorrmaskrangedepthmin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'circgradbasedcorrmaskrangeinvert' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'circgradbasedcorrmaskrangelumfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'circgradbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'circgradbasedcorrmaskrangelummax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'circgradbasedcorrmaskrangelummin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'circgradbasedcorrmaskrangelumrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'circgradbasedcorrmaskrangesampletype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'circgradbasedcorrmaskrangetype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'circgradbasedcorrmaskrangeversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'circgradbasedcorrmaskreferencepoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'circgradbasedcorrmaskright' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'] }, - 'circgradbasedcorrmaskroundness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'] }, - 'circgradbasedcorrmasks' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'] }, - 'circgradbasedcorrmasksizex' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'] }, - 'circgradbasedcorrmasksizey' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'] }, - 'circgradbasedcorrmasktop' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'] }, - 'circgradbasedcorrmaskvalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'] }, - 'circgradbasedcorrmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'] }, - 'circgradbasedcorrmaskwhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'] }, - 'circgradbasedcorrmaskwholeimagearea' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'circgradbasedcorrmaskx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'] }, - 'circgradbasedcorrmasky' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'] }, - 'circgradbasedcorrmaskzerox' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'] }, - 'circgradbasedcorrmaskzeroy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'] }, - 'circgradbasedcorrmoire' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'] }, - 'circgradbasedcorrrangemask' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'] }, - 'circgradbasedcorrrangemaskareamodels' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'circgradbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'circgradbasedcorrrangemaskareamodelscomponents' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'circgradbasedcorrrangemaskcoloramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'circgradbasedcorrrangemaskdepthfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'circgradbasedcorrrangemaskdepthmax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'circgradbasedcorrrangemaskdepthmin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'circgradbasedcorrrangemaskinvert' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'circgradbasedcorrrangemasklumfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'circgradbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'circgradbasedcorrrangemasklummax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'circgradbasedcorrrangemasklummin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'circgradbasedcorrrangemasklumrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'circgradbasedcorrrangemasksampletype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'circgradbasedcorrrangemasktype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'] }, - 'circgradbasedcorrrangemaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'circgradbasedcorrsaturation' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'] }, - 'circgradbasedcorrshadows2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'] }, - 'circgradbasedcorrsharpness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'] }, - 'circgradbasedcorrtemperature' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'] }, - 'circgradbasedcorrtexture' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'] }, - 'circgradbasedcorrtint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'] }, - 'circgradbasedcorrtoninghue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'] }, - 'circgradbasedcorrtoningsaturation' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'] }, - 'circgradbasedcorrwhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'] }, - 'circgradbasedcorrwhites2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'] }, - 'circulargradientbasedcorrections' => { 521 => 'CircularGradientBasedCorrections', 523 => 'CircularGradientBasedCorrections' }, - 'city' => { 138 => 0x5a, 168 => 'City', 354 => 0x6d, 538 => 'City' }, + 'circadatecreated' => { 537 => 'CircaDateCreated' }, + 'circgradbasedcorractive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'] }, + 'circgradbasedcorramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'] }, + 'circgradbasedcorrblacks2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'] }, + 'circgradbasedcorrbrightness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'] }, + 'circgradbasedcorrclarity' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'] }, + 'circgradbasedcorrclarity2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'] }, + 'circgradbasedcorrcontrast' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'] }, + 'circgradbasedcorrcontrast2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'] }, + 'circgradbasedcorrcorrectionname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'] }, + 'circgradbasedcorrcorrectionsyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'] }, + 'circgradbasedcorrdefringe' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'] }, + 'circgradbasedcorrdehaze' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'] }, + 'circgradbasedcorrexposure' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'] }, + 'circgradbasedcorrexposure2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'] }, + 'circgradbasedcorrhighlights2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'] }, + 'circgradbasedcorrhue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'] }, + 'circgradbasedcorrluminancenoise' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'] }, + 'circgradbasedcorrmaskalpha' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'] }, + 'circgradbasedcorrmaskangle' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'] }, + 'circgradbasedcorrmaskbottom' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'] }, + 'circgradbasedcorrmaskcentervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'] }, + 'circgradbasedcorrmaskcenterweight' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'circgradbasedcorrmaskdabs' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'] }, + 'circgradbasedcorrmaskfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'] }, + 'circgradbasedcorrmaskflipped' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'] }, + 'circgradbasedcorrmaskflow' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'] }, + 'circgradbasedcorrmaskfullx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'] }, + 'circgradbasedcorrmaskfully' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'] }, + 'circgradbasedcorrmaskinputdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'] }, + 'circgradbasedcorrmaskleft' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'] }, + 'circgradbasedcorrmaskmaskactive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'] }, + 'circgradbasedcorrmaskmaskblendmode' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'circgradbasedcorrmaskmaskdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'circgradbasedcorrmaskmaskinverted' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'circgradbasedcorrmaskmaskname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'] }, + 'circgradbasedcorrmaskmasks' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'] }, + 'circgradbasedcorrmaskmasksalpha' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'circgradbasedcorrmaskmasksangle' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'circgradbasedcorrmaskmasksbottom' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'circgradbasedcorrmaskmaskscentervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'circgradbasedcorrmaskmaskscenterweight' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'circgradbasedcorrmaskmasksdabs' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'circgradbasedcorrmaskmasksfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'circgradbasedcorrmaskmasksflipped' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'circgradbasedcorrmaskmasksflow' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'circgradbasedcorrmaskmasksfullx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'circgradbasedcorrmaskmasksfully' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'circgradbasedcorrmaskmasksinputdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'circgradbasedcorrmaskmasksleft' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'circgradbasedcorrmaskmasksmaskactive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'circgradbasedcorrmaskmasksmaskblendmode' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'circgradbasedcorrmaskmasksmaskdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'circgradbasedcorrmaskmasksmaskinverted' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'circgradbasedcorrmaskmasksmaskname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'circgradbasedcorrmaskmasksmasksubtype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'circgradbasedcorrmaskmasksmasksyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'circgradbasedcorrmaskmasksmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'circgradbasedcorrmaskmasksmidpoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'circgradbasedcorrmaskmasksorigin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'circgradbasedcorrmaskmasksperimetervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'circgradbasedcorrmaskmasksradius' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'circgradbasedcorrmaskmasksreferencepoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'circgradbasedcorrmaskmasksright' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'] }, + 'circgradbasedcorrmaskmasksroundness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'circgradbasedcorrmaskmaskssizex' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'circgradbasedcorrmaskmaskssizey' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'circgradbasedcorrmaskmaskstop' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'] }, + 'circgradbasedcorrmaskmasksubtype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'circgradbasedcorrmaskmasksvalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'circgradbasedcorrmaskmasksversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'circgradbasedcorrmaskmaskswhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'circgradbasedcorrmaskmaskswholeimagearea' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'circgradbasedcorrmaskmasksx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'] }, + 'circgradbasedcorrmaskmasksy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'] }, + 'circgradbasedcorrmaskmasksyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'circgradbasedcorrmaskmaskszerox' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'circgradbasedcorrmaskmaskszeroy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'circgradbasedcorrmaskmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'circgradbasedcorrmaskmidpoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'] }, + 'circgradbasedcorrmaskorigin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'] }, + 'circgradbasedcorrmaskperimetervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'circgradbasedcorrmaskradius' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'] }, + 'circgradbasedcorrmaskrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'circgradbasedcorrmaskrangeareamodels' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'circgradbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'circgradbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'circgradbasedcorrmaskrangecoloramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'circgradbasedcorrmaskrangedepthfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'circgradbasedcorrmaskrangedepthmax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'circgradbasedcorrmaskrangedepthmin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'circgradbasedcorrmaskrangeinvert' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'circgradbasedcorrmaskrangelumfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'circgradbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'circgradbasedcorrmaskrangelummax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'circgradbasedcorrmaskrangelummin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'circgradbasedcorrmaskrangelumrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'circgradbasedcorrmaskrangesampletype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'circgradbasedcorrmaskrangetype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'circgradbasedcorrmaskrangeversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'circgradbasedcorrmaskreferencepoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'circgradbasedcorrmaskright' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'] }, + 'circgradbasedcorrmaskroundness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'] }, + 'circgradbasedcorrmasks' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'] }, + 'circgradbasedcorrmasksizex' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'] }, + 'circgradbasedcorrmasksizey' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'] }, + 'circgradbasedcorrmasktop' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'] }, + 'circgradbasedcorrmaskvalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'] }, + 'circgradbasedcorrmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'] }, + 'circgradbasedcorrmaskwhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'] }, + 'circgradbasedcorrmaskwholeimagearea' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'circgradbasedcorrmaskx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'] }, + 'circgradbasedcorrmasky' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'] }, + 'circgradbasedcorrmaskzerox' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'] }, + 'circgradbasedcorrmaskzeroy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'] }, + 'circgradbasedcorrmoire' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'] }, + 'circgradbasedcorrrangemask' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'] }, + 'circgradbasedcorrrangemaskareamodels' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'circgradbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'circgradbasedcorrrangemaskareamodelscomponents' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'circgradbasedcorrrangemaskcoloramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'circgradbasedcorrrangemaskdepthfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'circgradbasedcorrrangemaskdepthmax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'circgradbasedcorrrangemaskdepthmin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'circgradbasedcorrrangemaskinvert' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'circgradbasedcorrrangemasklumfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'circgradbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'circgradbasedcorrrangemasklummax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'circgradbasedcorrrangemasklummin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'circgradbasedcorrrangemasklumrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'circgradbasedcorrrangemasksampletype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'circgradbasedcorrrangemasktype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'] }, + 'circgradbasedcorrrangemaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'circgradbasedcorrsaturation' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'] }, + 'circgradbasedcorrshadows2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'] }, + 'circgradbasedcorrsharpness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'] }, + 'circgradbasedcorrtemperature' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'] }, + 'circgradbasedcorrtexture' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'] }, + 'circgradbasedcorrtint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'] }, + 'circgradbasedcorrtoninghue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'] }, + 'circgradbasedcorrtoningsaturation' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'] }, + 'circgradbasedcorrwhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'] }, + 'circgradbasedcorrwhites2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'] }, + 'circulargradientbasedcorrections' => { 523 => 'CircularGradientBasedCorrections', 525 => 'CircularGradientBasedCorrections' }, + 'city' => { 138 => 0x5a, 168 => 'City', 354 => 0x6d, 540 => 'City' }, 'city2' => { 354 => 0x80 }, - 'clarity' => { 37 => 0x33, 133 => 0x100f, 261 => 0x35, 262 => 0x3d, 456 => 0x2036, 521 => 'Clarity', 523 => 'Clarity' }, - 'clarity2012' => { 521 => 'Clarity2012', 523 => 'Clarity2012' }, + 'clarity' => { 37 => 0x33, 133 => 0x100f, 261 => 0x35, 262 => 0x3d, 458 => 0x2036, 523 => 'Clarity', 525 => 'Clarity' }, + 'clarity2012' => { 523 => 'Clarity2012', 525 => 'Clarity2012' }, 'claritycontrol' => { 390 => 0x96 }, - 'classification' => { 415 => 'clsf' }, + 'classification' => { 416 => 'clsf' }, 'classifystate' => { 138 => 0xe1 }, 'clearretouch' => { 354 => 0x7c }, 'clearretouchvalue' => { 354 => 0xa3 }, - 'client' => { 550 => 'client' }, - 'clientname' => { 529 => 'ClientName' }, - 'clipboardaspectratio' => { 521 => 'ClipboardAspectRatio', 523 => 'ClipboardAspectRatio' }, - 'clipboardorientation' => { 521 => 'ClipboardOrientation', 523 => 'ClipboardOrientation' }, - 'clipfilename' => { 415 => 'clfn' }, - 'clipid' => { 415 => 'clid' }, + 'client' => { 552 => 'client' }, + 'clientname' => { 531 => 'ClientName' }, + 'clipboardaspectratio' => { 523 => 'ClipboardAspectRatio', 525 => 'ClipboardAspectRatio' }, + 'clipboardorientation' => { 523 => 'ClipboardOrientation', 525 => 'ClipboardOrientation' }, + 'clipfilename' => { 416 => 'clfn' }, + 'clipid' => { 416 => 'clid' }, 'clmodeshootingspeed' => { 309 => '10.2', 310 => '11.3', 312 => '11.2', 313 => '11.2', 318 => '11.2', 319 => '10.2', 322 => '11.2', 323 => '11.2', 324 => '11.1', 325 => 0x3f, 326 => 0x3b, 327 => 0x3b, 328 => 0x3b }, - 'cluster' => { 521 => 'Cluster', 523 => 'Cluster' }, + 'cluster' => { 523 => 'Cluster', 525 => 'Cluster' }, 'cmcontrast' => { 338 => 0x2022 }, 'cmddialsreverserotation' => { 325 => 0xbe, 326 => 0xba, 327 => 0xba, 328 => 0xba }, 'cmexposurecompensation' => { 338 => 0x2000 }, @@ -1719,31 +1722,31 @@ my %tagLookup = ( 'cmwhitebalancegraypoint' => { 338 => 0x2010 }, 'codec' => { 176 => 'Codec' }, 'codedcharacterset' => { 139 => 0x5a }, - 'codeversion' => { 415 => 'cver' }, + 'codeversion' => { 416 => 'cver' }, 'collection' => { 343 => 'Collection' }, - 'collectionname' => { 177 => [\'Collections','CollectionsCollectionName'], 415 => 'coll' }, - 'collections' => { 177 => 'Collections', 515 => 'collections' }, + 'collectionname' => { 177 => [\'Collections','CollectionsCollectionName'], 416 => 'coll' }, + 'collections' => { 177 => 'Collections', 517 => 'collections' }, 'collectionuri' => { 177 => [\'Collections','CollectionsCollectionURI'] }, - 'color' => { 409 => 'player.movie.visual.color', 539 => 'color' }, + 'color' => { 410 => 'player.movie.visual.color', 541 => 'color' }, 'coloraberrationcontrol' => { 302 => 0xc89224b }, - 'coloradjustment' => { 432 => 0x14 }, - 'coloradjustmentmode' => { 431 => 0x210 }, - 'coloranta' => { 555 => [\'Colorants','ColorantsA'] }, - 'colorantb' => { 555 => [\'Colorants','ColorantsB'] }, - 'colorantblack' => { 555 => [\'Colorants','ColorantsBlack'] }, - 'colorantblue' => { 555 => [\'Colorants','ColorantsBlue'] }, - 'colorantcyan' => { 555 => [\'Colorants','ColorantsCyan'] }, - 'colorantgray' => { 555 => [\'Colorants','ColorantsGray'] }, - 'colorantgreen' => { 555 => [\'Colorants','ColorantsGreen'] }, - 'colorantl' => { 555 => [\'Colorants','ColorantsL'] }, - 'colorantmagenta' => { 555 => [\'Colorants','ColorantsMagenta'] }, - 'colorantmode' => { 555 => [\'Colorants','ColorantsMode'] }, - 'colorantred' => { 555 => [\'Colorants','ColorantsRed'] }, - 'colorants' => { 555 => 'Colorants' }, - 'colorantswatchname' => { 555 => [\'Colorants','ColorantsSwatchName'] }, - 'coloranttint' => { 555 => [\'Colorants','ColorantsTint'] }, - 'coloranttype' => { 555 => [\'Colorants','ColorantsType'] }, - 'colorantyellow' => { 555 => [\'Colorants','ColorantsYellow'] }, + 'coloradjustment' => { 434 => 0x14 }, + 'coloradjustmentmode' => { 433 => 0x210 }, + 'coloranta' => { 557 => [\'Colorants','ColorantsA'] }, + 'colorantb' => { 557 => [\'Colorants','ColorantsB'] }, + 'colorantblack' => { 557 => [\'Colorants','ColorantsBlack'] }, + 'colorantblue' => { 557 => [\'Colorants','ColorantsBlue'] }, + 'colorantcyan' => { 557 => [\'Colorants','ColorantsCyan'] }, + 'colorantgray' => { 557 => [\'Colorants','ColorantsGray'] }, + 'colorantgreen' => { 557 => [\'Colorants','ColorantsGreen'] }, + 'colorantl' => { 557 => [\'Colorants','ColorantsL'] }, + 'colorantmagenta' => { 557 => [\'Colorants','ColorantsMagenta'] }, + 'colorantmode' => { 557 => [\'Colorants','ColorantsMode'] }, + 'colorantred' => { 557 => [\'Colorants','ColorantsRed'] }, + 'colorants' => { 557 => 'Colorants' }, + 'colorantswatchname' => { 557 => [\'Colorants','ColorantsSwatchName'] }, + 'coloranttint' => { 557 => [\'Colorants','ColorantsTint'] }, + 'coloranttype' => { 557 => [\'Colorants','ColorantsType'] }, + 'colorantyellow' => { 557 => [\'Colorants','ColorantsYellow'] }, 'colorbalance' => { 163 => 'ColorBalance' }, 'colorbalanceadj' => { 302 => 0x76a43202 }, 'colorbalanceblue' => { 188 => 0x1e }, @@ -1758,56 +1761,56 @@ my %tagLookup = ( 'colorchromeeffect' => { 133 => 0x1048 }, 'colorchromefxblue' => { 133 => 0x104e }, 'colorclass' => { 401 => 0xde, 402 => 'ColorClass' }, - 'colorcompensationfilter' => { 191 => [0x3a,0x5f], 193 => 0x111, 456 => 0xb022 }, - 'colorcompensationfiltercustom' => { 442 => 0xd, 443 => 0xc }, - 'colorcompensationfilterset' => { 442 => 0x8, 443 => 0x7, 444 => 0x18, 461 => 0xf }, + 'colorcompensationfilter' => { 191 => [0x3a,0x5f], 193 => 0x111, 458 => 0xb022 }, + 'colorcompensationfiltercustom' => { 444 => 0xd, 445 => 0xc }, + 'colorcompensationfilterset' => { 444 => 0x8, 445 => 0x7, 446 => 0x18, 463 => 0xf }, 'colorcontrol' => { 335 => 0x102b }, - 'colorcorrection' => { 493 => 0x8015 }, + 'colorcorrection' => { 495 => 0x8015 }, 'colorcorrectionmatrix' => { 1 => 0x3e }, 'colorcreatoreffect' => { 330 => 0x532 }, 'colordataversion' => { 44 => 0x0, 45 => 0x0, 46 => 0x0, 48 => 0x0, 49 => 0x0, 50 => 0x0, 51 => 0x0, 52 => 0x0, 53 => 0x0, 54 => 0x0 }, 'coloreffect' => { 354 => 0x28 }, 'colorfilter' => { 118 => 0x17, 119 => 0x3017, 188 => 0x29, 196 => [0x38,0x4d,0x4f], 397 => 0x17 }, 'colorgain' => { 268 => 0x51 }, - 'colorgradeblending' => { 521 => 'ColorGradeBlending', 523 => 'ColorGradeBlending' }, - 'colorgradeglobalhue' => { 521 => 'ColorGradeGlobalHue', 523 => 'ColorGradeGlobalHue' }, - 'colorgradegloballum' => { 521 => 'ColorGradeGlobalLum', 523 => 'ColorGradeGlobalLum' }, - 'colorgradeglobalsat' => { 521 => 'ColorGradeGlobalSat', 523 => 'ColorGradeGlobalSat' }, - 'colorgradehighlightlum' => { 521 => 'ColorGradeHighlightLum', 523 => 'ColorGradeHighlightLum' }, - 'colorgrademidtonehue' => { 521 => 'ColorGradeMidtoneHue', 523 => 'ColorGradeMidtoneHue' }, - 'colorgrademidtonelum' => { 521 => 'ColorGradeMidtoneLum', 523 => 'ColorGradeMidtoneLum' }, - 'colorgrademidtonesat' => { 521 => 'ColorGradeMidtoneSat', 523 => 'ColorGradeMidtoneSat' }, - 'colorgradeshadowlum' => { 521 => 'ColorGradeShadowLum', 523 => 'ColorGradeShadowLum' }, + 'colorgradeblending' => { 523 => 'ColorGradeBlending', 525 => 'ColorGradeBlending' }, + 'colorgradeglobalhue' => { 523 => 'ColorGradeGlobalHue', 525 => 'ColorGradeGlobalHue' }, + 'colorgradegloballum' => { 523 => 'ColorGradeGlobalLum', 525 => 'ColorGradeGlobalLum' }, + 'colorgradeglobalsat' => { 523 => 'ColorGradeGlobalSat', 525 => 'ColorGradeGlobalSat' }, + 'colorgradehighlightlum' => { 523 => 'ColorGradeHighlightLum', 525 => 'ColorGradeHighlightLum' }, + 'colorgrademidtonehue' => { 523 => 'ColorGradeMidtoneHue', 525 => 'ColorGradeMidtoneHue' }, + 'colorgrademidtonelum' => { 523 => 'ColorGradeMidtoneLum', 525 => 'ColorGradeMidtoneLum' }, + 'colorgrademidtonesat' => { 523 => 'ColorGradeMidtoneSat', 525 => 'ColorGradeMidtoneSat' }, + 'colorgradeshadowlum' => { 523 => 'ColorGradeShadowLum', 525 => 'ColorGradeShadowLum' }, 'colorhue' => { 109 => 0x20900, 243 => 0x8d }, 'colorimetricreference' => { 125 => 0xc6bf }, - 'colorlabel' => { 526 => 'ColorLabel' }, - 'colormatrix' => { 68 => 0xa, 334 => 0x200, 335 => 0x1011, 429 => 0xa030 }, + 'colorlabel' => { 528 => 'ColorLabel' }, + 'colormatrix' => { 68 => 0xa, 334 => 0x200, 335 => 0x1011, 431 => 0xa030 }, 'colormatrix1' => { 125 => 0xc621, 399 => 0x106 }, 'colormatrix2' => { 125 => 0xc622, 338 => 0x200, 399 => 0x226 }, 'colormatrix3' => { 125 => 0xcd33 }, 'colormatrixa' => { 390 => 0x203 }, 'colormatrixa2' => { 390 => 0x21c }, - 'colormatrixadobergb' => { 429 => 0xa032 }, + 'colormatrixadobergb' => { 431 => 0xa032 }, 'colormatrixb' => { 390 => 0x204 }, 'colormatrixb2' => { 390 => 0x21d }, 'colormatrixnumber' => { 335 => 0x1019 }, - 'colormatrixsrgb' => { 429 => 0xa031 }, - 'colormode' => { 119 => 0x3015, 133 => 0x1210, 147 => 0x66, 188 => 0x28, 191 => 0x16, 193 => 0x101, 194 => 0x36, 196 => 0x7, 243 => 0x3, 291 => 0x4, 354 => 0x32, 432 => 0x2c, 456 => 0xb029, 538 => 'ColorMode' }, + 'colormatrixsrgb' => { 431 => 0xa031 }, + 'colormode' => { 119 => 0x3015, 133 => 0x1210, 147 => 0x66, 188 => 0x28, 191 => 0x16, 193 => 0x101, 194 => 0x36, 196 => 0x7, 243 => 0x3, 291 => 0x4, 354 => 0x32, 434 => 0x2c, 458 => 0xb029, 540 => 'ColorMode' }, 'colormoirereduction' => { 109 => 0x20670, 303 => 0x15 }, 'colormoirereductionmode' => { 303 => 0x5 }, 'colormoirereductionon' => { 109 => '0x20670.0' }, - 'colornoisereduction' => { 493 => 0x8029, 521 => 'ColorNoiseReduction', 523 => 'ColorNoiseReduction' }, - 'colornoisereductiondetail' => { 521 => 'ColorNoiseReductionDetail', 523 => 'ColorNoiseReductionDetail' }, + 'colornoisereduction' => { 495 => 0x8029, 523 => 'ColorNoiseReduction', 525 => 'ColorNoiseReduction' }, + 'colornoisereductiondetail' => { 523 => 'ColorNoiseReductionDetail', 525 => 'ColorNoiseReductionDetail' }, 'colornoisereductionintensity' => { 303 => 0x18 }, 'colornoisereductionsharpness' => { 303 => 0x1c }, - 'colornoisereductionsmoothness' => { 521 => 'ColorNoiseReductionSmoothness', 523 => 'ColorNoiseReductionSmoothness' }, + 'colornoisereductionsmoothness' => { 523 => 'ColorNoiseReductionSmoothness', 525 => 'ColorNoiseReductionSmoothness' }, 'colorplanes' => { 129 => 0x2 }, 'colorprofile' => { 188 => 0x33 }, 'colorprofilesettings' => { 330 => 0x539 }, 'colorrepresentation' => { 140 => 0x3c }, 'colorsaturationadj' => { 109 => 0x20305 }, 'colorsequence' => { 140 => 0x41 }, - 'colorspace' => { 55 => 0x3, 69 => 0xb4, 103 => 0x10b4, 125 => 0xa001, 142 => 0x3, 169 => 'ColorSpace', 189 => 0x2f, 190 => 0x25, 191 => 0x17, 243 => 0x1e, 330 => 0x507, 390 => 0x37, 429 => 0xa011, 432 => 0xb, 442 => 0x1b, 443 => 0x83, 444 => 0xe, 461 => 0x6, 527 => 'ColorSpace' }, + 'colorspace' => { 55 => 0x3, 69 => 0xb4, 103 => 0x10b4, 125 => 0xa001, 142 => 0x3, 169 => 'ColorSpace', 189 => 0x2f, 190 => 0x25, 191 => 0x17, 243 => 0x1e, 330 => 0x507, 390 => 0x37, 431 => 0xa011, 434 => 0xb, 444 => 0x1b, 445 => 0x83, 446 => 0xe, 463 => 0x6, 529 => 'ColorSpace' }, 'colorspace2' => { 68 => 0x9 }, 'colorspecapproximation' => { 142 => 0x2 }, 'colorspecdata' => { 142 => 0x3 }, @@ -1820,21 +1823,21 @@ my %tagLookup = ( 'colortempcustom1' => { 43 => 0x45 }, 'colortempcustom2' => { 43 => 0x4a }, 'colortempdaylight' => { 41 => 0x18, 42 => 0x27, 43 => 0x27, 44 => 0x9a, 45 => 0xd1, 46 => 0x72, 47 => 0x2b, 48 => 0x52, 51 => 0x6b, 52 => 0x84, 53 => 0x89, 54 => 0x8c, 390 => 0x53 }, - 'colortemperature' => { 1 => 0x2d, 7 => 0x73, 8 => [0x48,0x4e], 9 => 0xc0, 10 => 0x37, 11 => 0x62, 12 => 0x37, 13 => 0x7c, 14 => 0x73, 15 => 0x73, 16 => 0x77, 17 => 0x73, 18 => 0x7c, 19 => 0x58, 20 => 0x73, 21 => 0xc0, 22 => 0x7f, 23 => 0x7d, 24 => 0xc0, 25 => 0xc6, 26 => 0xc7, 27 => 0x135, 28 => 0x7b, 29 => 0x13a, 69 => 0xae, 79 => 0x9, 103 => 0x10ae, 133 => 0x1005, 145 => 0x846, 163 => 'ColorTemperature', 189 => [0x6e,0x49], 190 => 0x3f, 191 => [0x39,0x5e], 193 => 0x10b, 196 => [0x3c,0x4c,0x4e], 349 => 0x321, 390 => 0x50, 422 => 0x1308, 456 => 0xb021, 521 => 'Temperature', 523 => 'Temperature' }, - 'colortemperatureadj' => { 493 => 0x8013 }, + 'colortemperature' => { 1 => 0x2d, 7 => 0x73, 8 => [0x48,0x4e], 9 => 0xc0, 10 => 0x37, 11 => 0x62, 12 => 0x37, 13 => 0x7c, 14 => 0x73, 15 => 0x73, 16 => 0x77, 17 => 0x73, 18 => 0x7c, 19 => 0x58, 20 => 0x73, 21 => 0xc0, 22 => 0x7f, 23 => 0x7d, 24 => 0xc0, 25 => 0xc6, 26 => 0xc7, 27 => 0x135, 28 => 0x7b, 29 => 0x13a, 69 => 0xae, 79 => 0x9, 103 => 0x10ae, 133 => 0x1005, 145 => 0x846, 163 => 'ColorTemperature', 189 => [0x6e,0x49], 190 => 0x3f, 191 => [0x39,0x5e], 193 => 0x10b, 196 => [0x3c,0x4c,0x4e], 349 => 0x321, 390 => 0x50, 424 => 0x1308, 458 => 0xb021, 523 => 'Temperature', 525 => 'Temperature' }, + 'colortemperatureadj' => { 495 => 0x8013 }, 'colortemperatureauto' => { 243 => 0x4f }, 'colortemperaturebg' => { 335 => 0x1013 }, - 'colortemperaturecustom' => { 442 => 0xc, 443 => 0xb }, + 'colortemperaturecustom' => { 444 => 0xc, 445 => 0xb }, 'colortemperaturerg' => { 335 => 0x1014 }, - 'colortemperatureset' => { 442 => 0x7, 443 => 0x6 }, - 'colortemperaturesetting' => { 191 => 0x25, 444 => 0x17, 461 => 0xe }, + 'colortemperatureset' => { 444 => 0x7, 445 => 0x6 }, + 'colortemperaturesetting' => { 191 => 0x25, 446 => 0x17, 463 => 0xe }, 'colortempflash' => { 41 => 0x36, 42 => 0x57, 43 => 0x40, 44 => 0xb8, 45 => 0xef, 46 => 0x8b, 47 => 0x49, 48 => 0x70, 51 => 0x89, 52 => 0xa2, 53 => 0xa7, 54 => 0xaa, 390 => 0x5a }, 'colortempflashdata' => { 48 => 0x24a }, 'colortempfluorescent' => { 41 => 0x2c, 42 => 0x47, 43 => 0x3b, 44 => 0xae, 45 => 0xe5, 46 => 0x86, 47 => 0x3f, 48 => 0x66, 51 => 0x7f, 52 => 0x98, 53 => 0x9d, 54 => 0xa0 }, 'colortempfluorescentd' => { 390 => 0x57 }, 'colortempfluorescentn' => { 390 => 0x58 }, 'colortempfluorescentw' => { 390 => 0x59 }, - 'colortempkelvin' => { 41 => 0x31, 42 => 0x4f, 44 => 0xb3, 45 => 0xea, 47 => 0x44, 48 => 0x6b, 51 => 0x84, 52 => 0x9d, 53 => 0xa2, 54 => 0xa5, 354 => 0x44, 422 => 0x1307 }, + 'colortempkelvin' => { 41 => 0x31, 42 => 0x4f, 44 => 0xb3, 45 => 0xea, 47 => 0x44, 48 => 0x6b, 51 => 0x84, 52 => 0x9d, 53 => 0xa2, 54 => 0xa5, 354 => 0x44, 424 => 0x1307 }, 'colortempmeasured' => { 41 => 0xe, 42 => 0x17, 44 => 0x63, 45 => 0x77, 48 => 0x4d, 51 => 0x4d, 52 => 0x4d, 53 => 0x4d, 54 => 0x55 }, 'colortemppc1' => { 47 => 0x94, 48 => 0x75 }, 'colortemppc2' => { 47 => 0x99, 48 => 0x7a }, @@ -1913,42 +1916,42 @@ my %tagLookup = ( 'commanderinternalttlcompbuiltin' => { 318 => '20.1', 319 => '26.1' }, 'commanderinternalttlcompgroupa' => { 318 => '21.1', 319 => '27.1' }, 'commanderinternalttlcompgroupb' => { 318 => '22.1', 319 => '28.1' }, - 'comment' => { 0 => 0x2, 126 => 'Comment', 164 => 'Comment', 343 => 'Comment', 407 => "\xa9cmt", 409 => 'comment', 415 => "\xa9cmt" }, - 'compass' => { 425 => 0x4 }, - 'compatiblebrands' => { 409 => 'compatible_brands' }, - 'compatibleversion' => { 521 => 'CompatibleVersion', 523 => 'CompatibleVersion' }, - 'compilation' => { 407 => 'cpil' }, - 'compimageimagespersequence' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfImagesInSequences'] }, - 'compimagemaxexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfAll'] }, - 'compimagemaxexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfUsed'] }, - 'compimageminexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfAll'] }, - 'compimageminexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfUsed'] }, - 'compimagenumsequences' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfSequences'] }, - 'compimagesumexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfAll'] }, - 'compimagesumexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfUsed'] }, - 'compimagetotalexposureperiod' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesTotalExposurePeriod'] }, - 'compimagevalues' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesValues'] }, - 'complianceprofile' => { 540 => 'complianceProfile' }, - 'componentsconfiguration' => { 125 => 0x9101, 169 => 'Components', 527 => 'ComponentsConfiguration' }, + 'comment' => { 0 => 0x2, 126 => 'Comment', 164 => 'Comment', 343 => 'Comment', 408 => "\xa9cmt", 410 => 'comment', 416 => "\xa9cmt" }, + 'compass' => { 427 => 0x4 }, + 'compatiblebrands' => { 410 => 'compatible_brands' }, + 'compatibleversion' => { 523 => 'CompatibleVersion', 525 => 'CompatibleVersion' }, + 'compilation' => { 408 => 'cpil' }, + 'compimageimagespersequence' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfImagesInSequences'] }, + 'compimagemaxexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfAll'] }, + 'compimagemaxexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfUsed'] }, + 'compimageminexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfAll'] }, + 'compimageminexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfUsed'] }, + 'compimagenumsequences' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfSequences'] }, + 'compimagesumexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfAll'] }, + 'compimagesumexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfUsed'] }, + 'compimagetotalexposureperiod' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesTotalExposurePeriod'] }, + 'compimagevalues' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesValues'] }, + 'complianceprofile' => { 542 => 'complianceProfile' }, + 'componentsconfiguration' => { 125 => 0x9101, 169 => 'Components', 529 => 'ComponentsConfiguration' }, 'componentversion' => { 103 => 0x80c }, - 'composer' => { 186 => 'WM/Composer', 407 => ["\xa9com","\xa9wrt"], 415 => ["\xa9com","\xa9wrt"], 550 => 'composer' }, - 'composerid' => { 407 => 'cmID' }, - 'composerkeywords' => { 415 => "\xa9cok" }, - 'compositeimage' => { 125 => 0xa460, 528 => 'CompositeImage' }, - 'compositeimagecount' => { 125 => 0xa461, 528 => 'CompositeImageCount' }, - 'compositeimageexposuretimes' => { 125 => 0xa462, 528 => 'CompositeImageExposureTimes' }, - 'composition' => { 509 => 'Composition' }, + 'composer' => { 186 => 'WM/Composer', 408 => ["\xa9com","\xa9wrt"], 416 => ["\xa9com","\xa9wrt"], 552 => 'composer' }, + 'composerid' => { 408 => 'cmID' }, + 'composerkeywords' => { 416 => "\xa9cok" }, + 'compositeimage' => { 125 => 0xa460, 530 => 'CompositeImage' }, + 'compositeimagecount' => { 125 => 0xa461, 530 => 'CompositeImageCount' }, + 'compositeimageexposuretimes' => { 125 => 0xa462, 530 => 'CompositeImageExposureTimes' }, + 'composition' => { 511 => 'Composition' }, 'compositionadjust' => { 388 => '0.1' }, 'compositionadjustrotation' => { 388 => 0x7 }, 'compositionadjustx' => { 388 => 0x5 }, 'compositionadjusty' => { 388 => 0x6 }, - 'compressedbitsperpixel' => { 125 => 0x9102, 527 => 'CompressedBitsPerPixel' }, + 'compressedbitsperpixel' => { 125 => 0x9102, 529 => 'CompressedBitsPerPixel' }, 'compressedimagesize' => { 193 => 0x40, 335 => 0x40 }, - 'compression' => { 125 => 0x103, 359 => 0xb, 546 => 'Compression' }, + 'compression' => { 125 => 0x103, 359 => 0xb, 548 => 'Compression' }, 'compressionfactor' => { 330 => 0x50d }, 'compressionformat' => { 68 => 0x4 }, 'compressionratio' => { 169 => 'Compression', 335 => 0x1034 }, - 'compressorversion' => { 415 => 'CNCV' }, + 'compressorversion' => { 416 => 'CNCV' }, 'condadobvfactor' => { 145 => 0xf3e }, 'condadodaybvthresh' => { 145 => 0xf3c }, 'condadodayoffsets' => { 145 => 0xf42 }, @@ -1958,41 +1961,41 @@ my %tagLookup = ( 'condadoneurange' => { 145 => 0xf3d }, 'condadotunoffsets' => { 145 => 0xf43 }, 'condadotunthresh' => { 145 => 0xf40 }, - 'conductor' => { 186 => 'WM/Conductor', 407 => "\xa9con" }, - 'confidence' => { 504 => 'Confidence' }, - 'confidencelevel' => { 517 => 'ConfidenceLevel' }, - 'confidencemime' => { 504 => 'ConfidenceMime' }, + 'conductor' => { 186 => 'WM/Conductor', 408 => "\xa9con" }, + 'confidence' => { 506 => 'Confidence' }, + 'confidencelevel' => { 519 => 'ConfidenceLevel' }, + 'confidencemime' => { 506 => 'ConfidenceMime' }, 'constrainedcropheight' => { 114 => 0x266, 401 => 0xd6 }, 'constrainedcropwidth' => { 114 => 0x262, 401 => 0xd5 }, 'contact' => { 138 => 0x76 }, - 'contactinfo' => { 521 => 'ContactInfo', 523 => 'ContactInfo', 539 => 'contactInfo' }, - 'container' => { 497 => 'Container' }, - 'containerdirectory' => { 497 => [\'Container','ContainerDirectory'], 502 => 'Directory' }, - 'containerdirectoryitem' => { 497 => [\'Container','ContainerDirectoryItem'] }, - 'containerdirectoryitemdatauri' => { 497 => [\'Container','ContainerDirectoryItemDataURI'] }, - 'containerdirectoryitemlength' => { 497 => [\'Container','ContainerDirectoryItemLength'] }, - 'containerdirectoryitemmime' => { 497 => [\'Container','ContainerDirectoryItemMime'] }, - 'containerdirectoryitempadding' => { 497 => [\'Container','ContainerDirectoryItemPadding'] }, - 'containerformat' => { 535 => 'ContainerFormat' }, - 'containerformatidentifier' => { 535 => [\'ContainerFormat','ContainerFormatIdentifier'] }, - 'containerformatname' => { 535 => [\'ContainerFormat','ContainerFormatName'] }, - 'contentcreatedate' => { 407 => "\xa9day", 415 => ['@day',"\xa9day"] }, + 'contactinfo' => { 523 => 'ContactInfo', 525 => 'ContactInfo', 541 => 'contactInfo' }, + 'container' => { 499 => 'Container' }, + 'containerdirectory' => { 499 => [\'Container','ContainerDirectory'], 504 => 'Directory' }, + 'containerdirectoryitem' => { 499 => [\'Container','ContainerDirectoryItem'] }, + 'containerdirectoryitemdatauri' => { 499 => [\'Container','ContainerDirectoryItemDataURI'] }, + 'containerdirectoryitemlength' => { 499 => [\'Container','ContainerDirectoryItemLength'] }, + 'containerdirectoryitemmime' => { 499 => [\'Container','ContainerDirectoryItemMime'] }, + 'containerdirectoryitempadding' => { 499 => [\'Container','ContainerDirectoryItemPadding'] }, + 'containerformat' => { 537 => 'ContainerFormat' }, + 'containerformatidentifier' => { 537 => [\'ContainerFormat','ContainerFormatIdentifier'] }, + 'containerformatname' => { 537 => [\'ContainerFormat','ContainerFormatName'] }, + 'contentcreatedate' => { 408 => "\xa9day", 416 => ['@day',"\xa9day"] }, 'contentdistributor' => { 186 => 'WM/ContentDistributor' }, - 'contentdistributorid' => { 415 => 'cdis' }, - 'contentid' => { 415 => 'ccid' }, - 'contentidentifier' => { 1 => 0x11, 409 => 'content.identifier' }, + 'contentdistributorid' => { 416 => 'cdis' }, + 'contentid' => { 416 => 'ccid' }, + 'contentidentifier' => { 1 => 0x11, 410 => 'content.identifier' }, 'contentlocationcode' => { 138 => 0x1a }, 'contentlocationname' => { 138 => 0x1b }, - 'contenttype' => { 540 => 'contentType' }, + 'contenttype' => { 542 => 'contentType' }, 'continuousbracketing' => { 191 => 0x20 }, 'continuousdrive' => { 37 => 0x5 }, 'continuousmodedisplay' => { 325 => 0x55, 326 => 0x51, 327 => 0x51, 328 => 0x51 }, 'continuousmodeliveview' => { 323 => '77.2' }, 'continuousshootingspeed' => { 90 => 0x610 }, 'continuousshotlimit' => { 90 => 0x611 }, - 'contrast' => { 10 => 0x73, 12 => 0x75, 37 => 0xd, 118 => 0xc, 119 => [0x3012,0x20], 125 => [0xa408,0xfe54], 133 => [0x1004,0x1006], 163 => 'Contrast', 183 => 'Contrast', 188 => 0x20, 189 => 0x31, 190 => 0x27, 191 => 0x19, 196 => 0x2, 260 => 0x33, 261 => 0x37, 262 => 0x3f, 335 => 0x1029, 354 => 0x39, 356 => 0x300a, 390 => 0x20, 397 => 0xc, 409 => 'player.movie.visual.contrast', 416 => 0x24, 418 => 0x52, 422 => 0x1012, 432 => 0xd, 442 => 0x1d, 443 => 0x1a, 456 => 0x2004, 521 => 'Contrast', 523 => 'Contrast', 527 => 'Contrast' }, - 'contrast2012' => { 521 => 'Contrast2012', 523 => 'Contrast2012' }, - 'contrastadj' => { 109 => 0x20303, 114 => 0x115, 305 => 0x2c, 493 => 0x8017 }, + 'contrast' => { 10 => 0x73, 12 => 0x75, 37 => 0xd, 118 => 0xc, 119 => [0x3012,0x20], 125 => [0xa408,0xfe54], 133 => [0x1004,0x1006], 163 => 'Contrast', 183 => 'Contrast', 188 => 0x20, 189 => 0x31, 190 => 0x27, 191 => 0x19, 196 => 0x2, 260 => 0x33, 261 => 0x37, 262 => 0x3f, 335 => 0x1029, 354 => 0x39, 356 => 0x300a, 390 => 0x20, 397 => 0xc, 410 => 'player.movie.visual.contrast', 418 => 0x24, 420 => 0x52, 424 => 0x1012, 434 => 0xd, 444 => 0x1d, 445 => 0x1a, 458 => 0x2004, 523 => 'Contrast', 525 => 'Contrast', 529 => 'Contrast' }, + 'contrast2012' => { 523 => 'Contrast2012', 525 => 'Contrast2012' }, + 'contrastadj' => { 109 => 0x20303, 114 => 0x115, 305 => 0x2c, 495 => 0x8017 }, 'contrastauto' => { 76 => 0x90 }, 'contrastcurve' => { 243 => 0x8c }, 'contrastdetectaf' => { 200 => 0x4 }, @@ -2006,40 +2009,40 @@ my %tagLookup = ( 'contrastmonochrome' => { 19 => 0xed, 75 => 0x78, 76 => 0x78 }, 'contrastneutral' => { 19 => 0xeb, 75 => 0x48, 76 => 0x48 }, 'contrastportrait' => { 19 => 0xe9, 75 => 0x18, 76 => 0x18 }, - 'contrastsetting' => { 330 => 0x505, 338 => 0x1012, 444 => 0x10, 461 => 0x8 }, + 'contrastsetting' => { 330 => 0x505, 338 => 0x1012, 446 => 0x10, 463 => 0x8 }, 'contrastshadow' => { 390 => 0x6e }, 'contraststandard' => { 19 => 0xe8, 75 => 0x0, 76 => 0x0 }, 'contrastuserdef1' => { 19 => 0xee, 75 => 0x90, 76 => 0xa8 }, 'contrastuserdef2' => { 19 => 0xef, 75 => 0xa8, 76 => 0xc0 }, 'contrastuserdef3' => { 19 => 0xf0, 75 => 0xc0, 76 => 0xd8 }, - 'contributedmedia' => { 550 => 'contributedMedia' }, - 'contributedmediaduration' => { 550 => [\'contributedMedia','contributedMediaDuration'] }, - 'contributedmediadurationscale' => { 550 => [\'contributedMedia','contributedMediaDurationScale'] }, - 'contributedmediadurationvalue' => { 550 => [\'contributedMedia','contributedMediaDurationValue'] }, - 'contributedmediamanaged' => { 550 => [\'contributedMedia','contributedMediaManaged'] }, - 'contributedmediapath' => { 550 => [\'contributedMedia','contributedMediaPath'] }, - 'contributedmediastarttime' => { 550 => [\'contributedMedia','contributedMediaStartTime'] }, - 'contributedmediastarttimescale' => { 550 => [\'contributedMedia','contributedMediaStartTimeScale'] }, - 'contributedmediastarttimevalue' => { 550 => [\'contributedMedia','contributedMediaStartTimeValue'] }, - 'contributedmediatrack' => { 550 => [\'contributedMedia','contributedMediaTrack'] }, - 'contributedmediawebstatement' => { 550 => [\'contributedMedia','contributedMediaWebStatement'] }, - 'contributor' => { 524 => 'contributor', 535 => 'Contributor' }, - 'contributoridentifier' => { 535 => [\'Contributor','ContributorIdentifier'] }, - 'contributorname' => { 535 => [\'Contributor','ContributorName'] }, - 'contributorrole' => { 535 => [\'Contributor','ContributorRole'] }, + 'contributedmedia' => { 552 => 'contributedMedia' }, + 'contributedmediaduration' => { 552 => [\'contributedMedia','contributedMediaDuration'] }, + 'contributedmediadurationscale' => { 552 => [\'contributedMedia','contributedMediaDurationScale'] }, + 'contributedmediadurationvalue' => { 552 => [\'contributedMedia','contributedMediaDurationValue'] }, + 'contributedmediamanaged' => { 552 => [\'contributedMedia','contributedMediaManaged'] }, + 'contributedmediapath' => { 552 => [\'contributedMedia','contributedMediaPath'] }, + 'contributedmediastarttime' => { 552 => [\'contributedMedia','contributedMediaStartTime'] }, + 'contributedmediastarttimescale' => { 552 => [\'contributedMedia','contributedMediaStartTimeScale'] }, + 'contributedmediastarttimevalue' => { 552 => [\'contributedMedia','contributedMediaStartTimeValue'] }, + 'contributedmediatrack' => { 552 => [\'contributedMedia','contributedMediaTrack'] }, + 'contributedmediawebstatement' => { 552 => [\'contributedMedia','contributedMediaWebStatement'] }, + 'contributor' => { 526 => 'contributor', 537 => 'Contributor' }, + 'contributoridentifier' => { 537 => [\'Contributor','ContributorIdentifier'] }, + 'contributorname' => { 537 => [\'Contributor','ContributorName'] }, + 'contributorrole' => { 537 => [\'Contributor','ContributorRole'] }, 'contributors' => { 164 => 'Contributors' }, 'controldialset' => { 191 => 0x46 }, - 'controlledvocabularyterm' => { 535 => 'CVterm' }, + 'controlledvocabularyterm' => { 537 => 'CVterm' }, 'controllerboardversion' => { 349 => 0x332 }, 'controlmode' => { 82 => 0x12 }, 'controlringresponse' => { 325 => 0x1cf, 326 => 0x1d5, 327 => 0x1d5, 328 => 0x1ed }, 'controlringrotation' => { 90 => 0x712 }, 'conversionlens' => { 331 => 0x403, 354 => 0x35 }, - 'converter' => { 125 => 0xfe4d, 291 => 0xb, 521 => 'Converter', 523 => 'Converter' }, - 'converttograyscale' => { 521 => 'ConvertToGrayscale', 523 => 'ConvertToGrayscale' }, - 'cookingequipment' => { 542 => 'cookingEquipment' }, - 'cookingmethod' => { 542 => 'cookingMethod' }, - 'copyright' => { 0 => 0x3, 125 => 0x8298, 164 => 'Copyright', 343 => 'Copyright', 359 => 0x8298, 390 => 0x22f, 406 => 'Copyright', 407 => ['cprt',"\xa9cpy"], 409 => 'copyright', 415 => ['cprt',"\xa9cpy"], 521 => 'Copyright', 523 => 'Copyright', 537 => 'Copyright', 543 => 'copyright', 546 => 'Copyright', 550 => 'copyright' }, + 'converter' => { 125 => 0xfe4d, 291 => 0xb, 523 => 'Converter', 525 => 'Converter' }, + 'converttograyscale' => { 523 => 'ConvertToGrayscale', 525 => 'ConvertToGrayscale' }, + 'cookingequipment' => { 544 => 'cookingEquipment' }, + 'cookingmethod' => { 544 => 'cookingMethod' }, + 'copyright' => { 0 => 0x3, 125 => 0x8298, 164 => 'Copyright', 343 => 'Copyright', 359 => 0x8298, 390 => 0x22f, 406 => 'Copyright', 408 => ['cprt',"\xa9cpy"], 410 => 'copyright', 416 => ['cprt',"\xa9cpy"], 523 => 'Copyright', 525 => 'Copyright', 539 => 'Copyright', 545 => 'copyright', 548 => 'Copyright', 552 => 'copyright' }, 'copyrightflag' => { 404 => 0x40a }, 'copyrightnotice' => { 138 => 0x74 }, 'copyrightowner' => { 340 => 'CopyrightOwner' }, @@ -2048,70 +2051,70 @@ my %tagLookup = ( 'copyrightownername' => { 340 => [\'CopyrightOwner','CopyrightOwnerCopyrightOwnerName'] }, 'copyrightregistrationnumber' => { 340 => 'CopyrightRegistrationNumber' }, 'copyrightstatus' => { 340 => 'CopyrightStatus' }, - 'copyrightyear' => { 535 => 'CopyrightYear', 540 => 'copyrightYear' }, + 'copyrightyear' => { 537 => 'CopyrightYear', 542 => 'copyrightYear' }, 'coringfilter' => { 334 => 0x310, 335 => 0x102d, 338 => 0x310 }, 'coringvalues' => { 334 => 0x311, 338 => 0x311 }, - 'corporateentity' => { 540 => 'corporateEntity' }, + 'corporateentity' => { 542 => 'corporateEntity' }, 'correctionalreadyapplied' => { 344 => 'CorrectionAlreadyApplied' }, 'correlatedcolortemp' => { 353 => 0x35b }, - 'country' => { 168 => 'Country', 354 => 0x69, 538 => 'Country' }, + 'country' => { 168 => 'Country', 354 => 0x69, 540 => 'Country' }, 'country-primarylocationcode' => { 138 => 0x64 }, 'country-primarylocationname' => { 138 => 0x65 }, - 'countrycode' => { 242 => 0x5, 402 => 'CountryCode', 534 => 'CountryCode' }, - 'course' => { 542 => 'course' }, - 'coverage' => { 524 => 'coverage' }, - 'coverart' => { 407 => 'covr' }, - 'coverdate' => { 540 => 'coverDate' }, - 'coverdisplaydate' => { 540 => 'coverDisplayDate' }, - 'coveruri' => { 415 => 'cvru' }, + 'countrycode' => { 242 => 0x5, 402 => 'CountryCode', 536 => 'CountryCode' }, + 'course' => { 544 => 'course' }, + 'coverage' => { 526 => 'coverage' }, + 'coverart' => { 408 => 'covr' }, + 'coverdate' => { 542 => 'coverDate' }, + 'coverdisplaydate' => { 542 => 'coverDisplayDate' }, + 'coveruri' => { 416 => 'cvru' }, 'cpufirmwareversion' => { 390 => 0x28 }, - 'crc32' => { 525 => 'crc32' }, - 'createdate' => { 125 => 0x9004, 164 => 'CreateDate', 339 => 'CreationDate', 343 => 'create-date', 406 => 'CreationDate', 412 => 0x1, 548 => 'CreateDate' }, - 'creationdate' => { 409 => 'creationdate', 537 => 'CreationDate', 540 => 'creationDate' }, - 'creationtime' => { 343 => 'Creation Time', 409 => 'creation_time' }, - 'creativestyle' => { 442 => 0x1a, 443 => 0x18, 453 => 0x41, 456 => 0xb020, 488 => 0x4a }, - 'creativestylesetting' => { 444 => 0xf, 461 => 0x7 }, - 'creativestylewaschanged' => { 493 => 0x8001 }, - 'creator' => { 339 => 'Creator', 406 => 'Creator', 524 => 'creator', 535 => 'Creator', 537 => 'Creator' }, - 'creatoraddress' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrExtadr'] }, + 'crc32' => { 527 => 'crc32' }, + 'createdate' => { 125 => 0x9004, 164 => 'CreateDate', 339 => 'CreationDate', 343 => 'create-date', 406 => 'CreationDate', 413 => 0x1, 550 => 'CreateDate' }, + 'creationdate' => { 410 => 'creationdate', 539 => 'CreationDate', 542 => 'creationDate' }, + 'creationtime' => { 343 => 'Creation Time', 410 => 'creation_time' }, + 'creativestyle' => { 444 => 0x1a, 445 => 0x18, 455 => 0x41, 458 => 0xb020, 490 => 0x4a }, + 'creativestylesetting' => { 446 => 0xf, 463 => 0x7 }, + 'creativestylewaschanged' => { 495 => 0x8001 }, + 'creator' => { 339 => 'Creator', 406 => 'Creator', 526 => 'creator', 537 => 'Creator', 539 => 'Creator' }, + 'creatoraddress' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrExtadr'] }, 'creatorappid' => { 185 => 'CreatorAppId' }, - 'creatorcity' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCity'] }, - 'creatorcontactinfo' => { 534 => 'CreatorContactInfo' }, - 'creatorcountry' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCtry'] }, - 'creatoridentifier' => { 535 => [\'Creator','CreatorIdentifier'] }, + 'creatorcity' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCity'] }, + 'creatorcontactinfo' => { 536 => 'CreatorContactInfo' }, + 'creatorcountry' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCtry'] }, + 'creatoridentifier' => { 537 => [\'Creator','CreatorIdentifier'] }, 'creatoridentity' => { 402 => 'CreatorIdentity' }, - 'creatorname' => { 535 => [\'Creator','CreatorName'] }, + 'creatorname' => { 537 => [\'Creator','CreatorName'] }, 'creatoropenwithuioptions' => { 185 => 'CreatorOpenWithUIOptions' }, - 'creatorpostalcode' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrPcode'] }, - 'creatorregion' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrRegion'] }, - 'creatorrole' => { 535 => [\'Creator','CreatorRole'] }, - 'creatortool' => { 548 => 'CreatorTool' }, - 'creatorworkemail' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiEmailWork'] }, - 'creatorworktelephone' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiTelWork'] }, - 'creatorworkurl' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiUrlWork'] }, - 'credit' => { 138 => 0x6e, 538 => 'Credit' }, - 'creditline' => { 543 => 'creditLine' }, - 'creditlinereq' => { 553 => 'CreditLineReq' }, + 'creatorpostalcode' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrPcode'] }, + 'creatorregion' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrRegion'] }, + 'creatorrole' => { 537 => [\'Creator','CreatorRole'] }, + 'creatortool' => { 550 => 'CreatorTool' }, + 'creatorworkemail' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiEmailWork'] }, + 'creatorworktelephone' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiTelWork'] }, + 'creatorworkurl' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiUrlWork'] }, + 'credit' => { 138 => 0x6e, 540 => 'Credit' }, + 'creditline' => { 545 => 'creditLine' }, + 'creditlinereq' => { 555 => 'CreditLineReq' }, 'creditlinerequired' => { 340 => 'CreditLineRequired' }, 'cropactive' => { 107 => 0x0, 114 => 0x244 }, - 'cropangle' => { 107 => 0x8, 521 => 'CropAngle', 523 => 'CropAngle' }, - 'croparea' => { 243 => 0x45, 493 => 0x9011 }, + 'cropangle' => { 107 => 0x8, 523 => 'CropAngle', 525 => 'CropAngle' }, + 'croparea' => { 243 => 0x45, 495 => 0x9011 }, 'cropaspectratio' => { 109 => 0x30101, 114 => 0x260 }, 'cropaspectratiocustom' => { 109 => 0x30102 }, - 'cropbottom' => { 129 => 0x9, 297 => 0x36, 359 => 0x31, 401 => 0xdc, 521 => 'CropBottom', 523 => 'CropBottom' }, + 'cropbottom' => { 129 => 0x9, 297 => 0x36, 359 => 0x31, 401 => 0xdc, 523 => 'CropBottom', 525 => 'CropBottom' }, 'cropbottommargin' => { 57 => 0x3 }, 'cropcircleactive' => { 115 => 0xd6 }, 'cropcircleradius' => { 115 => 0xd9 }, 'cropcirclex' => { 115 => 0xd7 }, 'cropcircley' => { 115 => 0xd8 }, - 'cropconstraintowarp' => { 521 => 'CropConstrainToWarp', 523 => 'CropConstrainToWarp' }, + 'cropconstraintowarp' => { 523 => 'CropConstrainToWarp', 525 => 'CropConstrainToWarp' }, 'cropflag' => { 133 => 0x1051 }, - 'croph' => { 514 => 'CropH' }, - 'cropheight' => { 107 => 0x6, 114 => 0x24c, 334 => 0x615, 338 => 0x615, 521 => 'CropHeight', 523 => 'CropHeight' }, + 'croph' => { 516 => 'CropH' }, + 'cropheight' => { 107 => 0x6, 114 => 0x24c, 334 => 0x615, 338 => 0x615, 523 => 'CropHeight', 525 => 'CropHeight' }, 'crophispeed' => { 243 => 0x1b }, - 'cropleft' => { 114 => 0x246, 129 => 0x6, 297 => 0x1e, 334 => 0x612, 338 => 0x612, 359 => 0x30, 401 => 0xd9, 521 => 'CropLeft', 523 => 'CropLeft' }, + 'cropleft' => { 114 => 0x246, 129 => 0x6, 297 => 0x1e, 334 => 0x612, 338 => 0x612, 359 => 0x30, 401 => 0xd9, 523 => 'CropLeft', 525 => 'CropLeft' }, 'cropleftmargin' => { 57 => 0x0 }, - 'cropmode' => { 133 => 0x104d, 422 => 0x1018 }, + 'cropmode' => { 133 => 0x104d, 424 => 0x1018 }, 'croporiginalheight' => { 107 => 0xb }, 'croporiginalwidth' => { 107 => 0xa }, 'cropoutputheight' => { 297 => 0xce }, @@ -2121,16 +2124,16 @@ my %tagLookup = ( 'cropoutputscale' => { 297 => 0xbe }, 'cropoutputwidth' => { 297 => 0xc6 }, 'cropoutputwidthinches' => { 297 => 0x8e }, - 'croppedareaimageheightpixels' => { 507 => 'CroppedAreaImageHeightPixels', 508 => 'CroppedAreaImageHeightPixels' }, - 'croppedareaimagewidthpixels' => { 507 => 'CroppedAreaImageWidthPixels', 508 => 'CroppedAreaImageWidthPixels' }, - 'croppedarealeftpixels' => { 507 => 'CroppedAreaLeftPixels', 508 => 'CroppedAreaLeftPixels' }, - 'croppedareatoppixels' => { 507 => 'CroppedAreaTopPixels', 508 => 'CroppedAreaTopPixels' }, - 'croppedimageheight' => { 5 => 0x2, 422 => 0x1604 }, + 'croppedareaimageheightpixels' => { 509 => 'CroppedAreaImageHeightPixels', 510 => 'CroppedAreaImageHeightPixels' }, + 'croppedareaimagewidthpixels' => { 509 => 'CroppedAreaImageWidthPixels', 510 => 'CroppedAreaImageWidthPixels' }, + 'croppedarealeftpixels' => { 509 => 'CroppedAreaLeftPixels', 510 => 'CroppedAreaLeftPixels' }, + 'croppedareatoppixels' => { 509 => 'CroppedAreaTopPixels', 510 => 'CroppedAreaTopPixels' }, + 'croppedimageheight' => { 5 => 0x2, 424 => 0x1604 }, 'croppedimageleft' => { 5 => 0x3 }, 'croppedimagetop' => { 5 => 0x4 }, - 'croppedimagewidth' => { 5 => 0x1, 422 => 0x1603 }, - 'cropping' => { 493 => 0x9010 }, - 'cropright' => { 129 => 0x8, 297 => 0x2e, 359 => 0x32, 401 => 0xdb, 521 => 'CropRight', 523 => 'CropRight' }, + 'croppedimagewidth' => { 5 => 0x1, 424 => 0x1603 }, + 'cropping' => { 495 => 0x9010 }, + 'cropright' => { 129 => 0x8, 297 => 0x2e, 359 => 0x32, 401 => 0xdb, 523 => 'CropRight', 525 => 'CropRight' }, 'croprightmargin' => { 57 => 0x1 }, 'croprotatedoriginalheight' => { 107 => 0x2 }, 'croprotatedoriginalwidth' => { 107 => 0x1 }, @@ -2138,31 +2141,31 @@ my %tagLookup = ( 'cropscaledresolution' => { 297 => 0x9e }, 'cropsize' => { 133 => 0x1053 }, 'cropsourceresolution' => { 297 => 0xae }, - 'croptop' => { 114 => 0x248, 129 => 0x7, 297 => 0x26, 334 => 0x613, 338 => 0x613, 359 => 0x2f, 401 => 0xda, 521 => 'CropTop', 523 => 'CropTop' }, + 'croptop' => { 114 => 0x248, 129 => 0x7, 297 => 0x26, 334 => 0x613, 338 => 0x613, 359 => 0x2f, 401 => 0xda, 523 => 'CropTop', 525 => 'CropTop' }, 'croptopleft' => { 133 => 0x1052 }, 'croptopmargin' => { 57 => 0x2 }, - 'cropunit' => { 521 => 'CropUnit', 523 => 'CropUnit' }, - 'cropunits' => { 521 => 'CropUnits', 523 => 'CropUnits' }, - 'cropw' => { 514 => 'CropW' }, - 'cropwidth' => { 107 => 0x5, 114 => 0x24a, 334 => 0x614, 338 => 0x614, 521 => 'CropWidth', 523 => 'CropWidth' }, - 'cropx' => { 107 => 0x3, 514 => 'CropX' }, - 'cropy' => { 107 => 0x4, 514 => 'CropY' }, + 'cropunit' => { 523 => 'CropUnit', 525 => 'CropUnit' }, + 'cropunits' => { 523 => 'CropUnits', 525 => 'CropUnits' }, + 'cropw' => { 516 => 'CropW' }, + 'cropwidth' => { 107 => 0x5, 114 => 0x24a, 334 => 0x614, 338 => 0x614, 523 => 'CropWidth', 525 => 'CropWidth' }, + 'cropx' => { 107 => 0x3, 516 => 'CropX' }, + 'cropy' => { 107 => 0x4, 516 => 'CropY' }, 'crossprocess' => { 390 => 0x7b }, 'crossprocessparams' => { 390 => 0x235 }, - 'cuisine' => { 542 => 'cuisine' }, + 'cuisine' => { 544 => 'cuisine' }, 'currenticcprofile' => { 125 => 0xc691 }, 'currentpreprofilematrix' => { 125 => 0xc692 }, - 'currentversion' => { 493 => 0xd000 }, - 'curve0x' => { 514 => 'Curve0x' }, - 'curve0y' => { 514 => 'Curve0y' }, - 'curve1x' => { 514 => 'Curve1x' }, - 'curve1y' => { 514 => 'Curve1y' }, - 'curve2x' => { 514 => 'Curve2x' }, - 'curve2y' => { 514 => 'Curve2y' }, - 'curve3x' => { 514 => 'Curve3x' }, - 'curve3y' => { 514 => 'Curve3y' }, - 'curve4x' => { 514 => 'Curve4x' }, - 'curve4y' => { 514 => 'Curve4y' }, + 'currentversion' => { 495 => 0xd000 }, + 'curve0x' => { 516 => 'Curve0x' }, + 'curve0y' => { 516 => 'Curve0y' }, + 'curve1x' => { 516 => 'Curve1x' }, + 'curve1y' => { 516 => 'Curve1y' }, + 'curve2x' => { 516 => 'Curve2x' }, + 'curve2y' => { 516 => 'Curve2y' }, + 'curve3x' => { 516 => 'Curve3x' }, + 'curve3y' => { 516 => 'Curve3y' }, + 'curve4x' => { 516 => 'Curve4x' }, + 'curve4y' => { 516 => 'Curve4y' }, 'curves' => { 302 => 0x76a43201 }, 'custom1' => { 340 => 'Custom1' }, 'custom10' => { 340 => 'Custom10' }, @@ -2192,7 +2195,7 @@ my %tagLookup = ( 'customrawhighlightpoint' => { 115 => 0x51 }, 'customrawshadow' => { 115 => 0x85 }, 'customrawshadowpoint' => { 115 => 0x52 }, - 'customrendered' => { 125 => 0xa401, 198 => 0x6420, 527 => 'CustomRendered' }, + 'customrendered' => { 125 => 0xa401, 198 => 0x6420, 529 => 'CustomRendered' }, 'customsaturation' => { 115 => 0x4d, 330 => 0x503 }, 'customsettingsalldefault' => { 309 => '0.2', 318 => '0.2' }, 'customsettingsbank' => { 309 => '0.1', 310 => '0.1', 312 => '0.1', 313 => '0.1', 318 => '0.1', 322 => '0.2', 323 => '0.2', 326 => 0x1, 327 => 0x1, 328 => 0x1 }, @@ -2200,15 +2203,15 @@ my %tagLookup = ( 'customunsharpmaskfineness' => { 115 => 0xb8 }, 'customunsharpmaskstrength' => { 115 => 0xb6 }, 'customunsharpmaskthreshold' => { 115 => 0xba }, - 'customwb_rblevels' => { 461 => 0x1a }, - 'customwb_rgblevels' => { 443 => 0x8, 444 => 0x19 }, + 'customwb_rblevels' => { 463 => 0x1a }, + 'customwb_rgblevels' => { 445 => 0x8, 446 => 0x19 }, 'customwbbluelevel' => { 191 => 0x36 }, 'customwberror' => { 191 => 0x37 }, 'customwbgreenlevel' => { 191 => 0x35 }, 'customwbredlevel' => { 191 => 0x34 }, 'customwbsetting' => { 191 => 0x26 }, - 'cx' => { 415 => '_cx_' }, - 'cy' => { 415 => '_cy_' }, + 'cx' => { 416 => '_cx_' }, + 'cy' => { 416 => '_cy_' }, 'd-lightinghq' => { 302 => 0x2175eb78 }, 'd-lightinghqcolorboost' => { 298 => 0x2 }, 'd-lightinghqhighlight' => { 298 => 0x1 }, @@ -2217,10 +2220,10 @@ my %tagLookup = ( 'd-lightinghs' => { 302 => 0xce5554aa }, 'd-lightinghsadjustment' => { 299 => 0x0 }, 'd-lightinghscolorboost' => { 299 => 0x1 }, - 'd-rangeoptimizerhighlight' => { 493 => 0x8024 }, - 'd-rangeoptimizermode' => { 493 => 0x8022 }, - 'd-rangeoptimizershadow' => { 493 => 0x802d }, - 'd-rangeoptimizervalue' => { 493 => 0x8023 }, + 'd-rangeoptimizerhighlight' => { 495 => 0x8024 }, + 'd-rangeoptimizermode' => { 495 => 0x8022 }, + 'd-rangeoptimizershadow' => { 495 => 0x802d }, + 'd-rangeoptimizervalue' => { 495 => 0x8023 }, 'darkblacksegrows' => { 145 => 0x18d8 }, 'darkfocusenvironment' => { 354 => 0x8003 }, 'darkframecountfactor' => { 145 => 0xc85 }, @@ -2230,32 +2233,32 @@ my %tagLookup = ( 'datacompressionmethod' => { 140 => 0x6e }, 'dataimprint' => { 188 => 0x34 }, 'datamining' => { 340 => 'DataMining' }, - 'dataonscreen' => { 535 => 'DataOnScreen' }, - 'dataonscreenregion' => { 535 => [\'DataOnScreen','DataOnScreenRegion'] }, - 'dataonscreenregiond' => { 535 => [\'DataOnScreen','DataOnScreenRegionD'] }, - 'dataonscreenregionh' => { 535 => [\'DataOnScreen','DataOnScreenRegionH'] }, - 'dataonscreenregiontext' => { 535 => [\'DataOnScreen','DataOnScreenRegionText'] }, - 'dataonscreenregionunit' => { 535 => [\'DataOnScreen','DataOnScreenRegionUnit'] }, - 'dataonscreenregionw' => { 535 => [\'DataOnScreen','DataOnScreenRegionW'] }, - 'dataonscreenregionx' => { 535 => [\'DataOnScreen','DataOnScreenRegionX'] }, - 'dataonscreenregiony' => { 535 => [\'DataOnScreen','DataOnScreenRegionY'] }, + 'dataonscreen' => { 537 => 'DataOnScreen' }, + 'dataonscreenregion' => { 537 => [\'DataOnScreen','DataOnScreenRegion'] }, + 'dataonscreenregiond' => { 537 => [\'DataOnScreen','DataOnScreenRegionD'] }, + 'dataonscreenregionh' => { 537 => [\'DataOnScreen','DataOnScreenRegionH'] }, + 'dataonscreenregiontext' => { 537 => [\'DataOnScreen','DataOnScreenRegionText'] }, + 'dataonscreenregionunit' => { 537 => [\'DataOnScreen','DataOnScreenRegionUnit'] }, + 'dataonscreenregionw' => { 537 => [\'DataOnScreen','DataOnScreenRegionW'] }, + 'dataonscreenregionx' => { 537 => [\'DataOnScreen','DataOnScreenRegionX'] }, + 'dataonscreenregiony' => { 537 => [\'DataOnScreen','DataOnScreenRegionY'] }, 'datascaling' => { 390 => 0x3d }, - 'date' => { 390 => 0x6, 524 => 'date' }, + 'date' => { 390 => 0x6, 526 => 'date' }, 'dateacquired' => { 185 => 'DateAcquired', 186 => '{2CBAA8F5-D81F-47CA-B17A-F8D822300131} 100' }, - 'datecreated' => { 138 => 0x37, 538 => 'DateCreated' }, + 'datecreated' => { 138 => 0x37, 540 => 'DateCreated' }, 'datedisplayformat' => { 294 => 0x3 }, 'dateidentified' => { 124 => [\'Identification','IdentificationDateIdentified'] }, 'dateimprint' => { 314 => '4.2' }, - 'daterecieved' => { 540 => 'dateRecieved' }, + 'daterecieved' => { 542 => 'dateRecieved' }, 'datesent' => { 139 => 0x46 }, 'datestampmode' => { 69 => 0x1c, 243 => 0x9d }, - 'datetime' => { 515 => 'datetime', 546 => 'DateTime' }, - 'datetimedigitized' => { 527 => 'DateTimeDigitized' }, - 'datetimeoriginal' => { 106 => 0x0, 125 => 0x9003, 161 => 0x14, 164 => 'OriginalDate', 410 => 'IDIT', 415 => 'date', 416 => 0xb, 417 => 0x3b, 418 => 0x3e, 527 => 'DateTimeOriginal' }, + 'datetime' => { 517 => 'datetime', 548 => 'DateTime' }, + 'datetimedigitized' => { 529 => 'DateTimeDigitized' }, + 'datetimeoriginal' => { 106 => 0x0, 125 => 0x9003, 161 => 0x14, 164 => 'OriginalDate', 411 => 'IDIT', 416 => 'date', 418 => 0xb, 419 => 0x3b, 420 => 0x3e, 529 => 'DateTimeOriginal' }, 'datetimestamp' => { 147 => 0x64 }, 'datetimeutc' => { 330 => 0x908 }, 'daylightsavings' => { 83 => 0x3, 294 => 0x2 }, - 'dayofweek' => { 417 => 0x42, 418 => 0x4a }, + 'dayofweek' => { 419 => 0x42, 420 => 0x4a }, 'dccontinent' => { 124 => [\'dctermsLocation','dctermsLocationContinent'] }, 'dccoordinateprecision' => { 124 => [\'dctermsLocation','dctermsLocationCoordinatePrecision'] }, 'dccoordinateuncertaintyinmeters' => { 124 => [\'dctermsLocation','dctermsLocationCoordinateUncertaintyInMeters'] }, @@ -2305,173 +2308,173 @@ my %tagLookup = ( 'dcwaterbody' => { 124 => [\'dctermsLocation','dctermsLocationWaterBody'] }, 'declination' => { 172 => 'Declination' }, 'decposition' => { 188 => 0x32 }, - 'defaultautogray' => { 521 => 'DefaultAutoGray', 523 => 'DefaultAutoGray' }, - 'defaultautotone' => { 521 => 'DefaultAutoTone', 523 => 'DefaultAutoTone' }, + 'defaultautogray' => { 523 => 'DefaultAutoGray', 525 => 'DefaultAutoGray' }, + 'defaultautotone' => { 523 => 'DefaultAutoTone', 525 => 'DefaultAutoTone' }, 'defaultblackrender' => { 125 => 0xc7a6 }, 'defaultcroporigin' => { 125 => 0xc61f }, 'defaultcropsize' => { 125 => 0xc620 }, 'defaulteraseoption' => { 90 => 0x813 }, 'defaultscale' => { 125 => 0xc61e }, - 'defaultsspecifictoiso' => { 521 => 'DefaultsSpecificToISO', 523 => 'DefaultsSpecificToISO' }, - 'defaultsspecifictoserial' => { 521 => 'DefaultsSpecificToSerial', 523 => 'DefaultsSpecificToSerial' }, + 'defaultsspecifictoiso' => { 523 => 'DefaultsSpecificToISO', 525 => 'DefaultsSpecificToISO' }, + 'defaultsspecifictoserial' => { 523 => 'DefaultsSpecificToSerial', 525 => 'DefaultsSpecificToSerial' }, 'defaultusercrop' => { 125 => 0xc7b5 }, 'defectisocode' => { 145 => 0x90f }, - 'defringe' => { 521 => 'Defringe', 523 => 'Defringe' }, - 'defringegreenamount' => { 521 => 'DefringeGreenAmount', 523 => 'DefringeGreenAmount' }, - 'defringegreenhuehi' => { 521 => 'DefringeGreenHueHi', 523 => 'DefringeGreenHueHi' }, - 'defringegreenhuelo' => { 521 => 'DefringeGreenHueLo', 523 => 'DefringeGreenHueLo' }, - 'defringepurpleamount' => { 521 => 'DefringePurpleAmount', 523 => 'DefringePurpleAmount' }, - 'defringepurplehuehi' => { 521 => 'DefringePurpleHueHi', 523 => 'DefringePurpleHueHi' }, - 'defringepurplehuelo' => { 521 => 'DefringePurpleHueLo', 523 => 'DefringePurpleHueLo' }, - 'dehaze' => { 521 => 'Dehaze', 523 => 'Dehaze' }, + 'defringe' => { 523 => 'Defringe', 525 => 'Defringe' }, + 'defringegreenamount' => { 523 => 'DefringeGreenAmount', 525 => 'DefringeGreenAmount' }, + 'defringegreenhuehi' => { 523 => 'DefringeGreenHueHi', 525 => 'DefringeGreenHueHi' }, + 'defringegreenhuelo' => { 523 => 'DefringeGreenHueLo', 525 => 'DefringeGreenHueLo' }, + 'defringepurpleamount' => { 523 => 'DefringePurpleAmount', 525 => 'DefringePurpleAmount' }, + 'defringepurplehuehi' => { 523 => 'DefringePurpleHueHi', 525 => 'DefringePurpleHueHi' }, + 'defringepurplehuelo' => { 523 => 'DefringePurpleHueLo', 525 => 'DefringePurpleHueLo' }, + 'dehaze' => { 523 => 'Dehaze', 525 => 'Dehaze' }, 'deletedimagecount' => { 243 => 0xa6, 273 => 0x6e }, - 'deprecatedon' => { 519 => 'deprecatedOn' }, - 'depthbasedcorrcorrectionactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'] }, - 'depthbasedcorrcorrectionamount' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'] }, - 'depthbasedcorrcorrectionsyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'] }, - 'depthbasedcorrections' => { 521 => 'DepthBasedCorrections', 523 => 'DepthBasedCorrections' }, - 'depthbasedcorrlocalcorrecteddepth' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'] }, - 'depthbasedcorrlocalcurverefinesaturation' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'] }, - 'depthbasedcorrmask' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'] }, - 'depthbasedcorrmaskalpha' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'] }, - 'depthbasedcorrmaskangle' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'] }, - 'depthbasedcorrmaskbottom' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'] }, - 'depthbasedcorrmaskcentervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'] }, - 'depthbasedcorrmaskcenterweight' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'depthbasedcorrmaskdabs' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'] }, - 'depthbasedcorrmaskfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'] }, - 'depthbasedcorrmaskflipped' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'] }, - 'depthbasedcorrmaskflow' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'] }, - 'depthbasedcorrmaskfullx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'] }, - 'depthbasedcorrmaskfully' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'] }, - 'depthbasedcorrmaskinputdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'] }, - 'depthbasedcorrmaskleft' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'] }, - 'depthbasedcorrmaskmaskactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'] }, - 'depthbasedcorrmaskmaskblendmode' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'depthbasedcorrmaskmaskdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'depthbasedcorrmaskmaskinverted' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'depthbasedcorrmaskmaskname' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'] }, - 'depthbasedcorrmaskmasks' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'] }, - 'depthbasedcorrmaskmasksalpha' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'depthbasedcorrmaskmasksangle' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'depthbasedcorrmaskmasksbottom' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'depthbasedcorrmaskmaskscentervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'depthbasedcorrmaskmaskscenterweight' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'depthbasedcorrmaskmasksdabs' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'depthbasedcorrmaskmasksfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'depthbasedcorrmaskmasksflipped' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'depthbasedcorrmaskmasksflow' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'depthbasedcorrmaskmasksfullx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'depthbasedcorrmaskmasksfully' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'depthbasedcorrmaskmasksinputdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'depthbasedcorrmaskmasksleft' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'depthbasedcorrmaskmasksmaskactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'depthbasedcorrmaskmasksmaskblendmode' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'depthbasedcorrmaskmasksmaskdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'depthbasedcorrmaskmasksmaskinverted' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'depthbasedcorrmaskmasksmaskname' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'depthbasedcorrmaskmasksmasksubtype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'depthbasedcorrmaskmasksmasksyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'depthbasedcorrmaskmasksmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'depthbasedcorrmaskmasksmidpoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'depthbasedcorrmaskmasksorigin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'depthbasedcorrmaskmasksperimetervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'depthbasedcorrmaskmasksradius' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'depthbasedcorrmaskmasksreferencepoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'depthbasedcorrmaskmasksright' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'] }, - 'depthbasedcorrmaskmasksroundness' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'depthbasedcorrmaskmaskssizex' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'depthbasedcorrmaskmaskssizey' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'depthbasedcorrmaskmaskstop' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'] }, - 'depthbasedcorrmaskmasksubtype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'depthbasedcorrmaskmasksvalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'depthbasedcorrmaskmasksversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'depthbasedcorrmaskmaskswhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'depthbasedcorrmaskmaskswholeimagearea' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'depthbasedcorrmaskmasksx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'] }, - 'depthbasedcorrmaskmasksy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'] }, - 'depthbasedcorrmaskmasksyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'depthbasedcorrmaskmaskszerox' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'depthbasedcorrmaskmaskszeroy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'depthbasedcorrmaskmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'depthbasedcorrmaskmidpoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'] }, - 'depthbasedcorrmaskorigin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'] }, - 'depthbasedcorrmaskperimetervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'depthbasedcorrmaskradius' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'] }, - 'depthbasedcorrmaskrange' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'depthbasedcorrmaskrangeareamodels' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'depthbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'depthbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'depthbasedcorrmaskrangecoloramount' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'depthbasedcorrmaskrangedepthfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'depthbasedcorrmaskrangedepthmax' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'depthbasedcorrmaskrangedepthmin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'depthbasedcorrmaskrangeinvert' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'depthbasedcorrmaskrangelumfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'depthbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'depthbasedcorrmaskrangelummax' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'depthbasedcorrmaskrangelummin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'depthbasedcorrmaskrangelumrange' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'depthbasedcorrmaskrangesampletype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'depthbasedcorrmaskrangetype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'depthbasedcorrmaskrangeversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'depthbasedcorrmaskreferencepoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'depthbasedcorrmaskright' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'] }, - 'depthbasedcorrmaskroundness' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'] }, - 'depthbasedcorrmasksizex' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'] }, - 'depthbasedcorrmasksizey' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'] }, - 'depthbasedcorrmasktop' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'] }, - 'depthbasedcorrmaskvalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'] }, - 'depthbasedcorrmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'] }, - 'depthbasedcorrmaskwhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'] }, - 'depthbasedcorrmaskwholeimagearea' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'depthbasedcorrmaskx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'] }, - 'depthbasedcorrmasky' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'] }, - 'depthbasedcorrmaskzerox' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'] }, - 'depthbasedcorrmaskzeroy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'] }, - 'depthbasedcorrwhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'] }, + 'deprecatedon' => { 521 => 'deprecatedOn' }, + 'depthbasedcorrcorrectionactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'] }, + 'depthbasedcorrcorrectionamount' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'] }, + 'depthbasedcorrcorrectionsyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'] }, + 'depthbasedcorrections' => { 523 => 'DepthBasedCorrections', 525 => 'DepthBasedCorrections' }, + 'depthbasedcorrlocalcorrecteddepth' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'] }, + 'depthbasedcorrlocalcurverefinesaturation' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'] }, + 'depthbasedcorrmask' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'] }, + 'depthbasedcorrmaskalpha' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'] }, + 'depthbasedcorrmaskangle' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'] }, + 'depthbasedcorrmaskbottom' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'] }, + 'depthbasedcorrmaskcentervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'] }, + 'depthbasedcorrmaskcenterweight' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'depthbasedcorrmaskdabs' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'] }, + 'depthbasedcorrmaskfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'] }, + 'depthbasedcorrmaskflipped' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'] }, + 'depthbasedcorrmaskflow' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'] }, + 'depthbasedcorrmaskfullx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'] }, + 'depthbasedcorrmaskfully' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'] }, + 'depthbasedcorrmaskinputdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'] }, + 'depthbasedcorrmaskleft' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'] }, + 'depthbasedcorrmaskmaskactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'] }, + 'depthbasedcorrmaskmaskblendmode' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'depthbasedcorrmaskmaskdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'depthbasedcorrmaskmaskinverted' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'depthbasedcorrmaskmaskname' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'] }, + 'depthbasedcorrmaskmasks' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'] }, + 'depthbasedcorrmaskmasksalpha' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'depthbasedcorrmaskmasksangle' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'depthbasedcorrmaskmasksbottom' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'depthbasedcorrmaskmaskscentervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'depthbasedcorrmaskmaskscenterweight' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'depthbasedcorrmaskmasksdabs' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'depthbasedcorrmaskmasksfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'depthbasedcorrmaskmasksflipped' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'depthbasedcorrmaskmasksflow' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'depthbasedcorrmaskmasksfullx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'depthbasedcorrmaskmasksfully' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'depthbasedcorrmaskmasksinputdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'depthbasedcorrmaskmasksleft' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'depthbasedcorrmaskmasksmaskactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'depthbasedcorrmaskmasksmaskblendmode' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'depthbasedcorrmaskmasksmaskdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'depthbasedcorrmaskmasksmaskinverted' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'depthbasedcorrmaskmasksmaskname' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'depthbasedcorrmaskmasksmasksubtype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'depthbasedcorrmaskmasksmasksyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'depthbasedcorrmaskmasksmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'depthbasedcorrmaskmasksmidpoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'depthbasedcorrmaskmasksorigin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'depthbasedcorrmaskmasksperimetervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'depthbasedcorrmaskmasksradius' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'depthbasedcorrmaskmasksreferencepoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'depthbasedcorrmaskmasksright' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'] }, + 'depthbasedcorrmaskmasksroundness' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'depthbasedcorrmaskmaskssizex' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'depthbasedcorrmaskmaskssizey' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'depthbasedcorrmaskmaskstop' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'] }, + 'depthbasedcorrmaskmasksubtype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'depthbasedcorrmaskmasksvalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'depthbasedcorrmaskmasksversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'depthbasedcorrmaskmaskswhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'depthbasedcorrmaskmaskswholeimagearea' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'depthbasedcorrmaskmasksx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'] }, + 'depthbasedcorrmaskmasksy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'] }, + 'depthbasedcorrmaskmasksyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'depthbasedcorrmaskmaskszerox' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'depthbasedcorrmaskmaskszeroy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'depthbasedcorrmaskmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'depthbasedcorrmaskmidpoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'] }, + 'depthbasedcorrmaskorigin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'] }, + 'depthbasedcorrmaskperimetervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'depthbasedcorrmaskradius' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'] }, + 'depthbasedcorrmaskrange' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'depthbasedcorrmaskrangeareamodels' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'depthbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'depthbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'depthbasedcorrmaskrangecoloramount' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'depthbasedcorrmaskrangedepthfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'depthbasedcorrmaskrangedepthmax' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'depthbasedcorrmaskrangedepthmin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'depthbasedcorrmaskrangeinvert' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'depthbasedcorrmaskrangelumfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'depthbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'depthbasedcorrmaskrangelummax' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'depthbasedcorrmaskrangelummin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'depthbasedcorrmaskrangelumrange' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'depthbasedcorrmaskrangesampletype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'depthbasedcorrmaskrangetype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'depthbasedcorrmaskrangeversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'depthbasedcorrmaskreferencepoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'depthbasedcorrmaskright' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'] }, + 'depthbasedcorrmaskroundness' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'] }, + 'depthbasedcorrmasksizex' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'] }, + 'depthbasedcorrmasksizey' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'] }, + 'depthbasedcorrmasktop' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'] }, + 'depthbasedcorrmaskvalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'] }, + 'depthbasedcorrmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'] }, + 'depthbasedcorrmaskwhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'] }, + 'depthbasedcorrmaskwholeimagearea' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'depthbasedcorrmaskx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'] }, + 'depthbasedcorrmasky' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'] }, + 'depthbasedcorrmaskzerox' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'] }, + 'depthbasedcorrmaskzeroy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'] }, + 'depthbasedcorrwhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'] }, 'depthfar' => { 125 => 0xc7eb }, 'depthformat' => { 125 => 0xc7e9 }, - 'depthimage' => { 504 => 'Data' }, - 'depthmapinfo' => { 521 => 'DepthMapInfo', 523 => 'DepthMapInfo' }, - 'depthmapinfobasehighlightguideinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'] }, - 'depthmapinfobasehighlightguidetable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'] }, - 'depthmapinfobasehighlightguideversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'] }, - 'depthmapinfobaselayereddepthinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'] }, - 'depthmapinfobaselayereddepthtable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'] }, - 'depthmapinfobaselayereddepthversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'] }, - 'depthmapinfobaserawdepthinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'] }, - 'depthmapinfobaserawdepthtable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'] }, - 'depthmapinfobaserawdepthversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'] }, - 'depthmapinfodepthsource' => { 521 => [\'DepthMapInfo','DepthMapInfoDepthSource'], 523 => [\'DepthMapInfo','DepthMapInfoDepthSource'] }, + 'depthimage' => { 506 => 'Data' }, + 'depthmapinfo' => { 523 => 'DepthMapInfo', 525 => 'DepthMapInfo' }, + 'depthmapinfobasehighlightguideinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'] }, + 'depthmapinfobasehighlightguidetable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'] }, + 'depthmapinfobasehighlightguideversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'] }, + 'depthmapinfobaselayereddepthinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'] }, + 'depthmapinfobaselayereddepthtable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'] }, + 'depthmapinfobaselayereddepthversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'] }, + 'depthmapinfobaserawdepthinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'] }, + 'depthmapinfobaserawdepthtable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'] }, + 'depthmapinfobaserawdepthversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'] }, + 'depthmapinfodepthsource' => { 523 => [\'DepthMapInfo','DepthMapInfoDepthSource'], 525 => [\'DepthMapInfo','DepthMapInfoDepthSource'] }, 'depthmeasuretype' => { 125 => 0xc7ed }, 'depthnear' => { 125 => 0xc7ea }, 'depthunits' => { 125 => 0xc7ec }, - 'derivedfrom' => { 551 => 'DerivedFrom' }, - 'derivedfromalternatepaths' => { 551 => [\'DerivedFrom','DerivedFromAlternatePaths'] }, - 'derivedfromdocumentid' => { 551 => [\'DerivedFrom','DerivedFromDocumentID'] }, - 'derivedfromfilepath' => { 551 => [\'DerivedFrom','DerivedFromFilePath'] }, - 'derivedfromfrompart' => { 551 => [\'DerivedFrom','DerivedFromFromPart'] }, - 'derivedfrominstanceid' => { 551 => [\'DerivedFrom','DerivedFromInstanceID'] }, - 'derivedfromlastmodifydate' => { 551 => [\'DerivedFrom','DerivedFromLastModifyDate'] }, - 'derivedfromlasturl' => { 551 => [\'DerivedFrom','DerivedFromLastURL'] }, - 'derivedfromlinkcategory' => { 551 => [\'DerivedFrom','DerivedFromLinkCategory'] }, - 'derivedfromlinkform' => { 551 => [\'DerivedFrom','DerivedFromLinkForm'] }, - 'derivedfrommanager' => { 551 => [\'DerivedFrom','DerivedFromManager'] }, - 'derivedfrommanagervariant' => { 551 => [\'DerivedFrom','DerivedFromManagerVariant'] }, - 'derivedfrommanageto' => { 551 => [\'DerivedFrom','DerivedFromManageTo'] }, - 'derivedfrommanageui' => { 551 => [\'DerivedFrom','DerivedFromManageUI'] }, - 'derivedfrommaskmarkers' => { 551 => [\'DerivedFrom','DerivedFromMaskMarkers'] }, - 'derivedfromoriginaldocumentid' => { 551 => [\'DerivedFrom','DerivedFromOriginalDocumentID'] }, - 'derivedfrompartmapping' => { 551 => [\'DerivedFrom','DerivedFromPartMapping'] }, - 'derivedfromplacedresolutionunit' => { 551 => [\'DerivedFrom','DerivedFromPlacedResolutionUnit'] }, - 'derivedfromplacedxresolution' => { 551 => [\'DerivedFrom','DerivedFromPlacedXResolution'] }, - 'derivedfromplacedyresolution' => { 551 => [\'DerivedFrom','DerivedFromPlacedYResolution'] }, - 'derivedfromrenditionclass' => { 551 => [\'DerivedFrom','DerivedFromRenditionClass'] }, - 'derivedfromrenditionparams' => { 551 => [\'DerivedFrom','DerivedFromRenditionParams'] }, - 'derivedfromtopart' => { 551 => [\'DerivedFrom','DerivedFromToPart'] }, - 'derivedfromversionid' => { 551 => [\'DerivedFrom','DerivedFromVersionID'] }, - 'description' => { 186 => 'Description', 343 => 'Description', 407 => ['desc','dscp',"\xa9des"], 409 => 'description', 415 => 'dscp', 521 => 'Description', 523 => 'Description', 524 => 'description', 548 => 'Description' }, + 'derivedfrom' => { 553 => 'DerivedFrom' }, + 'derivedfromalternatepaths' => { 553 => [\'DerivedFrom','DerivedFromAlternatePaths'] }, + 'derivedfromdocumentid' => { 553 => [\'DerivedFrom','DerivedFromDocumentID'] }, + 'derivedfromfilepath' => { 553 => [\'DerivedFrom','DerivedFromFilePath'] }, + 'derivedfromfrompart' => { 553 => [\'DerivedFrom','DerivedFromFromPart'] }, + 'derivedfrominstanceid' => { 553 => [\'DerivedFrom','DerivedFromInstanceID'] }, + 'derivedfromlastmodifydate' => { 553 => [\'DerivedFrom','DerivedFromLastModifyDate'] }, + 'derivedfromlasturl' => { 553 => [\'DerivedFrom','DerivedFromLastURL'] }, + 'derivedfromlinkcategory' => { 553 => [\'DerivedFrom','DerivedFromLinkCategory'] }, + 'derivedfromlinkform' => { 553 => [\'DerivedFrom','DerivedFromLinkForm'] }, + 'derivedfrommanager' => { 553 => [\'DerivedFrom','DerivedFromManager'] }, + 'derivedfrommanagervariant' => { 553 => [\'DerivedFrom','DerivedFromManagerVariant'] }, + 'derivedfrommanageto' => { 553 => [\'DerivedFrom','DerivedFromManageTo'] }, + 'derivedfrommanageui' => { 553 => [\'DerivedFrom','DerivedFromManageUI'] }, + 'derivedfrommaskmarkers' => { 553 => [\'DerivedFrom','DerivedFromMaskMarkers'] }, + 'derivedfromoriginaldocumentid' => { 553 => [\'DerivedFrom','DerivedFromOriginalDocumentID'] }, + 'derivedfrompartmapping' => { 553 => [\'DerivedFrom','DerivedFromPartMapping'] }, + 'derivedfromplacedresolutionunit' => { 553 => [\'DerivedFrom','DerivedFromPlacedResolutionUnit'] }, + 'derivedfromplacedxresolution' => { 553 => [\'DerivedFrom','DerivedFromPlacedXResolution'] }, + 'derivedfromplacedyresolution' => { 553 => [\'DerivedFrom','DerivedFromPlacedYResolution'] }, + 'derivedfromrenditionclass' => { 553 => [\'DerivedFrom','DerivedFromRenditionClass'] }, + 'derivedfromrenditionparams' => { 553 => [\'DerivedFrom','DerivedFromRenditionParams'] }, + 'derivedfromtopart' => { 553 => [\'DerivedFrom','DerivedFromToPart'] }, + 'derivedfromversionid' => { 553 => [\'DerivedFrom','DerivedFromVersionID'] }, + 'description' => { 186 => 'Description', 343 => 'Description', 408 => ['desc','dscp',"\xa9des"], 410 => 'description', 416 => 'dscp', 523 => 'Description', 525 => 'Description', 526 => 'description', 550 => 'Description' }, 'destination' => { 139 => 0x5 }, 'destinationcity' => { 390 => 0x24, 396 => 0x3 }, 'destinationcitycode' => { 397 => 0x1001 }, @@ -2487,16 +2490,16 @@ my %tagLookup = ( 'deviantwhiteflash' => { 145 => 0x841 }, 'deviantwhitefluorescent' => { 145 => 0x840 }, 'deviantwhitetungsten' => { 145 => 0x83f }, - 'device' => { 540 => 'device' }, - 'devicesettingdescription' => { 527 => 'DeviceSettingDescription' }, - 'devicesettingdescriptioncolumns' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionColumns'] }, - 'devicesettingdescriptionrows' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionRows'] }, - 'devicesettingdescriptionsettings' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionSettings'] }, - 'devicetype' => { 429 => 0x2 }, + 'device' => { 542 => 'device' }, + 'devicesettingdescription' => { 529 => 'DeviceSettingDescription' }, + 'devicesettingdescriptioncolumns' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionColumns'] }, + 'devicesettingdescriptionrows' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionRows'] }, + 'devicesettingdescriptionsettings' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionSettings'] }, + 'devicetype' => { 431 => 0x2 }, 'dewarpdata' => { 122 => 'DewarpData' }, 'dewarpflag' => { 122 => 'DewarpFlag' }, 'dialdirectiontvav' => { 90 => 0x706 }, - 'dietaryneeds' => { 542 => 'dietaryNeeds' }, + 'dietaryneeds' => { 544 => 'dietaryNeeds' }, 'diffractioncompensation' => { 232 => 0x20e, 247 => 0x2ce, 248 => 0x142, 249 => 0x1b2, 250 => 0x1b2, 251 => 0x1a2, 252 => 0x1b6, 253 => 0x1b6 }, 'diffractioncorrection' => { 354 => 0xbc, 379 => 0x3 }, 'diffractioncorrectionon' => { 109 => 0x2070b }, @@ -2505,7 +2508,7 @@ my %tagLookup = ( 'digitaldeehighlightadj' => { 268 => 0x202 }, 'digitaldeeshadowadj' => { 268 => 0x200 }, 'digitaldeethreshold' => { 268 => 0x201 }, - 'digitalfilter' => { 432 => 0x59 }, + 'digitalfilter' => { 434 => 0x59 }, 'digitalfilter01' => { 376 => 0x5 }, 'digitalfilter02' => { 376 => 0x16 }, 'digitalfilter03' => { 376 => 0x27 }, @@ -2529,57 +2532,57 @@ my %tagLookup = ( 'digitalgain' => { 79 => 0xb }, 'digitalgem' => { 227 => 0x0 }, 'digitalice' => { 268 => 0x100 }, - 'digitalimageguid' => { 535 => 'DigImageGUID' }, + 'digitalimageguid' => { 537 => 'DigImageGUID' }, 'digitallensoptimizer' => { 67 => 0xa }, 'digitallensoptimizersetting' => { 85 => 0x9 }, 'digitalroc' => { 265 => 0x0 }, - 'digitalsourcefiletype' => { 535 => 'DigitalSourcefileType' }, - 'digitalsourcetype' => { 535 => 'DigitalSourceType' }, - 'digitalzoom' => { 37 => 0xc, 118 => 0xa, 133 => 0x1044, 147 => 0x68, 158 => 0x22, 159 => 0x1e, 163 => 'DigitalZoom', 188 => 0xc, 243 => 0x86, 291 => 0xa, 335 => 0x204, 390 => 0x1e, 397 => 0xa, 431 => 0x204, 479 => 0x12, 480 => 0x12 }, - 'digitalzoomon' => { 431 => 0x21b }, - 'digitalzoomratio' => { 125 => 0xa404, 467 => 0x200, 469 => 0x21c, 527 => 'DigitalZoomRatio' }, - 'director' => { 186 => 'WM/Director', 407 => "\xa9dir", 409 => 'director', 415 => "\xa9dir", 550 => 'director' }, - 'directorphotography' => { 550 => 'directorPhotography' }, + 'digitalsourcefiletype' => { 537 => 'DigitalSourcefileType' }, + 'digitalsourcetype' => { 537 => 'DigitalSourceType' }, + 'digitalzoom' => { 37 => 0xc, 118 => 0xa, 133 => 0x1044, 147 => 0x68, 158 => 0x22, 159 => 0x1e, 163 => 'DigitalZoom', 188 => 0xc, 243 => 0x86, 291 => 0xa, 335 => 0x204, 390 => 0x1e, 397 => 0xa, 433 => 0x204, 481 => 0x12, 482 => 0x12 }, + 'digitalzoomon' => { 433 => 0x21b }, + 'digitalzoomratio' => { 125 => 0xa404, 469 => 0x200, 471 => 0x21c, 529 => 'DigitalZoomRatio' }, + 'director' => { 186 => 'WM/Director', 408 => "\xa9dir", 410 => 'director', 416 => "\xa9dir", 552 => 'director' }, + 'directorphotography' => { 552 => 'directorPhotography' }, 'directory' => { 126 => 'Directory' }, 'directoryindex' => { 7 => 0x137, 9 => 0x2dc, 11 => 0x17e, 13 => 0x238, 14 => 0x13f, 15 => 0x133, 16 => 0x1df, 17 => 0x1a7, 18 => 0x1f0, 19 => 0xcc, 20 => 0x1c7, 21 => 0x298, 22 => 0x1e7, 23 => 0x1e5, 24 => [0x27c,0x280], 25 => 0x2b6, 26 => 0x2bf, 28 => 0x1f7, 29 => 0x4ba, 30 => 0xb21 }, 'directoryindex2' => { 21 => 0x29c }, - 'directoryitem' => { 502 => [\'Directory','DirectoryItem'] }, - 'directoryitemlabel' => { 502 => [\'Directory','DirectoryItemLabel'] }, - 'directoryitemlength' => { 502 => [\'Directory','DirectoryItemLength'] }, - 'directoryitemmime' => { 502 => [\'Directory','DirectoryItemMime'] }, - 'directoryitempadding' => { 502 => [\'Directory','DirectoryItemPadding'] }, - 'directoryitemsemantic' => { 502 => [\'Directory','DirectoryItemSemantic'] }, - 'directoryitemuri' => { 502 => [\'Directory','DirectoryItemURI'] }, - 'directorynumber' => { 220 => 0x3, 418 => 0x12 }, - 'disableautocreation' => { 501 => 'DisableAutoCreation' }, - 'disablesuggestedaction' => { 501 => 'DisableSuggestedAction' }, + 'directoryitem' => { 504 => [\'Directory','DirectoryItem'] }, + 'directoryitemlabel' => { 504 => [\'Directory','DirectoryItemLabel'] }, + 'directoryitemlength' => { 504 => [\'Directory','DirectoryItemLength'] }, + 'directoryitemmime' => { 504 => [\'Directory','DirectoryItemMime'] }, + 'directoryitempadding' => { 504 => [\'Directory','DirectoryItemPadding'] }, + 'directoryitemsemantic' => { 504 => [\'Directory','DirectoryItemSemantic'] }, + 'directoryitemuri' => { 504 => [\'Directory','DirectoryItemURI'] }, + 'directorynumber' => { 220 => 0x3, 420 => 0x12 }, + 'disableautocreation' => { 503 => 'DisableAutoCreation' }, + 'disablesuggestedaction' => { 503 => 'DisableSuggestedAction' }, 'disclaimer' => { 343 => 'Disclaimer' }, - 'discnumber' => { 550 => 'discNumber' }, - 'dishtype' => { 542 => 'dishType' }, - 'disknumber' => { 407 => 'disk' }, + 'discnumber' => { 552 => 'discNumber' }, + 'dishtype' => { 544 => 'dishType' }, + 'disknumber' => { 408 => 'disk' }, 'dispbutton' => { 253 => 0x7d4, 326 => 0x2ab }, 'displayallafpoints' => { 90 => 0x514 }, 'displayaperture' => { 37 => 0x23 }, 'displayedunitsx' => { 405 => 0x2 }, 'displayedunitsy' => { 405 => 0x6 }, - 'displayname' => { 409 => 'displayname', 539 => 'displayName' }, + 'displayname' => { 410 => 'displayname', 541 => 'displayName' }, 'distance1' => { 147 => 0x28 }, 'distance2' => { 147 => 0x2c }, 'distance3' => { 147 => 0x30 }, 'distance4' => { 147 => 0x34 }, - 'distortion' => { 429 => 0xa050 }, - 'distortioncompensation' => { 493 => 0x8040 }, + 'distortion' => { 431 => 0xa050 }, + 'distortioncompensation' => { 495 => 0x8040 }, 'distortioncontrol' => { 273 => 0x10 }, - 'distortioncorrection' => { 84 => 0x3, 109 => 0x20705, 115 => 0x67, 125 => 0x7036, 218 => 0x4, 330 => 0x50b, 358 => '7.1', 379 => 0x0, 487 => 0x601, 488 => 0x5b }, + 'distortioncorrection' => { 84 => 0x3, 109 => 0x20705, 115 => 0x67, 125 => 0x7036, 218 => 0x4, 330 => 0x50b, 358 => '7.1', 379 => 0x0, 489 => 0x601, 490 => 0x5b }, 'distortioncorrection2' => { 334 => 0x1011 }, - 'distortioncorrectionalreadyapplied' => { 518 => 'DistortionCorrectionAlreadyApplied' }, + 'distortioncorrectionalreadyapplied' => { 520 => 'DistortionCorrectionAlreadyApplied' }, 'distortioncorrectionon' => { 109 => '0x20705.0', 115 => 0x63 }, - 'distortioncorrectionsetting' => { 85 => 0x7, 456 => 0x2013 }, + 'distortioncorrectionsetting' => { 85 => 0x7, 458 => 0x2013 }, 'distortioncorrectionvalue' => { 84 => 0x9 }, 'distortioncorrectionversion' => { 218 => 0x0 }, - 'distortioncorrparams' => { 125 => 0x7037, 466 => 0x1a23, 469 => 0x1870, 471 => 0x189c, 472 => 0x18cc, 473 => 0x17d0, 487 => 0x6ca, 488 => 0x64 }, - 'distortioncorrparamsnumber' => { 469 => 0x1899, 471 => 0x18c5, 472 => 0x18f5, 473 => 0x17f9 }, - 'distortioncorrparamspresent' => { 469 => 0x1898, 471 => 0x18c4, 472 => 0x18f4, 473 => 0x17f8, 475 => 0x10b, 476 => 0x10b, 487 => 0x600, 488 => 0x5a }, + 'distortioncorrparams' => { 125 => 0x7037, 468 => 0x1a23, 471 => 0x1870, 473 => 0x189c, 474 => 0x18cc, 475 => 0x17d0, 489 => 0x6ca, 490 => 0x64 }, + 'distortioncorrparamsnumber' => { 471 => 0x1899, 473 => 0x18c5, 474 => 0x18f5, 475 => 0x17f9 }, + 'distortioncorrparamspresent' => { 471 => 0x1898, 473 => 0x18c4, 474 => 0x18f4, 475 => 0x17f8, 477 => 0x10b, 478 => 0x10b, 489 => 0x600, 490 => 0x5a }, 'distortioneffect' => { 109 => 0x20709 }, 'distortionn' => { 358 => 0xc }, 'distortionparam02' => { 358 => 0x2 }, @@ -2588,36 +2591,36 @@ my %tagLookup = ( 'distortionparam09' => { 358 => 0x9 }, 'distortionparam11' => { 358 => 0xb }, 'distortionscale' => { 358 => 0x5 }, - 'distributor' => { 540 => 'distributor' }, - 'distributorproductid' => { 539 => 'distributorProductID' }, + 'distributor' => { 542 => 'distributor' }, + 'distributorproductid' => { 541 => 'distributorProductID' }, 'dloon' => { 109 => '0x20706.0', 115 => 0xdc }, 'dlosetting' => { 109 => 0x20706, 115 => 0xdd }, 'dlosettingapplied' => { 108 => 0x4 }, 'dloshootingdistance' => { 115 => 0xde }, 'dloversion' => { 108 => 0x5 }, - 'dmcomment' => { 550 => 'comment' }, + 'dmcomment' => { 552 => 'comment' }, 'dmdithermatrix' => { 145 => 0xc7a }, 'dmdithermatrixheight' => { 145 => 0xc7c }, 'dmdithermatrixwidth' => { 145 => 0xc7b }, 'dngadobedata' => { 125 => 0xc634 }, 'dngbackwardversion' => { 125 => 0xc613 }, - 'dngignoresidecars' => { 521 => 'DNGIgnoreSidecars', 523 => 'DNGIgnoreSidecars' }, + 'dngignoresidecars' => { 523 => 'DNGIgnoreSidecars', 525 => 'DNGIgnoreSidecars' }, 'dnglensinfo' => { 125 => 0xc630 }, 'dngprivatedata' => { 125 => 0xc634 }, 'dngversion' => { 125 => 0xc612 }, 'document' => { 343 => 'Document' }, - 'documentancestors' => { 538 => 'DocumentAncestors' }, + 'documentancestors' => { 540 => 'DocumentAncestors' }, 'documenthistory' => { 138 => 0xe7 }, - 'documentid' => { 551 => 'DocumentID' }, + 'documentid' => { 553 => 'DocumentID' }, 'documentname' => { 125 => 0x10d }, 'documentnotes' => { 138 => 0xe6 }, - 'doi' => { 540 => 'doi' }, - 'dopesheet' => { 535 => 'Dopesheet' }, - 'dopesheetlink' => { 535 => 'DopesheetLink' }, - 'dopesheetlinklink' => { 535 => [\'DopesheetLink','DopesheetLinkLink'] }, - 'dopesheetlinklinkqualifier' => { 535 => [\'DopesheetLink','DopesheetLinkLinkQualifier'] }, + 'doi' => { 542 => 'doi' }, + 'dopesheet' => { 537 => 'Dopesheet' }, + 'dopesheetlink' => { 537 => 'DopesheetLink' }, + 'dopesheetlinklink' => { 537 => [\'DopesheetLink','DopesheetLinkLink'] }, + 'dopesheetlinklinkqualifier' => { 537 => [\'DopesheetLink','DopesheetLinkLinkQualifier'] }, 'doublingmicrovolts' => { 145 => 0xc82 }, - 'dpp' => { 515 => 'dpp' }, + 'dpp' => { 517 => 'dpp' }, 'dprawbokehshift' => { 109 => 0x20b20 }, 'dprawbokehshiftarea' => { 109 => 0x20b21 }, 'dprawghostingreductionarea' => { 109 => 0x20b30 }, @@ -2627,15 +2630,15 @@ my %tagLookup = ( 'drangepriority' => { 133 => 0x1443 }, 'drangepriorityauto' => { 133 => 0x1444 }, 'drangepriorityfixed' => { 133 => 0x1445 }, - 'drivemode' => { 119 => 0x3103, 131 => '0.1', 188 => 0x6, 191 => 0x1e, 194 => 0xe, 198 => 0x64d0, 330 => 0x600, 390 => 0x34, 422 => 0x1002, 432 => 0x3, 442 => 0x4, 443 => 0x7e, 444 => 0x34 }, - 'drivemode2' => { 191 => 0xa, 370 => 0x7, 453 => 0xe, 461 => 0x1 }, - 'drivemodesetting' => { 444 => 0x4 }, + 'drivemode' => { 119 => 0x3103, 131 => '0.1', 188 => 0x6, 191 => 0x1e, 194 => 0xe, 198 => 0x64d0, 330 => 0x600, 390 => 0x34, 424 => 0x1002, 434 => 0x3, 444 => 0x4, 445 => 0x7e, 446 => 0x34 }, + 'drivemode2' => { 191 => 0xa, 370 => 0x7, 455 => 0xe, 463 => 0x1 }, + 'drivemodesetting' => { 446 => 0x4 }, 'drivespeed' => { 131 => '0.2' }, 'dspfirmwareversion' => { 390 => 0x27 }, 'dualpixelraw' => { 67 => 0xb }, - 'duration' => { 72 => 0x6a, 162 => 'Duration', 176 => 'Duration', 542 => 'duration', 550 => 'duration' }, - 'durationscale' => { 550 => [\'duration','durationScale'] }, - 'durationvalue' => { 550 => [\'duration','durationValue'] }, + 'duration' => { 72 => 0x6a, 162 => 'Duration', 176 => 'Duration', 544 => 'duration', 552 => 'duration' }, + 'durationscale' => { 552 => [\'duration','durationScale'] }, + 'durationvalue' => { 552 => [\'duration','durationValue'] }, 'dustremovaldata' => { 69 => 0x97 }, 'dxcropalert' => { 249 => 0x250, 250 => 0x250, 251 => 0x23c, 252 => 0x250, 253 => 0x250 }, 'dynamicafarea' => { 309 => '1.4', 318 => '1.4' }, @@ -2644,14 +2647,14 @@ my %tagLookup = ( 'dynamicareaafdisplay' => { 310 => '46.1', 312 => '47.1', 313 => '47.1', 322 => '47.1', 323 => '47.1' }, 'dynamicrange' => { 133 => 0x1400 }, 'dynamicrangeboost' => { 354 => 0xee }, - 'dynamicrangeexpansion' => { 390 => 0x69, 422 => 0x100e }, + 'dynamicrangeexpansion' => { 390 => 0x69, 424 => 0x100e }, 'dynamicrangemax' => { 114 => 0x7c }, 'dynamicrangemin' => { 114 => 0x7a }, - 'dynamicrangeoptimizer' => { 191 => 0x15, 456 => [0xb025,0xb04f], 465 => 0x1144, 466 => [0x1144,0x324], 467 => [0x1120,0x300], 468 => [0x119c,0x37c], 469 => [0x1178,0x328], 470 => [0x1030,0x50], 471 => [0x228,0x50], 472 => [0x228,0x50], 473 => [0x21b,0x4e] }, - 'dynamicrangeoptimizerbracket' => { 453 => 0x2e }, - 'dynamicrangeoptimizerlevel' => { 442 => 0x19, 443 => 0x17, 444 => 0xd, 453 => 0x79, 461 => 0x5 }, - 'dynamicrangeoptimizermode' => { 194 => 0x15, 442 => 0x18, 443 => 0x16, 453 => [0x77,0x15] }, - 'dynamicrangeoptimizersetting' => { 191 => 0x27, 444 => 0xc, 461 => 0x4 }, + 'dynamicrangeoptimizer' => { 191 => 0x15, 458 => [0xb025,0xb04f], 467 => 0x1144, 468 => [0x1144,0x324], 469 => [0x1120,0x300], 470 => [0x119c,0x37c], 471 => [0x1178,0x328], 472 => [0x1030,0x50], 473 => [0x228,0x50], 474 => [0x228,0x50], 475 => [0x21b,0x4e] }, + 'dynamicrangeoptimizerbracket' => { 455 => 0x2e }, + 'dynamicrangeoptimizerlevel' => { 444 => 0x19, 445 => 0x17, 446 => 0xd, 455 => 0x79, 463 => 0x5 }, + 'dynamicrangeoptimizermode' => { 194 => 0x15, 444 => 0x18, 445 => 0x16, 455 => [0x77,0x15] }, + 'dynamicrangeoptimizersetting' => { 191 => 0x27, 446 => 0xc, 463 => 0x4 }, 'dynamicrangesetting' => { 133 => 0x1402 }, 'e-dialinprogram' => { 370 => '1.3' }, 'earliestageorloweststage' => { 124 => [\'GeologicalContext','GeologicalContextEarliestAgeOrLowestStage'] }, @@ -2659,15 +2662,15 @@ my %tagLookup = ( 'earliestepochorlowestseries' => { 124 => [\'GeologicalContext','GeologicalContextEarliestEpochOrLowestSeries'] }, 'earliesteraorlowesterathem' => { 124 => [\'GeologicalContext','GeologicalContextEarliestEraOrLowestErathem'] }, 'earliestperiodorlowestsystem' => { 124 => [\'GeologicalContext','GeologicalContextEarliestPeriodOrLowestSystem'] }, - 'earthpos' => { 497 => 'EarthPos' }, - 'earthposaltitude' => { 497 => [\'EarthPos','EarthPosAltitude'] }, - 'earthposlatitude' => { 497 => [\'EarthPos','EarthPosLatitude'] }, - 'earthposlongitude' => { 497 => [\'EarthPos','EarthPosLongitude'] }, - 'earthposrotationw' => { 497 => [\'EarthPos','EarthPosRotationW'] }, - 'earthposrotationx' => { 497 => [\'EarthPos','EarthPosRotationX'] }, - 'earthposrotationy' => { 497 => [\'EarthPos','EarthPosRotationY'] }, - 'earthposrotationz' => { 497 => [\'EarthPos','EarthPosRotationZ'] }, - 'earthpostimestamp' => { 497 => [\'EarthPos','EarthPosTimestamp'] }, + 'earthpos' => { 499 => 'EarthPos' }, + 'earthposaltitude' => { 499 => [\'EarthPos','EarthPosAltitude'] }, + 'earthposlatitude' => { 499 => [\'EarthPos','EarthPosLatitude'] }, + 'earthposlongitude' => { 499 => [\'EarthPos','EarthPosLongitude'] }, + 'earthposrotationw' => { 499 => [\'EarthPos','EarthPosRotationW'] }, + 'earthposrotationx' => { 499 => [\'EarthPos','EarthPosRotationX'] }, + 'earthposrotationy' => { 499 => [\'EarthPos','EarthPosRotationY'] }, + 'earthposrotationz' => { 499 => [\'EarthPos','EarthPosRotationZ'] }, + 'earthpostimestamp' => { 499 => [\'EarthPos','EarthPosTimestamp'] }, 'easyexposurecomp' => { 324 => '6.1' }, 'easyexposurecompensation' => { 309 => '6.4', 310 => '6.5', 312 => '6.3', 313 => '6.3', 317 => '5.1', 318 => '4.4', 319 => '5.2', 322 => '6.3', 323 => '6.3', 325 => 0x1f, 326 => 0x1d, 327 => 0x1d, 328 => 0x1d }, 'easymode' => { 37 => 0xb }, @@ -2676,103 +2679,103 @@ my %tagLookup = ( 'edgemapx2' => { 145 => 0x932 }, 'edgemapx3' => { 145 => 0x934 }, 'edgemapx4' => { 145 => 0x935 }, - 'edgenoisereduction' => { 303 => 0x4, 493 => 0x8028 }, - 'edit1' => { 415 => "\xa9ed1" }, - 'edit2' => { 415 => "\xa9ed2" }, - 'edit3' => { 415 => "\xa9ed3" }, - 'edit4' => { 415 => "\xa9ed4" }, - 'edit5' => { 415 => "\xa9ed5" }, - 'edit6' => { 415 => "\xa9ed6" }, - 'edit7' => { 415 => "\xa9ed7" }, - 'edit8' => { 415 => "\xa9ed8" }, - 'edit9' => { 415 => "\xa9ed9" }, - 'edition' => { 540 => 'edition' }, + 'edgenoisereduction' => { 303 => 0x4, 495 => 0x8028 }, + 'edit1' => { 416 => "\xa9ed1" }, + 'edit2' => { 416 => "\xa9ed2" }, + 'edit3' => { 416 => "\xa9ed3" }, + 'edit4' => { 416 => "\xa9ed4" }, + 'edit5' => { 416 => "\xa9ed5" }, + 'edit6' => { 416 => "\xa9ed6" }, + 'edit7' => { 416 => "\xa9ed7" }, + 'edit8' => { 416 => "\xa9ed8" }, + 'edit9' => { 416 => "\xa9ed9" }, + 'edition' => { 542 => 'edition' }, 'editorialupdate' => { 138 => 0x8 }, - 'editstatus' => { 138 => 0x7, 402 => 'EditStatus', 515 => 'EditStatus' }, + 'editstatus' => { 138 => 0x7, 402 => 'EditStatus', 517 => 'EditStatus' }, 'editversionname' => { 302 => 0x3d136244 }, 'effectivelv' => { 390 => 0x2d }, 'effectivemaxaperture' => { 236 => 0x12, 237 => 0x13, 241 => 0x14 }, - 'eissn' => { 540 => 'eIssn' }, + 'eissn' => { 542 => 'eIssn' }, 'electricalblackcolumns' => { 145 => 0x1810 }, 'electronicfront-curtainshutter' => { 312 => '5.2', 313 => '5.2', 322 => '5.3', 323 => '5.2' }, - 'electronicfrontcurtainshutter' => { 456 => 0x201a }, + 'electronicfrontcurtainshutter' => { 458 => 0x201a }, 'elevation' => { 172 => 'Elevation' }, 'email' => { 164 => 'EMail' }, - 'embargodate' => { 543 => 'embargoDate' }, - 'embdencrightsexpr' => { 535 => 'EmbdEncRightsExpr' }, - 'embeddedencodedrightsexpr' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprEncRightsExpr'] }, - 'embeddedencodedrightsexprlangid' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprLangId'] }, - 'embeddedencodedrightsexprtype' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprEncType'] }, - 'embeddedxmpdigest' => { 538 => 'EmbeddedXMPDigest' }, + 'embargodate' => { 545 => 'embargoDate' }, + 'embdencrightsexpr' => { 537 => 'EmbdEncRightsExpr' }, + 'embeddedencodedrightsexpr' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprEncRightsExpr'] }, + 'embeddedencodedrightsexprlangid' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprLangId'] }, + 'embeddedencodedrightsexprtype' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprEncType'] }, + 'embeddedxmpdigest' => { 540 => 'EmbeddedXMPDigest' }, 'emissivity' => { 127 => 0x3 }, 'emptyslotrelease' => { 247 => 0x98c, 249 => 0x723, 250 => 0x733, 251 => 0x625, 252 => 0x655, 253 => 0x6bd }, 'enablechromanoisereduction' => { 145 => 0xe6e }, 'enablesharpening' => { 145 => 0x92e }, - 'encodedby' => { 186 => 'WM/EncodedBy', 407 => "\xa9enc" }, - 'encodedwith' => { 409 => 'Encoded_With' }, - 'encoder' => { 407 => "\xa9too", 409 => 'encoder', 415 => "\xa9too" }, - 'encoderid' => { 415 => "\xa9enc" }, + 'encodedby' => { 186 => 'WM/EncodedBy', 408 => "\xa9enc" }, + 'encodedwith' => { 410 => 'Encoded_With' }, + 'encoder' => { 408 => "\xa9too", 410 => 'encoder', 416 => "\xa9too" }, + 'encoderid' => { 416 => "\xa9enc" }, 'encodingtime' => { 186 => 'WM/EncodingTime' }, - 'encryptionkey' => { 429 => 0xa020 }, - 'endingpage' => { 540 => 'endingPage' }, + 'encryptionkey' => { 431 => 0xa020 }, + 'endingpage' => { 542 => 'endingPage' }, 'enduser' => { 340 => 'EndUser' }, 'enduserid' => { 340 => [\'EndUser','EndUserEndUserID'] }, 'endusername' => { 340 => [\'EndUser','EndUserEndUserName'] }, 'energysavingmode' => { 247 => 0x992, 249 => 0x746, 250 => 0x756, 251 => 0x648, 252 => 0x678, 253 => 0x6e0 }, - 'engineer' => { 550 => 'engineer' }, + 'engineer' => { 552 => 'engineer' }, 'enhancedarktones' => { 295 => 0x8 }, - 'enhancedenoisealreadyapplied' => { 518 => 'EnhanceDenoiseAlreadyApplied' }, - 'enhancedenoiselumaamount' => { 518 => 'EnhanceDenoiseLumaAmount' }, - 'enhancedenoiseversion' => { 518 => 'EnhanceDenoiseVersion' }, - 'enhancedetailsalreadyapplied' => { 518 => 'EnhanceDetailsAlreadyApplied' }, - 'enhancedetailsversion' => { 518 => 'EnhanceDetailsVersion' }, + 'enhancedenoisealreadyapplied' => { 520 => 'EnhanceDenoiseAlreadyApplied' }, + 'enhancedenoiselumaamount' => { 520 => 'EnhanceDenoiseLumaAmount' }, + 'enhancedenoiseversion' => { 520 => 'EnhanceDenoiseVersion' }, + 'enhancedetailsalreadyapplied' => { 520 => 'EnhanceDetailsAlreadyApplied' }, + 'enhancedetailsversion' => { 520 => 'EnhanceDetailsVersion' }, 'enhancement' => { 118 => 0x16, 119 => 0x3016 }, 'enhanceparams' => { 125 => 0xc7ee }, 'enhancer' => { 334 => 0x300 }, 'enhancervalues' => { 334 => 0x301 }, - 'enhancesuperresolutionalreadyapplied' => { 518 => 'EnhanceSuperResolutionAlreadyApplied' }, - 'enhancesuperresolutionscale' => { 518 => 'EnhanceSuperResolutionScale' }, - 'enhancesuperresolutionversion' => { 518 => 'EnhanceSuperResolutionVersion' }, + 'enhancesuperresolutionalreadyapplied' => { 520 => 'EnhanceSuperResolutionAlreadyApplied' }, + 'enhancesuperresolutionscale' => { 520 => 'EnhanceSuperResolutionScale' }, + 'enhancesuperresolutionversion' => { 520 => 'EnhanceSuperResolutionVersion' }, 'envelopenumber' => { 139 => 0x28 }, 'envelopepriority' => { 139 => 0x3c }, 'enveloperecordversion' => { 139 => 0x0 }, - 'episode' => { 535 => 'Episode' }, - 'episodeglobaluniqueid' => { 407 => 'egid' }, - 'episodeidentifier' => { 535 => [\'Episode','EpisodeIdentifier'] }, - 'episodename' => { 535 => [\'Episode','EpisodeName'] }, - 'episodenumber' => { 535 => [\'Episode','EpisodeNumber'] }, + 'episode' => { 537 => 'Episode' }, + 'episodeglobaluniqueid' => { 408 => 'egid' }, + 'episodeidentifier' => { 537 => [\'Episode','EpisodeIdentifier'] }, + 'episodename' => { 537 => [\'Episode','EpisodeName'] }, + 'episodenumber' => { 537 => [\'Episode','EpisodeNumber'] }, 'epsonimageheight' => { 335 => 0x20c }, 'epsonimagewidth' => { 335 => 0x20b }, 'epsonsoftware' => { 335 => 0x20d }, - 'equipmentinstitution' => { 496 => 'EquipmentInstitution' }, - 'equipmentmanufacturer' => { 496 => 'EquipmentManufacturer' }, + 'equipmentinstitution' => { 498 => 'EquipmentInstitution' }, + 'equipmentmanufacturer' => { 498 => 'EquipmentManufacturer' }, 'equipmentversion' => { 331 => 0x0 }, 'ettlii' => { 90 => 0x304, 91 => 0xd, 92 => 0xe, 93 => 0x7, 94 => 0x7, 95 => 0xe }, - 'event' => { 499 => 'Event', 513 => 'Event', 535 => 'Event', 540 => 'event' }, - 'eventalias' => { 539 => 'eventAlias' }, + 'event' => { 501 => 'Event', 515 => 'Event', 537 => 'Event', 542 => 'event' }, + 'eventalias' => { 541 => 'eventAlias' }, 'eventdate' => { 124 => [\'Event','EventEventDate'] }, 'eventday' => { 124 => [\'Event','EventDay'] }, 'eventearliestdate' => { 124 => [\'Event','EventEarliestDate'] }, - 'eventend' => { 539 => 'eventEnd' }, + 'eventend' => { 541 => 'eventEnd' }, 'eventenddayofyear' => { 124 => [\'Event','EventEndDayOfYear'] }, 'eventfieldnotes' => { 124 => [\'Event','EventFieldNotes'] }, 'eventfieldnumber' => { 124 => [\'Event','EventFieldNumber'] }, 'eventhabitat' => { 124 => [\'Event','EventHabitat'] }, - 'eventid' => { 124 => [\'Event','EventEventID'], 535 => 'EventId' }, + 'eventid' => { 124 => [\'Event','EventEventID'], 537 => 'EventId' }, 'eventlatestdate' => { 124 => [\'Event','EventLatestDate'] }, 'eventmonth' => { 124 => [\'Event','EventMonth'] }, - 'eventnumber' => { 416 => 0x9, 417 => 0x37, 418 => 0x3a }, + 'eventnumber' => { 418 => 0x9, 419 => 0x37, 420 => 0x3a }, 'eventparenteventid' => { 124 => [\'Event','EventParentEventID'] }, 'eventremarks' => { 124 => [\'Event','EventEventRemarks'] }, 'eventsamplesizeunit' => { 124 => [\'Event','EventSampleSizeUnit'] }, 'eventsamplesizevalue' => { 124 => [\'Event','EventSampleSizeValue'] }, 'eventsamplingeffort' => { 124 => [\'Event','EventSamplingEffort'] }, 'eventsamplingprotocol' => { 124 => [\'Event','EventSamplingProtocol'] }, - 'eventstart' => { 539 => 'eventStart' }, + 'eventstart' => { 541 => 'eventStart' }, 'eventstartdayofyear' => { 124 => [\'Event','EventStartDayOfYear'] }, - 'eventsubtype' => { 539 => 'eventSubtype' }, + 'eventsubtype' => { 541 => 'eventSubtype' }, 'eventtime' => { 124 => [\'Event','EventEventTime'] }, - 'eventtype' => { 539 => 'eventType' }, + 'eventtype' => { 541 => 'eventType' }, 'eventverbatimeventdate' => { 124 => [\'Event','EventVerbatimEventDate'] }, 'eventyear' => { 124 => [\'Event','EventYear'] }, 'evfgrid' => { 325 => 0x15f, 326 => 0x165, 327 => 0x165, 328 => 0x17d }, @@ -2782,35 +2785,35 @@ my %tagLookup = ( 'evfwarmdisplaymode' => { 326 => 0x24b, 327 => 0x24b, 328 => 0x263 }, 'evsteps' => { 370 => '1.2', 372 => 0x0 }, 'evstepsize' => { 314 => '5.1', 315 => '6.1', 316 => '6.1', 320 => '0.7' }, - 'exclusivecoverage' => { 509 => 'ExclusiveCoverage' }, - 'exclusivityenddate' => { 543 => 'exclusivityEndDate' }, + 'exclusivecoverage' => { 511 => 'ExclusiveCoverage' }, + 'exclusivityenddate' => { 545 => 'exclusivityEndDate' }, 'excursiontolerance' => { 140 => 0x82 }, - 'executiveproducer' => { 407 => "\xa9xpd" }, + 'executiveproducer' => { 408 => "\xa9xpd" }, 'exif' => { 126 => 'EXIF' }, 'exifbyteorder' => { 126 => 'ExifByteOrder' }, 'exifcamerainfo' => { 138 => 0xe8 }, - 'exifimageheight' => { 125 => 0xa003, 527 => 'PixelYDimension' }, - 'exifimagewidth' => { 125 => 0xa002, 527 => 'PixelXDimension' }, + 'exifimageheight' => { 125 => 0xa003, 529 => 'PixelYDimension' }, + 'exifimagewidth' => { 125 => 0xa002, 529 => 'PixelXDimension' }, 'exifunicodebyteorder' => { 126 => 'ExifUnicodeByteOrder' }, - 'exifversion' => { 125 => 0x9000, 527 => 'ExifVersion' }, + 'exifversion' => { 125 => 0x9000, 529 => 'ExifVersion' }, 'exitpupilposition' => { 236 => 0x4, 237 => 0x4, 241 => 0x4 }, - 'expirationdate' => { 138 => 0x25, 543 => 'expirationDate' }, + 'expirationdate' => { 138 => 0x25, 545 => 'expirationDate' }, 'expirationtime' => { 138 => 0x26 }, - 'exposure' => { 125 => 0xfe51, 521 => 'Exposure', 523 => 'Exposure' }, - 'exposure2012' => { 521 => 'Exposure2012', 523 => 'Exposure2012' }, + 'exposure' => { 125 => 0xfe51, 523 => 'Exposure', 525 => 'Exposure' }, + 'exposure2012' => { 523 => 'Exposure2012', 525 => 'Exposure2012' }, 'exposureadj' => { 300 => 0x0 }, 'exposureadj2' => { 300 => 0x12 }, - 'exposureadjust' => { 432 => 0xc }, + 'exposureadjust' => { 434 => 0xc }, 'exposurebracketingindicatorlast' => { 191 => 0x52 }, - 'exposurebracketshotnumber' => { 194 => 0x2d, 453 => 0x2f }, + 'exposurebracketshotnumber' => { 194 => 0x2d, 455 => 0x2f }, 'exposurebracketstepsize' => { 370 => 0x8 }, 'exposurebracketvalue' => { 243 => 0x19 }, 'exposurecompautocancel' => { 90 => 0x113 }, - 'exposurecompensation' => { 82 => 0x6, 99 => 0x0, 125 => 0x9204, 147 => 0x24, 163 => 'ExposureComp', 183 => 'ExposureCompensation', 188 => 0xd, 189 => 0x53, 190 => 0x1e, 194 => 0x49c0, 335 => 0x1006, 390 => 0x16, 399 => 0x402, 429 => 0xa013, 432 => [0xc,0x35,0x4d], 465 => 0x114c, 466 => 0x114c, 467 => 0x1128, 469 => 0x1180, 470 => 0x1038, 471 => 0x230, 472 => 0x230, 473 => 0x223, 527 => 'ExposureBiasValue' }, - 'exposurecompensation2' => { 461 => [0x24,0x26,0x2a] }, + 'exposurecompensation' => { 82 => 0x6, 99 => 0x0, 125 => 0x9204, 147 => 0x24, 163 => 'ExposureComp', 183 => 'ExposureCompensation', 188 => 0xd, 189 => 0x53, 190 => 0x1e, 194 => 0x49c0, 335 => 0x1006, 390 => 0x16, 399 => 0x402, 431 => 0xa013, 434 => [0xc,0x35,0x4d], 467 => 0x114c, 468 => 0x114c, 469 => 0x1128, 471 => 0x1180, 472 => 0x1038, 473 => 0x230, 474 => 0x230, 475 => 0x223, 529 => 'ExposureBiasValue' }, + 'exposurecompensation2' => { 463 => [0x24,0x26,0x2a] }, 'exposurecompensationbutton' => { 253 => 0x794 }, 'exposurecompensationmode' => { 191 => 0x47, 194 => 0x2a }, - 'exposurecompensationset' => { 442 => 0x3, 443 => 0x3, 444 => 0x3, 461 => 0x1e }, + 'exposurecompensationset' => { 444 => 0x3, 445 => 0x3, 446 => 0x3, 463 => 0x1e }, 'exposurecompensationsetting' => { 191 => 0x1 }, 'exposurecompstepsize' => { 309 => '6.3', 310 => '7.3', 312 => '7.3', 313 => '7.3', 318 => '4.3', 322 => '7.3', 323 => '7.3' }, 'exposurecontrolstep' => { 317 => '6.1', 319 => '6.1' }, @@ -2824,23 +2827,23 @@ my %tagLookup = ( 'exposuregainflash' => { 145 => 0x89b }, 'exposuregainfluorescent' => { 145 => 0x89a }, 'exposuregaintungsten' => { 145 => 0x899 }, - 'exposureindex' => { 125 => 0xa215, 527 => 'ExposureIndex' }, + 'exposureindex' => { 125 => 0xa215, 529 => 'ExposureIndex' }, 'exposureindicator' => { 191 => 0x50 }, - 'exposurelevelincrements' => { 88 => 0x6, 89 => 0x6, 90 => 0x101, 91 => 0x5, 92 => 0x6, 93 => 0x5, 94 => 0x5, 95 => 0x6, 96 => 0x4, 442 => 0x58, 443 => 0x58 }, - 'exposurelockused' => { 507 => 'ExposureLockUsed' }, - 'exposuremode' => { 125 => 0xa402, 163 => 'ExposureMode', 188 => 0x1, 189 => 0xa, 190 => 0x0, 191 => 0x0, 194 => 0x34, 330 => 0x200, 351 => 0x40d, 432 => 0x8, 456 => 0xb041, 527 => 'ExposureMode' }, + 'exposurelevelincrements' => { 88 => 0x6, 89 => 0x6, 90 => 0x101, 91 => 0x5, 92 => 0x6, 93 => 0x5, 94 => 0x5, 95 => 0x6, 96 => 0x4, 444 => 0x58, 445 => 0x58 }, + 'exposurelockused' => { 509 => 'ExposureLockUsed' }, + 'exposuremode' => { 125 => 0xa402, 163 => 'ExposureMode', 188 => 0x1, 189 => 0xa, 190 => 0x0, 191 => 0x0, 194 => 0x34, 330 => 0x200, 351 => 0x40d, 434 => 0x8, 458 => 0xb041, 529 => 'ExposureMode' }, 'exposuremodeinmanual' => { 90 => 0x10b }, - 'exposureprogram' => { 125 => 0x8822, 422 => 0x1001, 435 => [0x17e,0x43], 442 => 0x3c, 443 => 0x3c, 444 => 0x5, 448 => 0x14, 453 => 0x3f, 461 => 0x2, 465 => 0x1175, 466 => 0x1179, 467 => 0x1155, 468 => 0x11d1, 469 => 0x11ad, 470 => 0x1065, 471 => 0x25d, 472 => 0x25d, 473 => 0x24c, 484 => 0xb, 485 => 0xc, 486 => 0xb, 488 => 0x48, 527 => 'ExposureProgram' }, + 'exposureprogram' => { 125 => 0x8822, 424 => 0x1001, 437 => [0x17e,0x43], 444 => 0x3c, 445 => 0x3c, 446 => 0x5, 450 => 0x14, 455 => 0x3f, 463 => 0x2, 467 => 0x1175, 468 => 0x1179, 469 => 0x1155, 470 => 0x11d1, 471 => 0x11ad, 472 => 0x1065, 473 => 0x25d, 474 => 0x25d, 475 => 0x24c, 486 => 0xb, 487 => 0xc, 488 => 0xb, 490 => 0x48, 529 => 'ExposureProgram' }, 'exposureshift' => { 330 => 0x203 }, - 'exposurestandardadjustment' => { 456 => 0x202d }, - 'exposuretime' => { 7 => 0x4, 8 => 0x4, 9 => 0x4, 10 => 0x4, 11 => 0x4, 12 => 0x4, 13 => 0x4, 14 => 0x4, 15 => 0x4, 16 => 0x4, 17 => 0x4, 18 => 0x4, 19 => 0x4, 20 => 0x4, 21 => 0x4, 22 => 0x4, 23 => 0x4, 24 => 0x4, 25 => 0x4, 26 => 0x4, 27 => 0x4, 28 => 0x4, 29 => 0x4, 31 => 0x6, 32 => 0x7, 82 => 0x16, 125 => 0x829a, 144 => 0xfd05, 147 => 0x20, 149 => 0xfa24, 151 => 0xf104, 154 => 0x12, 156 => 0x38, 158 => 0x14, 159 => 0x10, 161 => 0x10, 163 => 'ExposureTime', 188 => 0x9, 189 => 0x35, 190 => 0x48, 191 => 0x8, 194 => 0x49b8, 390 => 0x12, 429 => 0xa018, 432 => [0x32,0x4a], 442 => 0x0, 443 => 0x0, 461 => [0x21,0x23,0x27], 488 => 0x10, 527 => 'ExposureTime' }, - 'exposuretime2' => { 432 => [0x33,0x4b] }, + 'exposurestandardadjustment' => { 458 => 0x202d }, + 'exposuretime' => { 7 => 0x4, 8 => 0x4, 9 => 0x4, 10 => 0x4, 11 => 0x4, 12 => 0x4, 13 => 0x4, 14 => 0x4, 15 => 0x4, 16 => 0x4, 17 => 0x4, 18 => 0x4, 19 => 0x4, 20 => 0x4, 21 => 0x4, 22 => 0x4, 23 => 0x4, 24 => 0x4, 25 => 0x4, 26 => 0x4, 27 => 0x4, 28 => 0x4, 29 => 0x4, 31 => 0x6, 32 => 0x7, 82 => 0x16, 125 => 0x829a, 144 => 0xfd05, 147 => 0x20, 149 => 0xfa24, 151 => 0xf104, 154 => 0x12, 156 => 0x38, 158 => 0x14, 159 => 0x10, 161 => 0x10, 163 => 'ExposureTime', 188 => 0x9, 189 => 0x35, 190 => 0x48, 191 => 0x8, 194 => 0x49b8, 390 => 0x12, 431 => 0xa018, 434 => [0x32,0x4a], 444 => 0x0, 445 => 0x0, 463 => [0x21,0x23,0x27], 490 => 0x10, 529 => 'ExposureTime' }, + 'exposuretime2' => { 434 => [0x33,0x4b] }, 'exposuretuning' => { 243 => 0x1c }, 'exposurevalue' => { 145 => 0x3 }, 'exposurewarning' => { 133 => 0x1302 }, 'exrauto' => { 133 => 0x1033 }, 'exrmode' => { 133 => 0x1034 }, - 'extdescraccessibility' => { 534 => 'ExtDescrAccessibility' }, + 'extdescraccessibility' => { 536 => 'ExtDescrAccessibility' }, 'extendedmenubanks' => { 249 => 0x120, 250 => 0x120, 251 => 0x114, 252 => 0x124, 253 => 0x124 }, 'extendedshutterspeeds' => { 325 => 0xf2, 326 => 0x102, 327 => 0x102, 328 => 0x118 }, 'extendedwbdetect' => { 330 => 0x902 }, @@ -2868,9 +2871,9 @@ my %tagLookup = ( 'externalflashstatus' => { 225 => '8.2' }, 'externalflashzoom' => { 333 => 0x1205, 335 => 0x1027 }, 'externalflashzoomoverride' => { 225 => '8.1' }, - 'externalmetadatalink' => { 535 => 'ExternalMetadataLink' }, + 'externalmetadatalink' => { 537 => 'ExternalMetadataLink' }, 'externalsensorbrightnessvalue' => { 349 => 0x311, 352 => 0x311, 353 => 0x311, 356 => 0x3408 }, - 'extrainfoversion' => { 446 => 0x1a }, + 'extrainfoversion' => { 448 => 0x1a }, 'eyedetection' => { 2 => 0x18 }, 'eyestartaf' => { 191 => 0x40 }, 'fac100per' => { 145 => 0xe94 }, @@ -2896,7 +2899,7 @@ my %tagLookup = ( 'face18size' => { 375 => 0x22 }, 'face19position' => { 374 => 0x24 }, 'face19size' => { 375 => 0x24 }, - 'face1position' => { 58 => 0x8, 116 => 0xd, 117 => 0x18, 219 => 0x4, 346 => 0x1, 374 => 0x0, 419 => 0xbc, 449 => 0x1, 450 => 0x0, 451 => 0x0, 452 => 0x5b }, + 'face1position' => { 58 => 0x8, 116 => 0xd, 117 => 0x18, 219 => 0x4, 346 => 0x1, 374 => 0x0, 421 => 0xbc, 451 => 0x1, 452 => 0x0, 453 => 0x0, 454 => 0x5b }, 'face1size' => { 375 => 0x0 }, 'face20position' => { 374 => 0x26 }, 'face20size' => { 375 => 0x26 }, @@ -2918,7 +2921,7 @@ my %tagLookup = ( 'face28size' => { 375 => 0x36 }, 'face29position' => { 374 => 0x38 }, 'face29size' => { 375 => 0x38 }, - 'face2position' => { 58 => 0xa, 116 => 0x7c, 117 => 0x4c, 219 => 0x8, 346 => 0x5, 374 => 0x2, 419 => 0xc8, 449 => 0x6, 450 => 0x20, 451 => 0x25, 452 => 0x65 }, + 'face2position' => { 58 => 0xa, 116 => 0x7c, 117 => 0x4c, 219 => 0x8, 346 => 0x5, 374 => 0x2, 421 => 0xc8, 451 => 0x6, 452 => 0x20, 453 => 0x25, 454 => 0x65 }, 'face2size' => { 375 => 0x2 }, 'face30position' => { 374 => 0x3a }, 'face30size' => { 375 => 0x3a }, @@ -2926,43 +2929,43 @@ my %tagLookup = ( 'face31size' => { 375 => 0x3c }, 'face32position' => { 374 => 0x3e }, 'face32size' => { 375 => 0x3e }, - 'face3position' => { 58 => 0xc, 116 => 0xeb, 117 => 0x80, 219 => 0xc, 346 => 0x9, 374 => 0x4, 419 => 0xd4, 449 => 0xb, 450 => 0x40, 451 => 0x4a, 452 => 0x6f }, + 'face3position' => { 58 => 0xc, 116 => 0xeb, 117 => 0x80, 219 => 0xc, 346 => 0x9, 374 => 0x4, 421 => 0xd4, 451 => 0xb, 452 => 0x40, 453 => 0x4a, 454 => 0x6f }, 'face3size' => { 375 => 0x4 }, - 'face4position' => { 58 => 0xe, 116 => 0x15a, 117 => 0xb4, 219 => 0x10, 346 => 0xd, 374 => 0x6, 419 => 0xe0, 449 => 0x10, 450 => 0x60, 451 => 0x6f, 452 => 0x79 }, + 'face4position' => { 58 => 0xe, 116 => 0x15a, 117 => 0xb4, 219 => 0x10, 346 => 0xd, 374 => 0x6, 421 => 0xe0, 451 => 0x10, 452 => 0x60, 453 => 0x6f, 454 => 0x79 }, 'face4size' => { 375 => 0x6 }, - 'face5position' => { 58 => 0x10, 116 => 0x1c9, 117 => 0xe8, 219 => 0x14, 346 => 0x11, 374 => 0x8, 419 => 0xec, 449 => 0x15, 450 => 0x80, 451 => 0x94 }, + 'face5position' => { 58 => 0x10, 116 => 0x1c9, 117 => 0xe8, 219 => 0x14, 346 => 0x11, 374 => 0x8, 421 => 0xec, 451 => 0x15, 452 => 0x80, 453 => 0x94 }, 'face5size' => { 375 => 0x8 }, - 'face6position' => { 58 => 0x12, 116 => 0x238, 117 => 0x11c, 219 => 0x18, 374 => 0xa, 419 => 0xf8, 449 => 0x1a, 450 => 0xa0, 451 => 0xb9 }, + 'face6position' => { 58 => 0x12, 116 => 0x238, 117 => 0x11c, 219 => 0x18, 374 => 0xa, 421 => 0xf8, 451 => 0x1a, 452 => 0xa0, 453 => 0xb9 }, 'face6size' => { 375 => 0xa }, - 'face7position' => { 58 => 0x14, 116 => 0x2a7, 117 => 0x150, 219 => 0x1c, 374 => 0xc, 419 => 0x104, 449 => 0x1f, 450 => 0xc0, 451 => 0xde }, + 'face7position' => { 58 => 0x14, 116 => 0x2a7, 117 => 0x150, 219 => 0x1c, 374 => 0xc, 421 => 0x104, 451 => 0x1f, 452 => 0xc0, 453 => 0xde }, 'face7size' => { 375 => 0xc }, - 'face8position' => { 58 => 0x16, 116 => 0x316, 117 => 0x184, 219 => 0x20, 374 => 0xe, 419 => 0x110, 449 => 0x24, 450 => 0xe0, 451 => 0x103 }, + 'face8position' => { 58 => 0x16, 116 => 0x316, 117 => 0x184, 219 => 0x20, 374 => 0xe, 421 => 0x110, 451 => 0x24, 452 => 0xe0, 453 => 0x103 }, 'face8size' => { 375 => 0xe }, 'face9position' => { 58 => 0x18, 116 => 0x385, 117 => 0x1b8, 219 => 0x24, 374 => 0x10 }, 'face9size' => { 375 => 0x10 }, - 'facebalanceorigi' => { 514 => 'FaceBalanceOrigI' }, - 'facebalanceorigq' => { 514 => 'FaceBalanceOrigQ' }, - 'facebalancestrength' => { 514 => 'FaceBalanceStrength' }, - 'facebalancewarmth' => { 514 => 'FaceBalanceWarmth' }, - 'facedetect' => { 390 => 0x76, 429 => 0x100 }, + 'facebalanceorigi' => { 516 => 'FaceBalanceOrigI' }, + 'facebalanceorigq' => { 516 => 'FaceBalanceOrigQ' }, + 'facebalancestrength' => { 516 => 'FaceBalanceStrength' }, + 'facebalancewarmth' => { 516 => 'FaceBalanceWarmth' }, + 'facedetect' => { 390 => 0x76, 431 => 0x100 }, 'facedetectarea' => { 334 => 0x1201 }, 'facedetectframecrop' => { 334 => 0x1207 }, - 'facedetectframesize' => { 58 => 0x3, 116 => 0x1, 117 => 0x4, 219 => 0x1, 334 => 0x1203, 390 => 0x77, 419 => 0xb6 }, - 'facedetection' => { 444 => 0x30, 461 => 0x19 }, + 'facedetectframesize' => { 58 => 0x3, 116 => 0x1, 117 => 0x4, 219 => 0x1, 334 => 0x1203, 390 => 0x77, 421 => 0xb6 }, + 'facedetection' => { 446 => 0x30, 463 => 0x19 }, 'faceelementpositions' => { 133 => 0x4203 }, 'faceelementselected' => { 133 => 0x4005 }, 'faceelementtypes' => { 133 => 0x4201 }, - 'faceid' => { 517 => 'FaceID' }, + 'faceid' => { 519 => 'FaceID' }, 'faceinfounknown' => { 119 => 0x2089 }, - 'facename' => { 429 => 0x123 }, + 'facename' => { 431 => 0x123 }, 'faceorientation' => { 117 => 0x8 }, - 'faceposition' => { 373 => 0x2, 430 => 0x4 }, + 'faceposition' => { 373 => 0x2, 432 => 0x4 }, 'facepositions' => { 133 => 0x4103 }, - 'facerecognition' => { 429 => 0x120 }, - 'facesdetected' => { 58 => 0x2, 59 => 0x2, 60 => 0x3, 116 => 0x0, 117 => 0x2, 119 => 0x211c, 133 => 0x4100, 219 => 0x3, 334 => 0x1200, 354 => 0x3f, 373 => 0x0, 419 => 0xb5, 430 => 0x0, 449 => 0x0, 452 => 0x3, 464 => 0x30 }, + 'facerecognition' => { 431 => 0x120 }, + 'facesdetected' => { 58 => 0x2, 59 => 0x2, 60 => 0x3, 116 => 0x0, 117 => 0x2, 119 => 0x211c, 133 => 0x4100, 219 => 0x3, 334 => 0x1200, 354 => 0x3f, 373 => 0x0, 421 => 0xb5, 432 => 0x0, 451 => 0x0, 454 => 0x3, 466 => 0x30 }, 'facesrecognized' => { 347 => 0x0 }, 'facewidth' => { 59 => 0x1 }, - 'fade' => { 456 => 0x2034 }, + 'fade' => { 458 => 0x2034 }, 'faithfuloutputhighlightpoint' => { 115 => 0x38 }, 'faithfuloutputshadowpoint' => { 115 => 0x39 }, 'faithfulrawcolortone' => { 115 => 0x31 }, @@ -2977,33 +2980,33 @@ my %tagLookup = ( 'faithfulunsharpmaskfineness' => { 115 => 0xac }, 'faithfulunsharpmaskstrength' => { 115 => 0xaa }, 'faithfulunsharpmaskthreshold' => { 115 => 0xae }, - 'far' => { 504 => 'Far' }, + 'far' => { 506 => 'Far' }, 'fastresetlinetime' => { 145 => 0x1860 }, - 'feedidentifier' => { 535 => 'FeedIdentifier' }, + 'feedidentifier' => { 537 => 'FeedIdentifier' }, 'femicroadjustment' => { 90 => 0x111 }, - 'ffid' => { 525 => 'ffid' }, - 'field' => { 539 => 'field' }, + 'ffid' => { 527 => 'ffid' }, + 'field' => { 541 => 'field' }, 'fieldcount' => { 335 => 0x103f }, - 'fieldofview' => { 415 => "FOV\x00" }, + 'fieldofview' => { 416 => "FOV\x00" }, 'fifoenonepixeldelay' => { 145 => 0x1901 }, 'filecreatedate' => { 126 => 'FileCreateDate' }, - 'filedatarate' => { 550 => 'fileDataRate' }, - 'fileformat' => { 101 => 0x0, 139 => 0x14, 432 => [0x22,0x26], 456 => 0xb000 }, + 'filedatarate' => { 552 => 'fileDataRate' }, + 'fileformat' => { 101 => 0x0, 139 => 0x14, 434 => [0x22,0x26], 458 => 0xb000 }, 'filegroupid' => { 126 => 'FileGroupID' }, 'fileindex' => { 7 => 0x143, 9 => 0x2d0, 11 => 0x172, 13 => 0x22c, 14 => 0x133, 15 => 0x13f, 16 => 0x1d3, 17 => 0x19b, 18 => 0x1e4, 19 => 0xd0, 20 => 0x1bb, 21 => 0x28c, 22 => 0x1db, 23 => 0x1d9, 24 => [0x270,0x274], 25 => 0x2aa, 26 => 0x2b3, 28 => 0x1eb, 29 => 0x4ae, 30 => 0xb2d, 355 => 0x0 }, 'fileindex2' => { 21 => 0x290 }, 'filemodifydate' => { 126 => 'FileModifyDate' }, 'filename' => { 126 => 'FileName' }, 'filenameasdelivered' => { 340 => 'FileNameAsDelivered' }, - 'filenumber' => { 61 => 0x1, 69 => 0x8, 103 => 0x1817, 120 => 'Canon-FileNumber', 220 => 0x4, 418 => 0x10 }, + 'filenumber' => { 61 => 0x1, 69 => 0x8, 103 => 0x1817, 120 => 'Canon-FileNumber', 220 => 0x4, 420 => 0x10 }, 'filenumbermemory' => { 188 => 0x1a }, 'filenumbersequence' => { 309 => '12.2', 314 => '3.1', 315 => '4.1', 316 => '4.1', 318 => '11.1', 319 => '4.3', 324 => '5.2', 325 => 0x4e, 326 => 0x48, 327 => 0x48, 328 => 0x48 }, 'filepermissions' => { 126 => 'FilePermissions' }, - 'filesource' => { 125 => 0xa300, 133 => 0x8000, 527 => 'FileSource' }, + 'filesource' => { 125 => 0xa300, 133 => 0x8000, 529 => 'FileSource' }, 'fileuserid' => { 126 => 'FileUserID' }, 'fileversion' => { 139 => 0x16 }, 'fillflashautoreduction' => { 88 => 0xe, 89 => 0xe, 96 => 0xa }, - 'filllight' => { 521 => 'FillLight', 523 => 'FillLight' }, + 'filllight' => { 523 => 'FillLight', 525 => 'FillLight' }, 'fillorder' => { 125 => 0x10a }, 'filmgraineffect' => { 330 => 0x538 }, 'filmmode' => { 133 => 0x1401, 351 => 0x412, 354 => 0x42 }, @@ -3031,22 +3034,22 @@ my %tagLookup = ( 'finishnoise' => { 145 => 0xdba }, 'finishresolution' => { 145 => 0xdb9 }, 'finishsharpening' => { 145 => 0xdbb }, - 'firmware' => { 335 => 0x405, 432 => [0x8c,0x17,0x3b], 518 => 'Firmware' }, - 'firmware2' => { 432 => 0x57 }, - 'firmwaredate' => { 118 => 0x15, 119 => 0x2001, 416 => 0x4, 418 => 0x30 }, + 'firmware' => { 335 => 0x405, 434 => [0x8c,0x17,0x3b], 520 => 'Firmware' }, + 'firmware2' => { 434 => 0x57 }, + 'firmwaredate' => { 118 => 0x15, 119 => 0x2001, 418 => 0x4, 420 => 0x30 }, 'firmwareid' => { 195 => 0x0 }, - 'firmwarename' => { 429 => 0xa001 }, - 'firmwarerevision' => { 19 => 0xa4, 69 => 0x1e, 420 => 0x0 }, - 'firmwarerevision2' => { 420 => 0xc }, - 'firmwareversion' => { 7 => 0x10b, 11 => 0x136, 14 => 0xff, 15 => 0x107, 145 => [0x415,0xce5], 161 => 0x57, 163 => 'FirmwareVersion', 352 => 0x320, 354 => 0x2, 356 => 0x3109, 390 => 0x230, 415 => ['CNFV','FIRM','info'], 417 => 0x18, 418 => 0x2a, 422 => 0x2 }, + 'firmwarename' => { 431 => 0xa001 }, + 'firmwarerevision' => { 19 => 0xa4, 69 => 0x1e, 422 => 0x0 }, + 'firmwarerevision2' => { 422 => 0xc }, + 'firmwareversion' => { 7 => 0x10b, 11 => 0x136, 14 => 0xff, 15 => 0x107, 145 => [0x415,0xce5], 161 => 0x57, 163 => 'FirmwareVersion', 352 => 0x320, 354 => 0x2, 356 => 0x3109, 390 => 0x230, 416 => ['CNFV','FIRM','info'], 419 => 0x18, 420 => 0x2a, 424 => 0x2 }, 'firmwareversions' => { 399 => 0x301 }, - 'firstphotodate' => { 507 => 'FirstPhotoDate' }, + 'firstphotodate' => { 509 => 'FirstPhotoDate' }, 'firstpublicationdate' => { 340 => 'FirstPublicationDate' }, - 'fixtureidentifier' => { 138 => 0x16, 515 => 'FixtureIdentifier' }, - 'flash' => { 120 => 'XMP-Flash', 125 => 0x9209, 159 => 0x22, 189 => 0x1f, 190 => 0x15, 418 => 0x5a, 527 => 'Flash' }, - 'flashaction' => { 442 => 0x3e, 443 => 0x3e, 456 => 0x2017, 461 => [0x2a,0x2c,0x30] }, - 'flashaction2' => { 442 => 0x4c, 443 => 0x4c, 461 => 0x77 }, - 'flashactionexternal' => { 461 => [0x78,0x7c] }, + 'fixtureidentifier' => { 138 => 0x16, 517 => 'FixtureIdentifier' }, + 'flash' => { 120 => 'XMP-Flash', 125 => 0x9209, 159 => 0x22, 189 => 0x1f, 190 => 0x15, 420 => 0x5a, 529 => 'Flash' }, + 'flashaction' => { 444 => 0x3e, 445 => 0x3e, 458 => 0x2017, 463 => [0x2a,0x2c,0x30] }, + 'flashaction2' => { 444 => 0x4c, 445 => 0x4c, 463 => 0x77 }, + 'flashactionexternal' => { 463 => [0x78,0x7c] }, 'flashactivity' => { 37 => 0x1c }, 'flashbatterylevel' => { 48 => 0x249 }, 'flashbias' => { 354 => 0x24 }, @@ -3056,32 +3059,32 @@ my %tagLookup = ( 'flashchargelevel' => { 335 => 0x1010 }, 'flashcolorfilter' => { 223 => 0x10, 224 => 0x10, 226 => 0x10 }, 'flashcommandermode' => { 221 => '9.1', 222 => '9.1', 223 => '9.1', 224 => '9.1', 226 => '9.1' }, - 'flashcompensation' => { 145 => 0x3f3, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 225 => 0xa, 226 => 0xa, 518 => 'FlashCompensation' }, - 'flashcontrol' => { 442 => 0x23, 443 => 0x1f, 444 => 0x21 }, + 'flashcompensation' => { 145 => 0x3f3, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 225 => 0xa, 226 => 0xa, 520 => 'FlashCompensation' }, + 'flashcontrol' => { 444 => 0x23, 445 => 0x1f, 446 => 0x21 }, 'flashcontrolbuilt-in' => { 318 => '16.1', 319 => '23.1', 321 => '23.1', 322 => '24.1' }, 'flashcontrolmode' => { 221 => '9.2', 222 => '9.2', 223 => '9.2', 224 => '9.2', 226 => '9.2', 232 => 0x214, 247 => 0x2d4, 248 => 0x148, 249 => 0x1b8, 250 => 0x1b8, 251 => 0x1a8, 252 => 0x1bc, 253 => 0x1bc, 330 => 0x404 }, 'flashcurtain' => { 354 => 0x48 }, 'flashdefault' => { 191 => 0x42 }, 'flashdevice' => { 335 => 0x1005 }, 'flashdistance' => { 119 => 0x2034 }, - 'flashenergy' => { 125 => 0xa20b, 527 => 'FlashEnergy' }, + 'flashenergy' => { 125 => 0xa20b, 529 => 'FlashEnergy' }, 'flashexposurebracketvalue' => { 243 => 0x18 }, - 'flashexposurecomp' => { 82 => 0xf, 133 => 0x1011, 166 => 'ExposureComp', 188 => 0x23, 193 => 0x104, 194 => 0x49c1, 243 => 0x12, 330 => 0x401, 335 => 0x1023, 390 => 0x4d, 422 => 0x100b, 432 => [0x3a,0x56], 456 => 0x104 }, + 'flashexposurecomp' => { 82 => 0xf, 133 => 0x1011, 166 => 'ExposureComp', 188 => 0x23, 193 => 0x104, 194 => 0x49c1, 243 => 0x12, 330 => 0x401, 335 => 0x1023, 390 => 0x4d, 424 => 0x100b, 434 => [0x3a,0x56], 458 => 0x104 }, 'flashexposurecomp2' => { 289 => 0x4d2 }, 'flashexposurecomp3' => { 223 => 0x1d }, 'flashexposurecomp4' => { 223 => 0x27 }, 'flashexposurecomparea' => { 310 => '38.4', 312 => '38.4', 313 => '38.4', 322 => '38.4', 323 => '38.4', 325 => 0x5d, 326 => 0x59, 327 => 0x59, 328 => 0x59 }, - 'flashexposurecompset' => { 191 => 0x10, 362 => 0xe, 442 => 0x14, 443 => 0x12, 444 => 0x23, 461 => 0x1f }, - 'flashexposurecompset2' => { 461 => [0x26,0x2c] }, + 'flashexposurecompset' => { 191 => 0x10, 362 => 0xe, 444 => 0x14, 445 => 0x12, 446 => 0x23, 463 => 0x1f }, + 'flashexposurecompset2' => { 463 => [0x26,0x2c] }, 'flashexposureindicator' => { 191 => 0x54 }, 'flashexposureindicatorlast' => { 191 => 0x56 }, 'flashexposureindicatornext' => { 191 => 0x55 }, 'flashexposurelock' => { 61 => 0x19 }, - 'flashfired' => { 147 => 0x5d, 166 => 'Fired', 188 => 0x14, 288 => '590.3', 527 => [\'Flash','FlashFired'] }, + 'flashfired' => { 147 => 0x5d, 166 => 'Fired', 188 => 0x14, 288 => '590.3', 529 => [\'Flash','FlashFired'] }, 'flashfiring' => { 90 => 0x306, 91 => 0x6, 92 => 0x7, 95 => 0x7 }, 'flashfirmwareversion' => { 331 => 0x1002 }, 'flashfocallength' => { 221 => 0xb, 222 => 0xc, 223 => 0xc, 224 => 0xc, 225 => 0xc, 226 => 0x26 }, - 'flashfunction' => { 194 => 0x31, 527 => [\'Flash','FlashFunction'] }, + 'flashfunction' => { 194 => 0x31, 529 => [\'Flash','FlashFunction'] }, 'flashgndistance' => { 221 => 0xe, 222 => 0xf, 223 => 0xf, 224 => 0xf, 225 => 0xf, 226 => 0xf, 232 => 0x21a, 247 => 0x2da, 248 => 0x14e, 251 => 0x1ae, 252 => 0x1c2, 253 => 0x1c2 }, 'flashgroupacompensation' => { 221 => 0x11, 222 => 0x12, 223 => 0x13, 224 => 0x28, 225 => 0x28, 226 => 0x28 }, 'flashgroupacontrolmode' => { 221 => 0xf, 222 => '16.1', 223 => '17.1', 224 => '17.1', 225 => '17.1', 226 => '17.1' }, @@ -3095,7 +3098,7 @@ my %tagLookup = ( 'flashguidenumber' => { 82 => 0xd, 100 => 0x0, 166 => 'GuideNumber' }, 'flashilluminationpattern' => { 226 => 0x25 }, 'flashintensity' => { 118 => [0x19,0x5], 330 => 0x405 }, - 'flashlevel' => { 311 => 0x9, 456 => 0xb048 }, + 'flashlevel' => { 311 => 0x9, 458 => 0xb048 }, 'flashmake' => { 166 => 'Make' }, 'flashmanufacturer' => { 185 => 'FlashManufacturer' }, 'flashmastercompensation' => { 232 => 0x22e, 247 => 0x2ee, 248 => 0x162, 251 => 0x1aa, 252 => 0x1be, 253 => 0x1be }, @@ -3104,33 +3107,33 @@ my %tagLookup = ( 'flashmetering' => { 188 => 0x3f, 191 => 0x1c }, 'flashmeteringmode' => { 7 => 0x15, 13 => 0x15, 14 => 0x15, 15 => 0x15, 16 => 0x15, 17 => 0x15, 18 => 0x15, 20 => 0x15, 22 => 0x15, 28 => 0x15 }, 'flashmeteringsegments' => { 390 => 0x20a }, - 'flashmode' => { 118 => 0x4, 145 => 0x3f2, 147 => 0x5c, 158 => 0x27, 166 => 'Mode', 188 => 0x2, 189 => 0x20, 190 => 0x16, 191 => 0xf, 243 => 0x87, 330 => 0x400, 335 => 0x1004, 390 => 0xc, 397 => 0x4, 421 => 0x20, 422 => 0x100a, 431 => 0x225, 442 => 0x13, 443 => 0x7f, 444 => 0x20, 461 => 0x10, 465 => 0x1138, 466 => 0x1138, 467 => 0x1114, 468 => 0x1190, 469 => 0x116c, 470 => 0x1024, 471 => 0x21c, 472 => 0x21c, 473 => 0x211, 527 => [\'Flash','FlashMode'] }, + 'flashmode' => { 118 => 0x4, 145 => 0x3f2, 147 => 0x5c, 158 => 0x27, 166 => 'Mode', 188 => 0x2, 189 => 0x20, 190 => 0x16, 191 => 0xf, 243 => 0x87, 330 => 0x400, 335 => 0x1004, 390 => 0xc, 397 => 0x4, 423 => 0x20, 424 => 0x100a, 433 => 0x225, 444 => 0x13, 445 => 0x7f, 446 => 0x20, 463 => 0x10, 467 => 0x1138, 468 => 0x1138, 469 => 0x1114, 470 => 0x1190, 471 => 0x116c, 472 => 0x1024, 473 => 0x21c, 474 => 0x21c, 475 => 0x211, 529 => [\'Flash','FlashMode'] }, 'flashmodebutton' => { 253 => 0x80e }, 'flashmodebuttonplaybackmode' => { 253 => 0x818 }, 'flashmodel' => { 166 => 'Model', 185 => 'FlashModel', 331 => 0x1001 }, 'flashoptions' => { 370 => 0x2 }, 'flashoptions2' => { 370 => 0x10 }, 'flashoutput' => { 48 => 0x248, 82 => 0x21, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 226 => 0x21, 232 => 0x21e, 247 => 0x2de, 248 => 0x152, 251 => 0x1b2, 252 => 0x1c6, 253 => 0x1c6 }, - 'flashpixversion' => { 125 => 0xa000, 527 => 'FlashpixVersion' }, - 'flashredeyemode' => { 527 => [\'Flash','FlashRedEyeMode'] }, + 'flashpixversion' => { 125 => 0xa000, 529 => 'FlashpixVersion' }, + 'flashredeyemode' => { 529 => [\'Flash','FlashRedEyeMode'] }, 'flashremotecontrol' => { 232 => 0x228, 247 => 0x2e8, 248 => 0x15c, 251 => 0x1bc, 330 => 0x403 }, - 'flashreturn' => { 527 => [\'Flash','FlashReturn'] }, + 'flashreturn' => { 529 => [\'Flash','FlashReturn'] }, 'flashserialnumber' => { 166 => 'SerialNumber', 331 => 0x1003 }, 'flashsetting' => { 243 => 0x8 }, 'flashshutterspeed' => { 309 => '20.2', 310 => '23.2', 312 => '23.2', 313 => '23.2', 318 => '15.2', 319 => '22.2', 320 => '7.2', 321 => '22.2', 322 => '23.2', 323 => '23.2', 324 => '23.1', 325 => 0x5b, 326 => 0x57, 327 => 0x57, 328 => 0x57 }, 'flashsource' => { 221 => 0x4, 222 => 0x4, 223 => 0x4, 224 => 0x4, 225 => 0x4, 226 => 0x4 }, - 'flashstatus' => { 377 => 0x0, 461 => [0x82,0x86], 475 => 0x31, 476 => 0x39, 477 => 0x39 }, - 'flashstatusbuilt-in' => { 444 => [0x87,0x287] }, - 'flashstatusexternal' => { 444 => [0x88,0x288] }, + 'flashstatus' => { 377 => 0x0, 463 => [0x82,0x86], 477 => 0x31, 478 => 0x39, 479 => 0x39 }, + 'flashstatusbuilt-in' => { 446 => [0x87,0x287] }, + 'flashstatusexternal' => { 446 => [0x88,0x288] }, 'flashsyncspeed' => { 309 => '20.1', 310 => '23.1', 312 => '23.1', 313 => '23.1', 318 => '15.1', 319 => '22.1', 321 => '22.1', 322 => '23.1', 323 => '23.1', 325 => 0x57, 326 => 0x53, 327 => 0x53, 328 => 0x53 }, 'flashsyncspeedav' => { 88 => 0x3, 90 => 0x10f, 91 => 0x2, 92 => 0x3, 93 => 0x2, 94 => 0x2, 95 => 0x3, 96 => 0x6 }, 'flashthreshold' => { 100 => 0x1 }, 'flashtype' => { 166 => 'Type', 191 => 0x59, 243 => 0x9, 331 => 0x1000 }, 'flashwarning' => { 319 => '30.1', 320 => '7.1', 324 => '31.1', 354 => 0x62 }, 'flashwirelessoption' => { 232 => 0x234, 247 => 0x2e6, 248 => 0x15a, 251 => 0x1c8 }, - 'flexiblespotposition' => { 456 => 0x201d }, + 'flexiblespotposition' => { 458 => 0x201d }, 'flickadvancedirection' => { 326 => 0x25f, 327 => 0x25f, 328 => 0x277 }, - 'flickerreduce' => { 431 => 0x218 }, + 'flickerreduce' => { 433 => 0x218 }, 'flickerreduction' => { 133 => 0x1446, 272 => 0x7 }, 'flickerreductionindicator' => { 267 => 0x532 }, 'flickerreductionshooting' => { 247 => 0x2d0, 249 => 0x1b4, 250 => 0x1b4, 251 => 0x1a4, 252 => 0x1b8, 253 => 0x1b8 }, @@ -3141,40 +3144,40 @@ my %tagLookup = ( 'flightyspeed' => { 122 => 'FlightYSpeed' }, 'flightzspeed' => { 122 => 'FlightZSpeed' }, 'fliphorizontal' => { 302 => 0x76a43206 }, - 'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 31 => 0x5, 32 => 0x6, 82 => 0x15, 125 => 0x829d, 144 => 0xfd04, 147 => 0x1e, 149 => 0xfa23, 151 => 0xf103, 154 => 0x13, 156 => 0x3c, 158 => 0x1c, 159 => 0x18, 161 => 0xc, 170 => 'FNumber', 188 => 0xa, 189 => 0x36, 190 => 0x47, 191 => 0x9, 194 => 0x49c7, 241 => 0x38, 353 => 0x35a, 390 => 0x13, 429 => 0xa019, 432 => [0x31,0x49], 442 => 0x1, 443 => 0x1, 461 => [0x20,0x22,0x26], 527 => 'FNumber' }, - 'focaldistance' => { 505 => 'FocalDistance' }, - 'focallength' => { 7 => 0x1d, 8 => 0xa, 9 => 0x23, 10 => 0x9, 11 => 0x1d, 12 => 0x9, 13 => 0x1e, 14 => 0x1d, 15 => 0x1d, 16 => 0x1e, 17 => 0x1e, 18 => 0x1e, 19 => 0x28, 20 => 0x1e, 21 => 0x23, 22 => 0x1e, 23 => 0x1e, 24 => 0x23, 25 => 0x23, 26 => 0x23, 27 => 0x23, 28 => 0x1e, 29 => 0x23, 63 => 0x1, 66 => 0x7, 119 => 0x1d, 125 => 0x920a, 154 => 0x1d, 170 => 'FocalLength', 188 => 0x12, 236 => 0xa, 237 => 0xb, 241 => [0xc,0x3c], 348 => 0x1, 390 => 0x1d, 399 => 0x403, 422 => 0x1500, 441 => 0xe, 469 => 0x1278, 470 => 0x1134, 471 => 0x32c, 472 => 0x32c, 473 => 0x30a, 527 => 'FocalLength' }, - 'focallength2' => { 461 => [0x23,0x25,0x29] }, + 'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 31 => 0x5, 32 => 0x6, 82 => 0x15, 125 => 0x829d, 144 => 0xfd04, 147 => 0x1e, 149 => 0xfa23, 151 => 0xf103, 154 => 0x13, 156 => 0x3c, 158 => 0x1c, 159 => 0x18, 161 => 0xc, 170 => 'FNumber', 188 => 0xa, 189 => 0x36, 190 => 0x47, 191 => 0x9, 194 => 0x49c7, 241 => 0x38, 353 => 0x35a, 390 => 0x13, 431 => 0xa019, 434 => [0x31,0x49], 444 => 0x1, 445 => 0x1, 463 => [0x20,0x22,0x26], 529 => 'FNumber' }, + 'focaldistance' => { 507 => 'FocalDistance' }, + 'focallength' => { 7 => 0x1d, 8 => 0xa, 9 => 0x23, 10 => 0x9, 11 => 0x1d, 12 => 0x9, 13 => 0x1e, 14 => 0x1d, 15 => 0x1d, 16 => 0x1e, 17 => 0x1e, 18 => 0x1e, 19 => 0x28, 20 => 0x1e, 21 => 0x23, 22 => 0x1e, 23 => 0x1e, 24 => 0x23, 25 => 0x23, 26 => 0x23, 27 => 0x23, 28 => 0x1e, 29 => 0x23, 63 => 0x1, 66 => 0x7, 119 => 0x1d, 125 => 0x920a, 154 => 0x1d, 170 => 'FocalLength', 188 => 0x12, 236 => 0xa, 237 => 0xb, 241 => [0xc,0x3c], 348 => 0x1, 390 => 0x1d, 399 => 0x403, 424 => 0x1500, 443 => 0xe, 471 => 0x1278, 472 => 0x1134, 473 => 0x32c, 474 => 0x32c, 475 => 0x30a, 529 => 'FocalLength' }, + 'focallength2' => { 463 => [0x23,0x25,0x29] }, 'focallength35mm' => { 344 => 'FocalLength35mm' }, - 'focallengthin35mmformat' => { 125 => 0xa405, 429 => 0xa01a, 527 => 'FocalLengthIn35mmFilm' }, - 'focallengthtelezoom' => { 441 => 0x10 }, - 'focalplaneafpointarea' => { 474 => 0x2 }, - 'focalplaneafpointlocation1' => { 474 => 0x6 }, - 'focalplaneafpointlocation10' => { 474 => 0x2a }, - 'focalplaneafpointlocation11' => { 474 => 0x2e }, - 'focalplaneafpointlocation12' => { 474 => 0x32 }, - 'focalplaneafpointlocation13' => { 474 => 0x36 }, - 'focalplaneafpointlocation14' => { 474 => 0x3a }, - 'focalplaneafpointlocation15' => { 474 => 0x3e }, - 'focalplaneafpointlocation2' => { 474 => 0xa }, - 'focalplaneafpointlocation3' => { 474 => 0xe }, - 'focalplaneafpointlocation4' => { 474 => 0x12 }, - 'focalplaneafpointlocation5' => { 474 => 0x16 }, - 'focalplaneafpointlocation6' => { 474 => 0x1a }, - 'focalplaneafpointlocation7' => { 474 => 0x1e }, - 'focalplaneafpointlocation8' => { 474 => 0x22 }, - 'focalplaneafpointlocation9' => { 474 => 0x26 }, - 'focalplaneafpointsused' => { 474 => 0x1 }, + 'focallengthin35mmformat' => { 125 => 0xa405, 417 => 'camera.focal_length.35mm_equivalent', 431 => 0xa01a, 529 => 'FocalLengthIn35mmFilm' }, + 'focallengthtelezoom' => { 443 => 0x10 }, + 'focalplaneafpointarea' => { 476 => 0x2 }, + 'focalplaneafpointlocation1' => { 476 => 0x6 }, + 'focalplaneafpointlocation10' => { 476 => 0x2a }, + 'focalplaneafpointlocation11' => { 476 => 0x2e }, + 'focalplaneafpointlocation12' => { 476 => 0x32 }, + 'focalplaneafpointlocation13' => { 476 => 0x36 }, + 'focalplaneafpointlocation14' => { 476 => 0x3a }, + 'focalplaneafpointlocation15' => { 476 => 0x3e }, + 'focalplaneafpointlocation2' => { 476 => 0xa }, + 'focalplaneafpointlocation3' => { 476 => 0xe }, + 'focalplaneafpointlocation4' => { 476 => 0x12 }, + 'focalplaneafpointlocation5' => { 476 => 0x16 }, + 'focalplaneafpointlocation6' => { 476 => 0x1a }, + 'focalplaneafpointlocation7' => { 476 => 0x1e }, + 'focalplaneafpointlocation8' => { 476 => 0x22 }, + 'focalplaneafpointlocation9' => { 476 => 0x26 }, + 'focalplaneafpointsused' => { 476 => 0x1 }, 'focalplanediagonal' => { 331 => 0x103, 335 => 0x205 }, - 'focalplaneresolutionunit' => { 125 => 0xa210, 527 => 'FocalPlaneResolutionUnit' }, - 'focalplanexresolution' => { 125 => 0xa20e, 527 => 'FocalPlaneXResolution' }, + 'focalplaneresolutionunit' => { 125 => 0xa210, 529 => 'FocalPlaneResolutionUnit' }, + 'focalplanexresolution' => { 125 => 0xa20e, 529 => 'FocalPlaneXResolution' }, 'focalplanexsize' => { 63 => 0x2 }, 'focalplanexunknown' => { 63 => 0x2 }, - 'focalplaneyresolution' => { 125 => 0xa20f, 527 => 'FocalPlaneYResolution' }, + 'focalplaneyresolution' => { 125 => 0xa20f, 529 => 'FocalPlaneYResolution' }, 'focalplaneysize' => { 63 => 0x3 }, 'focalplaneyunknown' => { 63 => 0x3 }, - 'focalpointx' => { 505 => 'FocalPointX' }, - 'focalpointy' => { 505 => 'FocalPointY' }, + 'focalpointx' => { 507 => 'FocalPointX' }, + 'focalpointy' => { 507 => 'FocalPointY' }, 'focaltype' => { 10 => 0x2d, 63 => 0x0 }, 'focalunits' => { 37 => 0x19 }, 'focus' => { 291 => 0x8 }, @@ -3192,13 +3195,13 @@ my %tagLookup = ( 'focusholdbutton' => { 191 => 0x44 }, 'focusinfoversion' => { 333 => 0x0 }, 'focusingscreen' => { 89 => 0x0, 90 => 0x80b, 95 => 0x0 }, - 'focuslocation' => { 456 => 0x2027 }, - 'focuslocation2' => { 456 => 0x204a }, + 'focuslocation' => { 458 => 0x2027 }, + 'focuslocation2' => { 458 => 0x204a }, 'focuslocked' => { 187 => 0x14 }, - 'focusmode' => { 37 => 0x7, 118 => 0x3, 119 => [0x3003,0xd], 133 => 0x1021, 145 => 0x3f5, 147 => 0x38, 163 => 'FocusMode', 188 => 0x30, 190 => 0xe, 191 => 0xc, 243 => 0x7, 330 => 0x301, 335 => 0x100b, 354 => 0x7, 390 => 0xd, 397 => 0x3, 422 => 0x1006, 435 => [0xb,0x5], 441 => [0x15,0x1d], 442 => 0x4d, 443 => 0x4d, 456 => [0xb042,0xb04e,0x201b], 461 => 0x13, 482 => 0x16 }, - 'focusmode2' => { 132 => '0.1', 370 => '3.1', 461 => [0x2c,0x2e,0x32] }, - 'focusmodesetting' => { 311 => '10.1', 439 => 0x14, 440 => 0x15, 442 => 0x10, 443 => 0xf, 444 => 0x6 }, - 'focusmodeswitch' => { 191 => 0x58, 442 => 0x2e }, + 'focusmode' => { 37 => 0x7, 118 => 0x3, 119 => [0x3003,0xd], 133 => 0x1021, 145 => 0x3f5, 147 => 0x38, 163 => 'FocusMode', 188 => 0x30, 190 => 0xe, 191 => 0xc, 243 => 0x7, 330 => 0x301, 335 => 0x100b, 354 => 0x7, 390 => 0xd, 397 => 0x3, 424 => 0x1006, 437 => [0xb,0x5], 443 => [0x15,0x1d], 444 => 0x4d, 445 => 0x4d, 458 => [0xb042,0xb04e,0x201b], 463 => 0x13, 484 => 0x16 }, + 'focusmode2' => { 132 => '0.1', 370 => '3.1', 463 => [0x2c,0x2e,0x32] }, + 'focusmodesetting' => { 311 => '10.1', 441 => 0x14, 442 => 0x15, 444 => 0x10, 445 => 0xf, 446 => 0x6 }, + 'focusmodeswitch' => { 191 => 0x58, 444 => 0x2e }, 'focuspeakingdisplay' => { 325 => 0x22f, 326 => 0x235, 327 => 0x235, 328 => 0x24d }, 'focuspeakinghighlightcolor' => { 325 => 0x53, 326 => 0x4b, 327 => 0x4b, 328 => 0x4b }, 'focuspeakinglevel' => { 325 => 0x51, 326 => 0x49, 327 => 0x49, 328 => 0x49 }, @@ -3206,23 +3209,23 @@ my %tagLookup = ( 'focuspointlock' => { 326 => 0x1d3, 327 => 0x1d3, 328 => 0x1eb }, 'focuspointpersistence' => { 325 => 0xf5, 326 => 0x105, 327 => 0x105, 328 => 0x11b }, 'focuspointwrap' => { 309 => '2.2', 310 => '2.2', 312 => '2.1', 313 => '2.1', 317 => '1.1', 318 => '2.2', 319 => '1.1', 322 => '2.2', 323 => '2.1', 324 => '2.5', 325 => 0x16, 326 => 0x16, 327 => 0x16, 328 => 0x16 }, - 'focusposition' => { 1 => 0x2f, 236 => 0x8, 237 => 0x8, 390 => 0x10, 453 => 0x9bb }, - 'focusposition2' => { 461 => [0x29,0x2b,0x2f], 482 => 0x2d, 485 => 0x20 }, - 'focuspositionhorizontal' => { 200 => 0x2f, 201 => 0x43 }, - 'focuspositionvertical' => { 200 => 0x31, 201 => 0x45 }, + 'focusposition' => { 1 => 0x2f, 236 => 0x8, 237 => 0x8, 390 => 0x10, 455 => 0x9bb }, + 'focusposition2' => { 463 => [0x29,0x2b,0x2f], 484 => 0x2d, 487 => 0x20 }, + 'focuspositionhorizontal' => { 200 => 0x2f }, + 'focuspositionvertical' => { 200 => 0x31 }, 'focusprocess' => { 330 => 0x302 }, 'focusrange' => { 37 => 0x12, 335 => 0x100a }, 'focusrangeindex' => { 380 => '3.1' }, 'focusresult' => { 201 => 0x4a }, 'focusringrotation' => { 90 => 0x713 }, - 'focussetting' => { 432 => 0x6 }, + 'focussetting' => { 434 => 0x6 }, 'focusshiftautoreset' => { 252 => 0x6da, 253 => 0x748 }, 'focusshiftexposurelock' => { 232 => 0x1b4, 247 => 0x224, 248 => 0xe8, 249 => 0x100, 250 => 0x100, 251 => 0xf4, 252 => 0x104, 253 => 0x104 }, 'focusshiftinterval' => { 232 => 0x1b0, 247 => 0x220, 248 => 0xe4, 249 => 0xfc, 250 => 0xfc, 251 => 0xf0, 252 => 0x100, 253 => 0x100 }, 'focusshiftnumbershots' => { 232 => 0x1a8, 247 => 0x218, 248 => 0xdc, 249 => 0xf4, 250 => 0xf4, 251 => 0xe8, 252 => 0xf8, 253 => 0xf8 }, 'focusshiftshooting' => { 270 => 0x20 }, 'focusshiftstepwidth' => { 232 => 0x1ac, 247 => 0x21c, 248 => 0xe0, 249 => 0xf8, 250 => 0xf8, 251 => 0xec, 252 => 0xfc, 253 => 0xfc }, - 'focusstatus' => { 441 => 0x19, 442 => 0x53, 443 => 0x53 }, + 'focusstatus' => { 443 => 0x19, 444 => 0x53, 445 => 0x53 }, 'focusstepcount' => { 333 => 0x301, 335 => 0x100e }, 'focusstepinfinity' => { 333 => 0x303, 335 => 0x103b }, 'focusstepnear' => { 333 => 0x304, 335 => 0x103c }, @@ -3230,19 +3233,19 @@ my %tagLookup = ( 'focustrackinglockon' => { 309 => ['1.5','4.1'], 310 => '1.4', 317 => '0.4', 318 => '3.1', 319 => '0.4', 322 => '1.4' }, 'focuswarning' => { 133 => 0x1301 }, 'foldername' => { 188 => 0x27 }, - 'foldernumber' => { 442 => 0x9a, 444 => [0x402,0x114,0x316] }, - 'fontcomposite' => { 555 => [\'Fonts','FontsComposite'] }, - 'fontface' => { 555 => [\'Fonts','FontsFontFace'] }, - 'fontfamily' => { 555 => [\'Fonts','FontsFontFamily'] }, - 'fontfilename' => { 555 => [\'Fonts','FontsFontFileName'] }, - 'fontname' => { 555 => [\'Fonts','FontsFontName'] }, - 'fonts' => { 555 => 'Fonts' }, - 'fonttype' => { 555 => [\'Fonts','FontsFontType'] }, - 'fontversion' => { 555 => [\'Fonts','FontsVersionString'] }, + 'foldernumber' => { 444 => 0x9a, 446 => [0x402,0x114,0x316] }, + 'fontcomposite' => { 557 => [\'Fonts','FontsComposite'] }, + 'fontface' => { 557 => [\'Fonts','FontsFontFace'] }, + 'fontfamily' => { 557 => [\'Fonts','FontsFontFamily'] }, + 'fontfilename' => { 557 => [\'Fonts','FontsFontFileName'] }, + 'fontname' => { 557 => [\'Fonts','FontsFontName'] }, + 'fonts' => { 557 => 'Fonts' }, + 'fonttype' => { 557 => [\'Fonts','FontsFontType'] }, + 'fontversion' => { 557 => [\'Fonts','FontsVersionString'] }, 'for' => { 406 => 'For' }, 'forcewrite' => { 126 => 'ForceWrite' }, - 'format' => { 415 => "\xa9fmt", 504 => 'Format', 524 => 'format', 548 => 'Format' }, - 'forwardlock' => { 545 => 'forwardlock' }, + 'format' => { 416 => "\xa9fmt", 506 => 'Format', 526 => 'format', 550 => 'Format' }, + 'forwardlock' => { 547 => 'forwardlock' }, 'forwardmatrix1' => { 125 => 0xc714 }, 'forwardmatrix2' => { 125 => 0xc715 }, 'forwardmatrix3' => { 125 => 0xcd34 }, @@ -3253,20 +3256,20 @@ my %tagLookup = ( 'framenum' => { 401 => 0xd7 }, 'framenumber' => { 133 => 0x8003, 194 => 0x3c, 390 => 0x29 }, 'framerate' => { 72 => [0x1,0x6], 125 => 0xc764, 133 => 0x3820 }, - 'framereadouttime' => { 409 => 'camera.framereadouttimeinmicroseconds' }, + 'framereadouttime' => { 417 => 'camera.framereadouttimeinmicroseconds' }, 'framewidth' => { 133 => 0x3821 }, - 'framing' => { 539 => 'framing' }, + 'framing' => { 541 => 'framing' }, 'freebytes' => { 103 => 0x1 }, 'freememorycardimages' => { 189 => [0x37,0x54], 190 => [0x2d,0x4a], 191 => 0x32 }, 'fujiflashmode' => { 133 => 0x1010 }, 'fujimodel' => { 133 => 0x1447 }, 'fujimodel2' => { 133 => 0x1448 }, - 'fullframerateplaybackintent' => { 409 => 'full-frame-rate-playback-intent' }, + 'fullframerateplaybackintent' => { 410 => 'full-frame-rate-playback-intent' }, 'fullhdhighspeedrec' => { 133 => 0x3824 }, - 'fullimagesize' => { 456 => 0xb02b }, - 'fullpanoheightpixels' => { 507 => 'FullPanoHeightPixels', 508 => 'FullPanoHeightPixels' }, - 'fullpanowidthpixels' => { 507 => 'FullPanoWidthPixels', 508 => 'FullPanoWidthPixels' }, - 'fullpresssnap' => { 422 => 0x100d }, + 'fullimagesize' => { 458 => 0xb02b }, + 'fullpanoheightpixels' => { 509 => 'FullPanoHeightPixels', 510 => 'FullPanoHeightPixels' }, + 'fullpanowidthpixels' => { 509 => 'FullPanoWidthPixels', 510 => 'FullPanoWidthPixels' }, + 'fullpresssnap' => { 424 => 0x100d }, 'fullsizeimage' => { 169 => 'data' }, 'fullsizeimagename' => { 169 => '1Name' }, 'fullsizeimagetype' => { 169 => '0Type' }, @@ -3284,10 +3287,10 @@ my %tagLookup = ( 'funcbuttonplusdials' => { 309 => ['14.2','15.2'], 310 => '14.2', 318 => '31.1', 322 => '42.1' }, 'functionbutton' => { 316 => '13.1', 320 => '5.2' }, 'gainbase' => { 334 => 0x610 }, - 'gaincontrol' => { 125 => 0xa407, 527 => 'GainControl' }, - 'gainmapmax' => { 532 => 'GainMapMax' }, - 'gainmapmin' => { 532 => 'GainMapMin' }, - 'gamma' => { 125 => 0xa500, 145 => 0x8fe, 341 => 'gAMA', 359 => 0x11c, 528 => 'Gamma', 532 => 'Gamma' }, + 'gaincontrol' => { 125 => 0xa407, 529 => 'GainControl' }, + 'gainmapmax' => { 534 => 'GainMapMax' }, + 'gainmapmin' => { 534 => 'GainMapMin' }, + 'gamma' => { 125 => 0xa500, 145 => 0x8fe, 341 => 'gAMA', 359 => 0x11c, 530 => 'Gamma', 534 => 'Gamma' }, 'gammablackpoint' => { 111 => 0xc }, 'gammacolortone' => { 111 => 0x3 }, 'gammacompensatedvalue' => { 140 => 0x91 }, @@ -3303,20 +3306,20 @@ my %tagLookup = ( 'gammaunsharpmaskstrength' => { 111 => 0x5 }, 'gammaunsharpmaskthreshold' => { 111 => 0x7 }, 'gammawhitepoint' => { 111 => 0xd }, - 'garminsettings' => { 415 => 'pmcc' }, - 'garminsoftware' => { 415 => 'uuid' }, + 'garminsettings' => { 416 => 'pmcc' }, + 'garminsoftware' => { 416 => 'uuid' }, 'gdalmetadata' => { 125 => 0xa480 }, 'gdalnodata' => { 125 => 0xa481 }, 'geimagesize' => { 133 => 0x1304 }, 'gemake' => { 135 => 0x300 }, 'gemodel' => { 135 => 0x207 }, - 'genre' => { 407 => ['gnre',"\xa9gen"], 409 => 'genre', 415 => ['gnre',"\xa9gen"], 535 => 'Genre', 540 => 'genre', 550 => 'genre' }, - 'genrecvid' => { 535 => [\'Genre','GenreCvId'] }, - 'genrecvtermid' => { 535 => [\'Genre','GenreCvTermId'] }, - 'genrecvtermname' => { 535 => [\'Genre','GenreCvTermName'] }, - 'genrecvtermrefinedabout' => { 535 => [\'Genre','GenreCvTermRefinedAbout'] }, - 'genreid' => { 407 => 'geID' }, - 'geography' => { 541 => 'geography' }, + 'genre' => { 408 => ['gnre',"\xa9gen"], 410 => 'genre', 416 => ['gnre',"\xa9gen"], 537 => 'Genre', 542 => 'genre', 552 => 'genre' }, + 'genrecvid' => { 537 => [\'Genre','GenreCvId'] }, + 'genrecvtermid' => { 537 => [\'Genre','GenreCvTermId'] }, + 'genrecvtermname' => { 537 => [\'Genre','GenreCvTermName'] }, + 'genrecvtermrefinedabout' => { 537 => [\'Genre','GenreCvTermRefinedAbout'] }, + 'genreid' => { 408 => 'geID' }, + 'geography' => { 543 => 'geography' }, 'geolocate' => { 126 => 'Geolocate' }, 'geologicalcontext' => { 124 => 'GeologicalContext' }, 'geologicalcontextbed' => { 124 => [\'GeologicalContext','GeologicalContextBed'] }, @@ -3330,273 +3333,273 @@ my %tagLookup = ( 'geotiffdirectory' => { 125 => 0x87af }, 'geotiffdoubleparams' => { 125 => 0x87b0 }, 'geotime' => { 126 => 'Geotime' }, - 'giftftppriority' => { 509 => 'GIFTFtpPriority' }, + 'giftftppriority' => { 511 => 'GIFTFtpPriority' }, 'gimbalpitchdegree' => { 122 => 'GimbalPitchDegree' }, 'gimbalreverse' => { 122 => 'GimbalReverse' }, 'gimbalrolldegree' => { 122 => 'GimbalRollDegree' }, 'gimbalyawdegree' => { 122 => 'GimbalYawDegree' }, 'globalaltitude' => { 404 => 0x419 }, 'globalangle' => { 404 => 0x40d }, - 'good' => { 550 => 'good' }, - 'googlehostheader' => { 407 => 'gshh' }, - 'googlepingmessage' => { 407 => 'gspm' }, - 'googlepingurl' => { 407 => 'gspu' }, + 'good' => { 552 => 'good' }, + 'googlehostheader' => { 408 => 'gshh' }, + 'googlepingmessage' => { 408 => 'gspm' }, + 'googlepingurl' => { 408 => 'gspu' }, 'googleplusuploadcode' => { 125 => 0x9009 }, - 'googlesourcedata' => { 407 => 'gssd' }, - 'googlestarttime' => { 407 => 'gsst' }, - 'googletrackduration' => { 407 => 'gstd' }, - 'goprotype' => { 415 => 'GoPr' }, - 'gpsaltitude' => { 137 => 0x6, 167 => 'Altitude', 527 => 'GPSAltitude' }, - 'gpsaltituderef' => { 137 => 0x5, 527 => 'GPSAltitudeRef' }, - 'gpsareainformation' => { 137 => 0x1c, 527 => 'GPSAreaInformation' }, - 'gpscoordinates' => { 407 => "\xa9xyz", 409 => 'location.ISO6709', 415 => ['@xyz',"\xa9xyz"] }, + 'googlesourcedata' => { 408 => 'gssd' }, + 'googlestarttime' => { 408 => 'gsst' }, + 'googletrackduration' => { 408 => 'gstd' }, + 'goprotype' => { 416 => 'GoPr' }, + 'gpsaltitude' => { 137 => 0x6, 167 => 'Altitude', 529 => 'GPSAltitude' }, + 'gpsaltituderef' => { 137 => 0x5, 529 => 'GPSAltitudeRef' }, + 'gpsareainformation' => { 137 => 0x1c, 529 => 'GPSAreaInformation' }, + 'gpscoordinates' => { 408 => "\xa9xyz", 410 => 'location.ISO6709', 416 => ['@xyz',"\xa9xyz"] }, 'gpsdatestamp' => { 137 => 0x1d }, - 'gpsdatetime' => { 167 => 'DateTime', 527 => 'GPSTimeStamp' }, - 'gpsdestbearing' => { 137 => 0x18, 167 => 'Bearing', 527 => 'GPSDestBearing' }, - 'gpsdestbearingref' => { 137 => 0x17, 527 => 'GPSDestBearingRef' }, - 'gpsdestdistance' => { 137 => 0x1a, 167 => 'Distance', 527 => 'GPSDestDistance' }, - 'gpsdestdistanceref' => { 137 => 0x19, 527 => 'GPSDestDistanceRef' }, - 'gpsdestlatitude' => { 137 => 0x14, 527 => 'GPSDestLatitude' }, + 'gpsdatetime' => { 167 => 'DateTime', 529 => 'GPSTimeStamp' }, + 'gpsdestbearing' => { 137 => 0x18, 167 => 'Bearing', 529 => 'GPSDestBearing' }, + 'gpsdestbearingref' => { 137 => 0x17, 529 => 'GPSDestBearingRef' }, + 'gpsdestdistance' => { 137 => 0x1a, 167 => 'Distance', 529 => 'GPSDestDistance' }, + 'gpsdestdistanceref' => { 137 => 0x19, 529 => 'GPSDestDistanceRef' }, + 'gpsdestlatitude' => { 137 => 0x14, 529 => 'GPSDestLatitude' }, 'gpsdestlatituderef' => { 137 => 0x13 }, - 'gpsdestlongitude' => { 137 => 0x16, 527 => 'GPSDestLongitude' }, + 'gpsdestlongitude' => { 137 => 0x16, 529 => 'GPSDestLongitude' }, 'gpsdestlongituderef' => { 137 => 0x15 }, - 'gpsdifferential' => { 137 => 0x1e, 167 => 'Differential', 527 => 'GPSDifferential' }, - 'gpsdop' => { 137 => 0xb, 527 => 'GPSDOP' }, - 'gpshpositioningerror' => { 137 => 0x1f, 527 => 'GPSHPositioningError' }, - 'gpsimgdirection' => { 137 => 0x11, 527 => 'GPSImgDirection' }, - 'gpsimgdirectionref' => { 137 => 0x10, 527 => 'GPSImgDirectionRef' }, - 'gpslatitude' => { 120 => 'GPS-GPSLatitude', 122 => 'GpsLatitude', 137 => 0x2, 167 => 'Latitude', 527 => 'GPSLatitude' }, + 'gpsdifferential' => { 137 => 0x1e, 167 => 'Differential', 529 => 'GPSDifferential' }, + 'gpsdop' => { 137 => 0xb, 529 => 'GPSDOP' }, + 'gpshpositioningerror' => { 137 => 0x1f, 529 => 'GPSHPositioningError' }, + 'gpsimgdirection' => { 137 => 0x11, 529 => 'GPSImgDirection' }, + 'gpsimgdirectionref' => { 137 => 0x10, 529 => 'GPSImgDirectionRef' }, + 'gpslatitude' => { 120 => 'GPS-GPSLatitude', 122 => 'GpsLatitude', 137 => 0x2, 167 => 'Latitude', 529 => 'GPSLatitude' }, 'gpslatituderef' => { 137 => 0x1 }, - 'gpslongitude' => { 120 => 'GPS-GPSLongitude', 122 => 'GpsLongitude', 137 => 0x4, 167 => 'Longitude', 527 => 'GPSLongitude' }, + 'gpslongitude' => { 120 => 'GPS-GPSLongitude', 122 => 'GpsLongitude', 137 => 0x4, 167 => 'Longitude', 529 => 'GPSLongitude' }, 'gpslongituderef' => { 137 => 0x3 }, 'gpslongtitude' => { 122 => 'GpsLongtitude' }, - 'gpsmapdatum' => { 137 => 0x12, 167 => 'Datum', 527 => 'GPSMapDatum' }, - 'gpsmeasuremode' => { 137 => 0xa, 167 => 'MeasureMode', 527 => 'GPSMeasureMode' }, + 'gpsmapdatum' => { 137 => 0x12, 167 => 'Datum', 529 => 'GPSMapDatum' }, + 'gpsmeasuremode' => { 137 => 0xa, 167 => 'MeasureMode', 529 => 'GPSMeasureMode' }, 'gpsposition' => { 120 => 'Exif-GPSPosition' }, - 'gpsprocessingmethod' => { 137 => 0x1b, 527 => 'GPSProcessingMethod' }, - 'gpssatellites' => { 137 => 0x8, 167 => 'Satellites', 527 => 'GPSSatellites' }, - 'gpsspeed' => { 137 => 0xd, 167 => 'Speed', 527 => 'GPSSpeed' }, - 'gpsspeedref' => { 137 => 0xc, 527 => 'GPSSpeedRef' }, - 'gpsstatus' => { 137 => 0x9, 527 => 'GPSStatus' }, + 'gpsprocessingmethod' => { 137 => 0x1b, 529 => 'GPSProcessingMethod' }, + 'gpssatellites' => { 137 => 0x8, 167 => 'Satellites', 529 => 'GPSSatellites' }, + 'gpsspeed' => { 137 => 0xd, 167 => 'Speed', 529 => 'GPSSpeed' }, + 'gpsspeedref' => { 137 => 0xc, 529 => 'GPSSpeedRef' }, + 'gpsstatus' => { 137 => 0x9, 529 => 'GPSStatus' }, 'gpsstring' => { 145 => 0x402 }, 'gpstimestamp' => { 137 => 0x7 }, - 'gpstrack' => { 137 => 0xf, 167 => 'Heading', 527 => 'GPSTrack' }, - 'gpstrackref' => { 137 => 0xe, 527 => 'GPSTrackRef' }, - 'gpsversionid' => { 137 => 0x0, 527 => 'GPSVersionID' }, + 'gpstrack' => { 137 => 0xf, 167 => 'Heading', 529 => 'GPSTrack' }, + 'gpstrackref' => { 137 => 0xe, 529 => 'GPSTrackRef' }, + 'gpsversionid' => { 137 => 0x0, 529 => 'GPSVersionID' }, 'gradation' => { 330 => 0x50f }, - 'gradientbasedcorractive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'] }, - 'gradientbasedcorramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'] }, - 'gradientbasedcorrblacks2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'] }, - 'gradientbasedcorrbrightness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'] }, - 'gradientbasedcorrclarity' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'] }, - 'gradientbasedcorrclarity2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'] }, - 'gradientbasedcorrcontrast' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'] }, - 'gradientbasedcorrcontrast2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'] }, - 'gradientbasedcorrcorrectionname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'] }, - 'gradientbasedcorrcorrectionsyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'] }, - 'gradientbasedcorrdefringe' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'] }, - 'gradientbasedcorrdehaze' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'] }, - 'gradientbasedcorrections' => { 521 => 'GradientBasedCorrections', 523 => 'GradientBasedCorrections' }, - 'gradientbasedcorrexposure' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'] }, - 'gradientbasedcorrexposure2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'] }, - 'gradientbasedcorrhighlights2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'] }, - 'gradientbasedcorrhue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'] }, - 'gradientbasedcorrluminancenoise' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'] }, - 'gradientbasedcorrmaskalpha' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'] }, - 'gradientbasedcorrmaskangle' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'] }, - 'gradientbasedcorrmaskbottom' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'] }, - 'gradientbasedcorrmaskcentervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'] }, - 'gradientbasedcorrmaskcenterweight' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'gradientbasedcorrmaskdabs' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'] }, - 'gradientbasedcorrmaskfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'] }, - 'gradientbasedcorrmaskflipped' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'] }, - 'gradientbasedcorrmaskflow' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'] }, - 'gradientbasedcorrmaskfullx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'] }, - 'gradientbasedcorrmaskfully' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'] }, - 'gradientbasedcorrmaskinputdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'] }, - 'gradientbasedcorrmaskleft' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'] }, - 'gradientbasedcorrmaskmaskactive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'] }, - 'gradientbasedcorrmaskmaskblendmode' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'gradientbasedcorrmaskmaskdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'gradientbasedcorrmaskmaskinverted' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'gradientbasedcorrmaskmaskname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'] }, - 'gradientbasedcorrmaskmasks' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'] }, - 'gradientbasedcorrmaskmasksalpha' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'gradientbasedcorrmaskmasksangle' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'gradientbasedcorrmaskmasksbottom' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'gradientbasedcorrmaskmaskscentervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'gradientbasedcorrmaskmaskscenterweight' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'gradientbasedcorrmaskmasksdabs' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'gradientbasedcorrmaskmasksfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'gradientbasedcorrmaskmasksflipped' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'gradientbasedcorrmaskmasksflow' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'gradientbasedcorrmaskmasksfullx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'gradientbasedcorrmaskmasksfully' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'gradientbasedcorrmaskmasksinputdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'gradientbasedcorrmaskmasksleft' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'gradientbasedcorrmaskmasksmaskactive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'gradientbasedcorrmaskmasksmaskblendmode' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'gradientbasedcorrmaskmasksmaskdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'gradientbasedcorrmaskmasksmaskinverted' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'gradientbasedcorrmaskmasksmaskname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'gradientbasedcorrmaskmasksmasksubtype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'gradientbasedcorrmaskmasksmasksyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'gradientbasedcorrmaskmasksmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'gradientbasedcorrmaskmasksmidpoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'gradientbasedcorrmaskmasksorigin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'gradientbasedcorrmaskmasksperimetervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'gradientbasedcorrmaskmasksradius' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'gradientbasedcorrmaskmasksreferencepoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'gradientbasedcorrmaskmasksright' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'] }, - 'gradientbasedcorrmaskmasksroundness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'gradientbasedcorrmaskmaskssizex' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'gradientbasedcorrmaskmaskssizey' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'gradientbasedcorrmaskmaskstop' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'] }, - 'gradientbasedcorrmaskmasksubtype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'gradientbasedcorrmaskmasksvalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'gradientbasedcorrmaskmasksversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'gradientbasedcorrmaskmaskswhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'gradientbasedcorrmaskmaskswholeimagearea' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'gradientbasedcorrmaskmasksx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'] }, - 'gradientbasedcorrmaskmasksy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'] }, - 'gradientbasedcorrmaskmasksyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'gradientbasedcorrmaskmaskszerox' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'gradientbasedcorrmaskmaskszeroy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'gradientbasedcorrmaskmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'gradientbasedcorrmaskmidpoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'] }, - 'gradientbasedcorrmaskorigin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'] }, - 'gradientbasedcorrmaskperimetervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'gradientbasedcorrmaskradius' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'] }, - 'gradientbasedcorrmaskrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'gradientbasedcorrmaskrangeareamodels' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'gradientbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'gradientbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'gradientbasedcorrmaskrangecoloramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'gradientbasedcorrmaskrangedepthfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'gradientbasedcorrmaskrangedepthmax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'gradientbasedcorrmaskrangedepthmin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'gradientbasedcorrmaskrangeinvert' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'gradientbasedcorrmaskrangelumfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'gradientbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'gradientbasedcorrmaskrangelummax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'gradientbasedcorrmaskrangelummin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'gradientbasedcorrmaskrangelumrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'gradientbasedcorrmaskrangesampletype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'gradientbasedcorrmaskrangetype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'gradientbasedcorrmaskrangeversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'gradientbasedcorrmaskreferencepoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'gradientbasedcorrmaskright' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'] }, - 'gradientbasedcorrmaskroundness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'] }, - 'gradientbasedcorrmasks' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'] }, - 'gradientbasedcorrmasksizex' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'] }, - 'gradientbasedcorrmasksizey' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'] }, - 'gradientbasedcorrmasktop' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'] }, - 'gradientbasedcorrmaskvalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'] }, - 'gradientbasedcorrmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'] }, - 'gradientbasedcorrmaskwhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'] }, - 'gradientbasedcorrmaskwholeimagearea' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'gradientbasedcorrmaskx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'] }, - 'gradientbasedcorrmasky' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'] }, - 'gradientbasedcorrmaskzerox' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'] }, - 'gradientbasedcorrmaskzeroy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'] }, - 'gradientbasedcorrmoire' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'] }, - 'gradientbasedcorrrangemask' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'] }, - 'gradientbasedcorrrangemaskareamodels' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'gradientbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'gradientbasedcorrrangemaskareamodelscomponents' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'gradientbasedcorrrangemaskcoloramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'gradientbasedcorrrangemaskdepthfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'gradientbasedcorrrangemaskdepthmax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'gradientbasedcorrrangemaskdepthmin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'gradientbasedcorrrangemaskinvert' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'gradientbasedcorrrangemasklumfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'gradientbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'gradientbasedcorrrangemasklummax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'gradientbasedcorrrangemasklummin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'gradientbasedcorrrangemasklumrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'gradientbasedcorrrangemasksampletype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'gradientbasedcorrrangemasktype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'] }, - 'gradientbasedcorrrangemaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'gradientbasedcorrsaturation' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'] }, - 'gradientbasedcorrshadows2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'] }, - 'gradientbasedcorrsharpness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'] }, - 'gradientbasedcorrtemperature' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'] }, - 'gradientbasedcorrtexture' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'] }, - 'gradientbasedcorrtint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'] }, - 'gradientbasedcorrtoninghue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'] }, - 'gradientbasedcorrtoningsaturation' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'] }, - 'gradientbasedcorrwhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'] }, - 'gradientbasedcorrwhites2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'] }, - 'grainamount' => { 521 => 'GrainAmount', 523 => 'GrainAmount' }, + 'gradientbasedcorractive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'] }, + 'gradientbasedcorramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'] }, + 'gradientbasedcorrblacks2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'] }, + 'gradientbasedcorrbrightness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'] }, + 'gradientbasedcorrclarity' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'] }, + 'gradientbasedcorrclarity2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'] }, + 'gradientbasedcorrcontrast' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'] }, + 'gradientbasedcorrcontrast2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'] }, + 'gradientbasedcorrcorrectionname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'] }, + 'gradientbasedcorrcorrectionsyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'] }, + 'gradientbasedcorrdefringe' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'] }, + 'gradientbasedcorrdehaze' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'] }, + 'gradientbasedcorrections' => { 523 => 'GradientBasedCorrections', 525 => 'GradientBasedCorrections' }, + 'gradientbasedcorrexposure' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'] }, + 'gradientbasedcorrexposure2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'] }, + 'gradientbasedcorrhighlights2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'] }, + 'gradientbasedcorrhue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'] }, + 'gradientbasedcorrluminancenoise' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'] }, + 'gradientbasedcorrmaskalpha' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'] }, + 'gradientbasedcorrmaskangle' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'] }, + 'gradientbasedcorrmaskbottom' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'] }, + 'gradientbasedcorrmaskcentervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'] }, + 'gradientbasedcorrmaskcenterweight' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'gradientbasedcorrmaskdabs' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'] }, + 'gradientbasedcorrmaskfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'] }, + 'gradientbasedcorrmaskflipped' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'] }, + 'gradientbasedcorrmaskflow' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'] }, + 'gradientbasedcorrmaskfullx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'] }, + 'gradientbasedcorrmaskfully' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'] }, + 'gradientbasedcorrmaskinputdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'] }, + 'gradientbasedcorrmaskleft' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'] }, + 'gradientbasedcorrmaskmaskactive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'] }, + 'gradientbasedcorrmaskmaskblendmode' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'gradientbasedcorrmaskmaskdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'gradientbasedcorrmaskmaskinverted' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'gradientbasedcorrmaskmaskname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'] }, + 'gradientbasedcorrmaskmasks' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'] }, + 'gradientbasedcorrmaskmasksalpha' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'gradientbasedcorrmaskmasksangle' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'gradientbasedcorrmaskmasksbottom' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'gradientbasedcorrmaskmaskscentervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'gradientbasedcorrmaskmaskscenterweight' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'gradientbasedcorrmaskmasksdabs' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'gradientbasedcorrmaskmasksfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'gradientbasedcorrmaskmasksflipped' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'gradientbasedcorrmaskmasksflow' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'gradientbasedcorrmaskmasksfullx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'gradientbasedcorrmaskmasksfully' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'gradientbasedcorrmaskmasksinputdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'gradientbasedcorrmaskmasksleft' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'gradientbasedcorrmaskmasksmaskactive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'gradientbasedcorrmaskmasksmaskblendmode' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'gradientbasedcorrmaskmasksmaskdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'gradientbasedcorrmaskmasksmaskinverted' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'gradientbasedcorrmaskmasksmaskname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'gradientbasedcorrmaskmasksmasksubtype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'gradientbasedcorrmaskmasksmasksyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'gradientbasedcorrmaskmasksmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'gradientbasedcorrmaskmasksmidpoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'gradientbasedcorrmaskmasksorigin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'gradientbasedcorrmaskmasksperimetervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'gradientbasedcorrmaskmasksradius' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'gradientbasedcorrmaskmasksreferencepoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'gradientbasedcorrmaskmasksright' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'] }, + 'gradientbasedcorrmaskmasksroundness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'gradientbasedcorrmaskmaskssizex' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'gradientbasedcorrmaskmaskssizey' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'gradientbasedcorrmaskmaskstop' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'] }, + 'gradientbasedcorrmaskmasksubtype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'gradientbasedcorrmaskmasksvalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'gradientbasedcorrmaskmasksversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'gradientbasedcorrmaskmaskswhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'gradientbasedcorrmaskmaskswholeimagearea' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'gradientbasedcorrmaskmasksx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'] }, + 'gradientbasedcorrmaskmasksy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'] }, + 'gradientbasedcorrmaskmasksyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'gradientbasedcorrmaskmaskszerox' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'gradientbasedcorrmaskmaskszeroy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'gradientbasedcorrmaskmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'gradientbasedcorrmaskmidpoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'] }, + 'gradientbasedcorrmaskorigin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'] }, + 'gradientbasedcorrmaskperimetervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'gradientbasedcorrmaskradius' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'] }, + 'gradientbasedcorrmaskrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'gradientbasedcorrmaskrangeareamodels' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'gradientbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'gradientbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'gradientbasedcorrmaskrangecoloramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'gradientbasedcorrmaskrangedepthfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'gradientbasedcorrmaskrangedepthmax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'gradientbasedcorrmaskrangedepthmin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'gradientbasedcorrmaskrangeinvert' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'gradientbasedcorrmaskrangelumfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'gradientbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'gradientbasedcorrmaskrangelummax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'gradientbasedcorrmaskrangelummin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'gradientbasedcorrmaskrangelumrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'gradientbasedcorrmaskrangesampletype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'gradientbasedcorrmaskrangetype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'gradientbasedcorrmaskrangeversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'gradientbasedcorrmaskreferencepoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'gradientbasedcorrmaskright' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'] }, + 'gradientbasedcorrmaskroundness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'] }, + 'gradientbasedcorrmasks' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'] }, + 'gradientbasedcorrmasksizex' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'] }, + 'gradientbasedcorrmasksizey' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'] }, + 'gradientbasedcorrmasktop' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'] }, + 'gradientbasedcorrmaskvalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'] }, + 'gradientbasedcorrmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'] }, + 'gradientbasedcorrmaskwhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'] }, + 'gradientbasedcorrmaskwholeimagearea' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'gradientbasedcorrmaskx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'] }, + 'gradientbasedcorrmasky' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'] }, + 'gradientbasedcorrmaskzerox' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'] }, + 'gradientbasedcorrmaskzeroy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'] }, + 'gradientbasedcorrmoire' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'] }, + 'gradientbasedcorrrangemask' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'] }, + 'gradientbasedcorrrangemaskareamodels' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'gradientbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'gradientbasedcorrrangemaskareamodelscomponents' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'gradientbasedcorrrangemaskcoloramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'gradientbasedcorrrangemaskdepthfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'gradientbasedcorrrangemaskdepthmax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'gradientbasedcorrrangemaskdepthmin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'gradientbasedcorrrangemaskinvert' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'gradientbasedcorrrangemasklumfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'gradientbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'gradientbasedcorrrangemasklummax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'gradientbasedcorrrangemasklummin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'gradientbasedcorrrangemasklumrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'gradientbasedcorrrangemasksampletype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'gradientbasedcorrrangemasktype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'] }, + 'gradientbasedcorrrangemaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'gradientbasedcorrsaturation' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'] }, + 'gradientbasedcorrshadows2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'] }, + 'gradientbasedcorrsharpness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'] }, + 'gradientbasedcorrtemperature' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'] }, + 'gradientbasedcorrtexture' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'] }, + 'gradientbasedcorrtint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'] }, + 'gradientbasedcorrtoninghue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'] }, + 'gradientbasedcorrtoningsaturation' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'] }, + 'gradientbasedcorrwhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'] }, + 'gradientbasedcorrwhites2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'] }, + 'grainamount' => { 523 => 'GrainAmount', 525 => 'GrainAmount' }, 'graineffectroughness' => { 133 => 0x1047 }, 'graineffectsize' => { 133 => 0x104c }, - 'grainfrequency' => { 521 => 'GrainFrequency', 523 => 'GrainFrequency' }, - 'grainseed' => { 521 => 'GrainSeed', 523 => 'GrainSeed' }, - 'grainsize' => { 521 => 'GrainSize', 523 => 'GrainSize' }, - 'graymixeraqua' => { 521 => 'GrayMixerAqua', 523 => 'GrayMixerAqua' }, - 'graymixerblue' => { 521 => 'GrayMixerBlue', 523 => 'GrayMixerBlue' }, - 'graymixergreen' => { 521 => 'GrayMixerGreen', 523 => 'GrayMixerGreen' }, - 'graymixermagenta' => { 521 => 'GrayMixerMagenta', 523 => 'GrayMixerMagenta' }, - 'graymixerorange' => { 521 => 'GrayMixerOrange', 523 => 'GrayMixerOrange' }, - 'graymixerpurple' => { 521 => 'GrayMixerPurple', 523 => 'GrayMixerPurple' }, - 'graymixerred' => { 521 => 'GrayMixerRed', 523 => 'GrayMixerRed' }, - 'graymixeryellow' => { 521 => 'GrayMixerYellow', 523 => 'GrayMixerYellow' }, - 'graypoint' => { 493 => 0x8021 }, + 'grainfrequency' => { 523 => 'GrainFrequency', 525 => 'GrainFrequency' }, + 'grainseed' => { 523 => 'GrainSeed', 525 => 'GrainSeed' }, + 'grainsize' => { 523 => 'GrainSize', 525 => 'GrainSize' }, + 'graymixeraqua' => { 523 => 'GrayMixerAqua', 525 => 'GrayMixerAqua' }, + 'graymixerblue' => { 523 => 'GrayMixerBlue', 525 => 'GrayMixerBlue' }, + 'graymixergreen' => { 523 => 'GrayMixerGreen', 525 => 'GrayMixerGreen' }, + 'graymixermagenta' => { 523 => 'GrayMixerMagenta', 525 => 'GrayMixerMagenta' }, + 'graymixerorange' => { 523 => 'GrayMixerOrange', 525 => 'GrayMixerOrange' }, + 'graymixerpurple' => { 523 => 'GrayMixerPurple', 525 => 'GrayMixerPurple' }, + 'graymixerred' => { 523 => 'GrayMixerRed', 525 => 'GrayMixerRed' }, + 'graymixeryellow' => { 523 => 'GrayMixerYellow', 525 => 'GrayMixerYellow' }, + 'graypoint' => { 495 => 0x8021 }, 'grayresponseunit' => { 125 => 0x122 }, 'greencurvelimits' => { 114 => 0x1c4 }, 'greencurvepoints' => { 113 => 0x53, 114 => 0x19a }, 'greenghostmitigationstatus' => { 1 => 0x3f }, 'greenhsl' => { 109 => 0x20913 }, - 'greenhue' => { 521 => 'GreenHue', 523 => 'GreenHue' }, - 'greensaturation' => { 521 => 'GreenSaturation', 523 => 'GreenSaturation' }, + 'greenhue' => { 523 => 'GreenHue', 525 => 'GreenHue' }, + 'greensaturation' => { 523 => 'GreenSaturation', 525 => 'GreenSaturation' }, 'griddisplay' => { 309 => '13.3', 310 => '4.3', 312 => '4.2', 313 => '4.2', 314 => '2.2', 318 => '10.5', 319 => '3.4', 320 => '6.1', 322 => '4.4', 323 => '4.2', 324 => '4.2' }, 'gripbatteryadload' => { 368 => 0x5 }, 'gripbatteryadnoload' => { 368 => 0x4 }, 'gripbatterypercent' => { 368 => 0x11 }, 'gripbatterystate' => { 368 => ['1.2',0x10] }, 'gripbatteryvoltage' => { 368 => 0x12 }, - 'group' => { 521 => 'Group', 523 => 'Group' }, + 'group' => { 523 => 'Group', 525 => 'Group' }, 'groupareaafillumination' => { 310 => '46.4', 313 => '47.4', 322 => '47.4' }, - 'grouping' => { 407 => ['grup',"\xa9grp"], 415 => "\xa9grp" }, - 'guid' => { 407 => 'GUID' }, + 'grouping' => { 408 => ['grup',"\xa9grp"], 416 => "\xa9grp" }, + 'guid' => { 408 => 'GUID' }, 'h2resetblackpixels' => { 145 => 0x18a6 }, 'h3resetblackcolumns' => { 145 => 0x18ce }, 'h3resetblackpixels' => { 145 => 0x18b0 }, 'halftonehints' => { 125 => 0x141 }, 'hardlink' => { 126 => 'HardLink' }, - 'hasalternative' => { 540 => 'hasAlternative' }, - 'hascorrection' => { 540 => 'hasCorrection' }, - 'hascorrectiona-lang' => { 540 => [\'hasCorrection','hasCorrectionA-lang'] }, - 'hascorrectiona-platform' => { 540 => [\'hasCorrection','hasCorrectionA-platform'] }, - 'hascorrectiontext' => { 540 => [\'hasCorrection','hasCorrectionText'] }, - 'hascrop' => { 521 => 'HasCrop', 523 => 'HasCrop' }, - 'hasextendedxmp' => { 552 => 'HasExtendedXMP' }, - 'hassettings' => { 521 => 'HasSettings', 523 => 'HasSettings' }, - 'hastranslation' => { 540 => 'hasTranslation' }, - 'hasvisibleoverprint' => { 555 => 'HasVisibleOverprint' }, - 'hasvisibletransparency' => { 555 => 'HasVisibleTransparency' }, + 'hasalternative' => { 542 => 'hasAlternative' }, + 'hascorrection' => { 542 => 'hasCorrection' }, + 'hascorrectiona-lang' => { 542 => [\'hasCorrection','hasCorrectionA-lang'] }, + 'hascorrectiona-platform' => { 542 => [\'hasCorrection','hasCorrectionA-platform'] }, + 'hascorrectiontext' => { 542 => [\'hasCorrection','hasCorrectionText'] }, + 'hascrop' => { 523 => 'HasCrop', 525 => 'HasCrop' }, + 'hasextendedxmp' => { 554 => 'HasExtendedXMP' }, + 'hassettings' => { 523 => 'HasSettings', 525 => 'HasSettings' }, + 'hastranslation' => { 542 => 'hasTranslation' }, + 'hasvisibleoverprint' => { 557 => 'HasVisibleOverprint' }, + 'hasvisibletransparency' => { 557 => 'HasVisibleTransparency' }, 'hdmioutputn-log' => { 248 => 0x35a }, 'hdmioutputresolution' => { 249 => 0x710, 250 => 0x720, 251 => 0x610, 252 => 0x640, 253 => 0x6a8 }, 'hdmiviewassist' => { 327 => 0x20f, 328 => 0x227 }, - 'hdr' => { 64 => 0x1, 228 => 0x4, 229 => 0x4, 247 => 0x354, 249 => 0x23a, 250 => 0x23a, 253 => 0x23a, 354 => 0x9e, 390 => 0x85, 456 => 0x200a }, - 'hdrcapacitymax' => { 532 => 'HDRCapacityMax' }, - 'hdrcapacitymin' => { 532 => 'HDRCapacityMin' }, - 'hdreditmode' => { 521 => 'HDREditMode', 523 => 'HDREditMode' }, + 'hdr' => { 64 => 0x1, 228 => 0x4, 229 => 0x4, 247 => 0x354, 249 => 0x23a, 250 => 0x23a, 253 => 0x23a, 354 => 0x9e, 390 => 0x85, 458 => 0x200a }, + 'hdrcapacitymax' => { 534 => 'HDRCapacityMax' }, + 'hdrcapacitymin' => { 534 => 'HDRCapacityMin' }, + 'hdreditmode' => { 523 => 'HDREditMode', 525 => 'HDREditMode' }, 'hdreffect' => { 64 => 0x2 }, 'hdrgain' => { 1 => 0x30 }, - 'hdrgainmapversion' => { 510 => 'HDRGainMapVersion' }, + 'hdrgainmapversion' => { 512 => 'HDRGainMapVersion' }, 'hdrheadroom' => { 1 => 0x21 }, 'hdrimagetype' => { 1 => 0xa }, - 'hdrlevel' => { 228 => 0x5, 229 => 0x5, 247 => 0x360, 249 => 0x246, 250 => 0x246, 253 => 0x246, 444 => 0x2e, 461 => 0x17 }, + 'hdrlevel' => { 228 => 0x5, 229 => 0x5, 247 => 0x360, 249 => 0x246, 250 => 0x246, 253 => 0x246, 446 => 0x2e, 463 => 0x17 }, 'hdrlevel2' => { 228 => 0x7 }, - 'hdrplusmakernote' => { 501 => 'HdrPlusMakernote' }, - 'hdrpmakernote' => { 501 => 'hdrp_makernote' }, - 'hdrsetting' => { 444 => 0x2d, 461 => 0x16, 465 => 0x1148, 466 => 0x1148, 467 => 0x1124, 468 => 0x11a0, 469 => 0x117c, 470 => 0x1034, 471 => 0x22c, 472 => 0x22c, 473 => 0x21f }, + 'hdrplusmakernote' => { 503 => 'HdrPlusMakernote' }, + 'hdrpmakernote' => { 503 => 'hdrp_makernote' }, + 'hdrsetting' => { 446 => 0x2d, 463 => 0x16, 467 => 0x1148, 468 => 0x1148, 469 => 0x1124, 470 => 0x11a0, 471 => 0x117c, 472 => 0x1034, 473 => 0x22c, 474 => 0x22c, 475 => 0x21f }, 'hdrsmoothing' => { 228 => 0x6 }, - 'hdvideo' => { 407 => 'hdvd' }, - 'headline' => { 138 => 0x69, 535 => 'Headline', 538 => 'Headline' }, - 'hiddendatalength' => { 454 => 0x1 }, - 'hiddendataoffset' => { 454 => 0x0 }, + 'hdvideo' => { 408 => 'hdvd' }, + 'headline' => { 138 => 0x69, 537 => 'Headline', 540 => 'Headline' }, + 'hiddendatalength' => { 456 => 0x1 }, + 'hiddendataoffset' => { 456 => 0x0 }, 'hierarchicalkeywords' => { 178 => [\'Keywords','KeywordsHierarchy'] }, 'hierarchicalkeywords1' => { 178 => [\'Keywords','KeywordsHierarchyKeyword'] }, 'hierarchicalkeywords1applied' => { 178 => [\'Keywords','KeywordsHierarchyApplied'] }, @@ -3615,40 +3618,40 @@ my %tagLookup = ( 'hierarchicalkeywords5children' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildren'] }, 'hierarchicalkeywords6' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildrenKeyword'] }, 'hierarchicalkeywords6applied' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildrenApplied'] }, - 'hierarchicalsubject' => { 512 => 'hierarchicalSubject' }, + 'hierarchicalsubject' => { 514 => 'hierarchicalSubject' }, 'highestbiostratigraphiczone' => { 124 => [\'GeologicalContext','GeologicalContextHighestBiostratigraphicZone'] }, 'highframerate' => { 247 => 0x16c, 249 => 0x48, 250 => 0x48, 252 => 0x48, 253 => 0x48 }, 'highfrequencyflickerreduction' => { 247 => 0x386, 249 => 0x27c, 250 => 0x27c, 252 => 0x27c, 253 => 0x27c }, 'highisomultiplierblue' => { 359 => 0x1a }, 'highisomultipliergreen' => { 359 => 0x19 }, 'highisomultiplierred' => { 359 => 0x18 }, - 'highisonoisereduction' => { 16 => 0xbc, 17 => 0xbd, 20 => 0xbd, 28 => 0xc9, 67 => 0x5, 90 => 0x202, 243 => 0xb1, 390 => 0x71, 442 => 0x2c, 443 => 0x26, 444 => 0x26, 456 => 0x2009, 461 => 0x12, 488 => 0x42 }, - 'highisonoisereduction2' => { 456 => 0xb050 }, - 'highlight' => { 432 => 0xf }, - 'highlight2012' => { 521 => 'Highlight2012', 523 => 'Highlight2012' }, + 'highisonoisereduction' => { 16 => 0xbc, 17 => 0xbd, 20 => 0xbd, 28 => 0xc9, 67 => 0x5, 90 => 0x202, 243 => 0xb1, 390 => 0x71, 444 => 0x2c, 445 => 0x26, 446 => 0x26, 458 => 0x2009, 463 => 0x12, 490 => 0x42 }, + 'highisonoisereduction2' => { 458 => 0xb050 }, + 'highlight' => { 434 => 0xf }, + 'highlight2012' => { 523 => 'Highlight2012', 525 => 'Highlight2012' }, 'highlightadj' => { 109 => 0x2030c }, - 'highlightcolordistortreduct' => { 493 => 0x8026 }, - 'highlightlinearitylimit' => { 429 => 0xa025 }, + 'highlightcolordistortreduct' => { 495 => 0x8026 }, + 'highlightlinearitylimit' => { 431 => 0xa025 }, 'highlightprotection' => { 301 => 0x6 }, - 'highlightrecovery' => { 521 => 'HighlightRecovery', 523 => 'HighlightRecovery' }, - 'highlights' => { 456 => 0x2033, 514 => 'Highlights' }, - 'highlights2012' => { 521 => 'Highlights2012', 523 => 'Highlights2012' }, - 'highlightsadj' => { 493 => 0x9019 }, + 'highlightrecovery' => { 523 => 'HighlightRecovery', 525 => 'HighlightRecovery' }, + 'highlights' => { 458 => 0x2033, 516 => 'Highlights' }, + 'highlights2012' => { 523 => 'Highlights2012', 525 => 'Highlights2012' }, + 'highlightsadj' => { 495 => 0x9019 }, 'highlightshadow' => { 354 => 0xad }, 'highlighttone' => { 133 => 0x1041 }, 'highlighttonepriority' => { 13 => 0x7, 16 => 0x7, 17 => 0x7, 18 => 0x7, 20 => 0x7, 22 => 0x7, 28 => 0x7, 67 => 0x3, 90 => 0x203 }, 'highlightwarning' => { 354 => 0x8002 }, 'highlowkeyadj' => { 390 => 0x6c }, - 'highspeedsync' => { 191 => 0x5, 325 => 0x59, 326 => 0x55, 327 => 0x55, 328 => 0x55, 442 => 0x2, 443 => 0x2 }, - 'hintversion' => { 415 => 'hinv' }, + 'highspeedsync' => { 191 => 0x5, 325 => 0x59, 326 => 0x55, 327 => 0x55, 328 => 0x55, 444 => 0x2, 445 => 0x2 }, + 'hintversion' => { 416 => 'hinv' }, 'histogramxml' => { 302 => 0x83a1a25 }, - 'history' => { 538 => 'History', 551 => 'History' }, - 'historyaction' => { 551 => [\'History','HistoryAction'] }, - 'historychanged' => { 551 => [\'History','HistoryChanged'] }, - 'historyinstanceid' => { 551 => [\'History','HistoryInstanceID'] }, - 'historyparameters' => { 551 => [\'History','HistoryParameters'] }, - 'historysoftwareagent' => { 551 => [\'History','HistorySoftwareAgent'] }, - 'historywhen' => { 551 => [\'History','HistoryWhen'] }, + 'history' => { 540 => 'History', 553 => 'History' }, + 'historyaction' => { 553 => [\'History','HistoryAction'] }, + 'historychanged' => { 553 => [\'History','HistoryChanged'] }, + 'historyinstanceid' => { 553 => [\'History','HistoryInstanceID'] }, + 'historyparameters' => { 553 => [\'History','HistoryParameters'] }, + 'historysoftwareagent' => { 553 => [\'History','HistorySoftwareAgent'] }, + 'historywhen' => { 553 => [\'History','HistoryWhen'] }, 'holefilldarkdeltathreshold' => { 145 => 0xc88 }, 'holefilldeltathreshold' => { 145 => 0xc7e }, 'hometowncity' => { 119 => 0x3006, 390 => 0x23, 396 => 0x2 }, @@ -3657,17 +3660,17 @@ my %tagLookup = ( 'hostcomputer' => { 125 => 0x13c }, 'hostsoftwarerendering' => { 145 => 0xce7 }, 'hue' => { 196 => 0x3b, 261 => 0x3d, 262 => 0x45, 390 => 0x67 }, - 'hueadj' => { 305 => 0x2f, 493 => 0x8019 }, - 'hueadjust' => { 422 => 0x1016 }, + 'hueadj' => { 305 => 0x2f, 495 => 0x8019 }, + 'hueadjust' => { 424 => 0x1016 }, 'hueadjustment' => { 189 => 0x4a, 190 => 0x40, 243 => 0x92, 260 => 0x36 }, - 'hueadjustmentaqua' => { 521 => 'HueAdjustmentAqua', 523 => 'HueAdjustmentAqua' }, - 'hueadjustmentblue' => { 521 => 'HueAdjustmentBlue', 523 => 'HueAdjustmentBlue' }, - 'hueadjustmentgreen' => { 521 => 'HueAdjustmentGreen', 523 => 'HueAdjustmentGreen' }, - 'hueadjustmentmagenta' => { 521 => 'HueAdjustmentMagenta', 523 => 'HueAdjustmentMagenta' }, - 'hueadjustmentorange' => { 521 => 'HueAdjustmentOrange', 523 => 'HueAdjustmentOrange' }, - 'hueadjustmentpurple' => { 521 => 'HueAdjustmentPurple', 523 => 'HueAdjustmentPurple' }, - 'hueadjustmentred' => { 521 => 'HueAdjustmentRed', 523 => 'HueAdjustmentRed' }, - 'hueadjustmentyellow' => { 521 => 'HueAdjustmentYellow', 523 => 'HueAdjustmentYellow' }, + 'hueadjustmentaqua' => { 523 => 'HueAdjustmentAqua', 525 => 'HueAdjustmentAqua' }, + 'hueadjustmentblue' => { 523 => 'HueAdjustmentBlue', 525 => 'HueAdjustmentBlue' }, + 'hueadjustmentgreen' => { 523 => 'HueAdjustmentGreen', 525 => 'HueAdjustmentGreen' }, + 'hueadjustmentmagenta' => { 523 => 'HueAdjustmentMagenta', 525 => 'HueAdjustmentMagenta' }, + 'hueadjustmentorange' => { 523 => 'HueAdjustmentOrange', 525 => 'HueAdjustmentOrange' }, + 'hueadjustmentpurple' => { 523 => 'HueAdjustmentPurple', 525 => 'HueAdjustmentPurple' }, + 'hueadjustmentred' => { 523 => 'HueAdjustmentRed', 525 => 'HueAdjustmentRed' }, + 'hueadjustmentyellow' => { 523 => 'HueAdjustmentYellow', 525 => 'HueAdjustmentYellow' }, 'huesetting' => { 338 => 0x1011 }, 'humanobservation' => { 124 => 'HumanObservation' }, 'humanobservationday' => { 124 => [\'HumanObservation','HumanObservationDay'] }, @@ -3690,13 +3693,13 @@ my %tagLookup = ( 'humanobservationstartdayofyear' => { 124 => [\'HumanObservation','HumanObservationStartDayOfYear'] }, 'humanobservationverbatimeventdate' => { 124 => [\'HumanObservation','HumanObservationVerbatimEventDate'] }, 'humanobservationyear' => { 124 => [\'HumanObservation','HumanObservationYear'] }, - 'humidity' => { 125 => 0x9401, 528 => 'Humidity' }, + 'humidity' => { 125 => 0x9401, 530 => 'Humidity' }, 'icc_profile' => { 126 => 'ICC_Profile', 136 => 'ICCRGBG1/012' }, - 'iccprofilename' => { 538 => 'ICCProfile' }, - 'iconuri' => { 415 => 'icnu' }, - 'idccreativestyle' => { 493 => 0x8000 }, - 'idcpreviewlength' => { 493 => 0x202 }, - 'idcpreviewstart' => { 493 => 0x201 }, + 'iccprofilename' => { 540 => 'ICCProfile' }, + 'iconuri' => { 416 => 'icnu' }, + 'idccreativestyle' => { 495 => 0x8000 }, + 'idcpreviewlength' => { 495 => 0x202 }, + 'idcpreviewstart' => { 495 => 0x201 }, 'identification' => { 124 => 'Identification' }, 'identificationid' => { 124 => [\'Identification','IdentificationIdentificationID'] }, 'identificationqualifier' => { 124 => [\'Identification','IdentificationIdentificationQualifier'] }, @@ -3705,12 +3708,12 @@ my %tagLookup = ( 'identificationverificationstatus' => { 124 => [\'Identification','IdentificationIdentificationVerificationStatus'] }, 'identifiedby' => { 124 => [\'Identification','IdentificationIdentifiedBy'] }, 'identifiedbyid' => { 124 => [\'Identification','IdentificationIdentifiedByID'] }, - 'identifier' => { 524 => 'identifier', 548 => 'Identifier' }, + 'identifier' => { 526 => 'identifier', 550 => 'Identifier' }, 'ifcameramodel' => { 145 => 0x9c8 }, 'illuminantdata1' => { 125 => 0xcd35 }, 'illuminantdata2' => { 125 => 0xcd36 }, 'illuminantdata3' => { 125 => 0xcd37 }, - 'illumination' => { 320 => '0.5', 417 => 0x48 }, + 'illumination' => { 320 => '0.5', 419 => 0x48 }, 'imageabsolutex' => { 145 => 0x3fe }, 'imageabsolutey' => { 145 => 0x3ff }, 'imageadjustment' => { 243 => 0x80, 291 => 0x5 }, @@ -3721,32 +3724,32 @@ my %tagLookup = ( 'imageboundary' => { 243 => 0x16 }, 'imagecapturerequestid' => { 1 => 0x20 }, 'imagecapturetype' => { 1 => 0x14 }, - 'imagecount' => { 133 => 0x1438, 243 => 0xa5, 459 => 0x11b }, + 'imagecount' => { 133 => 0x1438, 243 => 0xa5, 461 => 0x11b }, 'imagecreator' => { 340 => 'ImageCreator' }, 'imagecreatorid' => { 340 => [\'ImageCreator','ImageCreatorImageCreatorID'] }, 'imagecreatorimageid' => { 340 => 'ImageCreatorImageID' }, 'imagecreatorname' => { 340 => [\'ImageCreator','ImageCreatorImageCreatorName'] }, 'imagecropx' => { 145 => 0x41f }, 'imagecropy' => { 145 => 0x420 }, - 'imagedata' => { 506 => 'Data' }, + 'imagedata' => { 508 => 'Data' }, 'imagedatasize' => { 243 => 0xa2 }, - 'imagedescription' => { 125 => 0x10e, 546 => 'ImageDescription' }, + 'imagedescription' => { 125 => 0x10e, 548 => 'ImageDescription' }, 'imageduplicationconstraints' => { 340 => 'ImageDuplicationConstraints' }, 'imagedustoff' => { 302 => 0xfe443a45 }, 'imageeditcount' => { 390 => 0x41 }, 'imageediting' => { 390 => 0x32 }, - 'imageeditingsoftware' => { 125 => 0xa43b, 528 => 'ImageEditingSoftware' }, - 'imageeditor' => { 125 => 0xa438, 528 => 'ImageEditor' }, - 'imageeffects' => { 422 => 0x1010 }, + 'imageeditingsoftware' => { 125 => 0xa43b, 530 => 'ImageEditingSoftware' }, + 'imageeditor' => { 125 => 0xa438, 530 => 'ImageEditor' }, + 'imageeffects' => { 424 => 0x1010 }, 'imagefileconstraints' => { 340 => 'ImageFileConstraints' }, 'imagefileformatasdelivered' => { 340 => 'ImageFileFormatAsDelivered' }, 'imagefilesizeasdelivered' => { 340 => 'ImageFileSizeAsDelivered' }, 'imagegeneration' => { 133 => 0x1436 }, - 'imageheight' => { 125 => 0x101, 195 => 0xc, 399 => 0x10d, 504 => 'ImageHeight', 546 => 'ImageLength' }, - 'imagehistory' => { 125 => 0x9213, 526 => 'ImageHistory' }, + 'imageheight' => { 125 => 0x101, 195 => 0xc, 399 => 0x10d, 506 => 'ImageHeight', 548 => 'ImageLength' }, + 'imagehistory' => { 125 => 0x9213, 528 => 'ImageHistory' }, 'imageidnumber' => { 349 => 0x340 }, - 'imagemimetype' => { 506 => 'Mime' }, - 'imagenumber' => { 125 => 0x9211, 163 => 'ImageNumber', 189 => 0xae, 190 => 0x5e, 399 => 0x113, 442 => 0x9b, 444 => [0x400,'276.1',0x314], 518 => 'ImageNumber' }, + 'imagemimetype' => { 508 => 'Mime' }, + 'imagenumber' => { 125 => 0x9211, 163 => 'ImageNumber', 189 => 0xae, 190 => 0x5e, 399 => 0x113, 444 => 0x9b, 446 => [0x400,'276.1',0x314], 520 => 'ImageNumber' }, 'imagenumber2' => { 190 => 0x62 }, 'imageoptimization' => { 243 => 0xa9 }, 'imageorientation' => { 138 => 0x83 }, @@ -3757,31 +3760,31 @@ my %tagLookup = ( 'imageprocessingversion' => { 334 => 0x0 }, 'imagequality' => { 163 => 'ImageQuality', 279 => '723.2', 280 => '732.2', 288 => '708.1', 354 => 0x1 }, 'imagequality2' => { 330 => 0x603 }, - 'imagerank' => { 509 => 'ImageRank' }, + 'imagerank' => { 511 => 'ImageRank' }, 'imagerbiassettlingdelaymsec' => { 145 => 0x600 }, 'imagerboardversion' => { 145 => 0x439 }, 'imagercols' => { 145 => 0x17d4 }, - 'imageref' => { 533 => 'ImageRef' }, - 'imageregion' => { 535 => 'ImageRegion' }, - 'imageregionboundary' => { 535 => [\'ImageRegion','ImageRegionRegionBoundary'] }, - 'imageregionboundaryh' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbH'] }, - 'imageregionboundaryrx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbRx'] }, - 'imageregionboundaryshape' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbShape'] }, - 'imageregionboundaryunit' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbUnit'] }, - 'imageregionboundaryvertices' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVertices'] }, - 'imageregionboundaryverticesx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbX'] }, - 'imageregionboundaryverticesy' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbY'] }, - 'imageregionboundaryw' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbW'] }, - 'imageregionboundaryx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbX'] }, - 'imageregionboundaryy' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbY'] }, - 'imageregionctype' => { 535 => [\'ImageRegion','ImageRegionRCtype'] }, - 'imageregionctypeidentifier' => { 535 => [\'ImageRegion','ImageRegionRCtypeIdentifier'] }, - 'imageregionctypename' => { 535 => [\'ImageRegion','ImageRegionRCtypeName'] }, - 'imageregionid' => { 535 => [\'ImageRegion','ImageRegionRId'] }, - 'imageregionname' => { 535 => [\'ImageRegion','ImageRegionName'] }, - 'imageregionrole' => { 535 => [\'ImageRegion','ImageRegionRRole'] }, - 'imageregionroleidentifier' => { 535 => [\'ImageRegion','ImageRegionRRoleIdentifier'] }, - 'imageregionrolename' => { 535 => [\'ImageRegion','ImageRegionRRoleName'] }, + 'imageref' => { 535 => 'ImageRef' }, + 'imageregion' => { 537 => 'ImageRegion' }, + 'imageregionboundary' => { 537 => [\'ImageRegion','ImageRegionRegionBoundary'] }, + 'imageregionboundaryh' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbH'] }, + 'imageregionboundaryrx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbRx'] }, + 'imageregionboundaryshape' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbShape'] }, + 'imageregionboundaryunit' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbUnit'] }, + 'imageregionboundaryvertices' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVertices'] }, + 'imageregionboundaryverticesx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbX'] }, + 'imageregionboundaryverticesy' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbY'] }, + 'imageregionboundaryw' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbW'] }, + 'imageregionboundaryx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbX'] }, + 'imageregionboundaryy' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbY'] }, + 'imageregionctype' => { 537 => [\'ImageRegion','ImageRegionRCtype'] }, + 'imageregionctypeidentifier' => { 537 => [\'ImageRegion','ImageRegionRCtypeIdentifier'] }, + 'imageregionctypename' => { 537 => [\'ImageRegion','ImageRegionRCtypeName'] }, + 'imageregionid' => { 537 => [\'ImageRegion','ImageRegionRId'] }, + 'imageregionname' => { 537 => [\'ImageRegion','ImageRegionName'] }, + 'imageregionrole' => { 537 => [\'ImageRegion','ImageRegionRRole'] }, + 'imageregionroleidentifier' => { 537 => [\'ImageRegion','ImageRegionRRoleIdentifier'] }, + 'imageregionrolename' => { 537 => [\'ImageRegion','ImageRegionRRoleName'] }, 'imageresolution' => { 145 => 0x944 }, 'imageresolutionjpg' => { 145 => 0x945 }, 'imagereview' => { 311 => '0.4', 320 => '0.4' }, @@ -3798,80 +3801,80 @@ my %tagLookup = ( 'imagesequenceinfo' => { 125 => 0xcd44 }, 'imagesize' => { 169 => 'ImageSize' }, 'imagesizeraw' => { 243 => 0x3e }, - 'imagesizerestriction' => { 543 => 'imageSizeRestriction' }, + 'imagesizerestriction' => { 545 => 'imageSizeRestriction' }, 'imagesourcedata' => { 125 => 0x935c }, 'imagespace' => { 145 => 0x909 }, - 'imagestabilization' => { 37 => 0x22, 119 => 0x3020, 133 => 0x1422, 163 => 'ImageStabilization', 189 => 0xbd, 190 => 0x71, 191 => 0x57, 192 => 0x0, 193 => [0x18,0x107,0x113], 194 => 0x49c2, 243 => 0xac, 330 => 0x604, 333 => 0x1600, 354 => 0x1a, 447 => 0x12, 448 => 0x11, 456 => 0xb026 }, - 'imagestabilization2' => { 446 => 0xa }, - 'imagestabilizationsetting' => { 194 => 0x14, 442 => 0x3d, 443 => 0x3d, 453 => 0x14 }, + 'imagestabilization' => { 37 => 0x22, 119 => 0x3020, 133 => 0x1422, 163 => 'ImageStabilization', 189 => 0xbd, 190 => 0x71, 191 => 0x57, 192 => 0x0, 193 => [0x18,0x107,0x113], 194 => 0x49c2, 243 => 0xac, 330 => 0x604, 333 => 0x1600, 354 => 0x1a, 449 => 0x12, 450 => 0x11, 458 => 0xb026 }, + 'imagestabilization2' => { 448 => 0xa }, + 'imagestabilizationsetting' => { 194 => 0x14, 444 => 0x3d, 445 => 0x3d, 455 => 0x14 }, 'imagestats' => { 125 => 0xcd46 }, - 'imagestyle' => { 442 => 0x2d, 443 => 0x27 }, + 'imagestyle' => { 444 => 0x2d, 445 => 0x27 }, 'imagesupplier' => { 340 => 'ImageSupplier' }, 'imagesupplierid' => { 340 => [\'ImageSupplier','ImageSupplierImageSupplierID'] }, 'imagesupplierimageid' => { 340 => 'ImageSupplierImageID' }, 'imagesuppliername' => { 340 => [\'ImageSupplier','ImageSupplierImageSupplierName'] }, 'imagetemperaturemax' => { 127 => 0x1 }, 'imagetemperaturemin' => { 127 => 0x2 }, - 'imagetitle' => { 125 => 0xa436, 528 => 'ImageTitle' }, + 'imagetitle' => { 125 => 0xa436, 530 => 'ImageTitle' }, 'imagetone' => { 390 => 0x4f }, 'imagetype' => { 138 => 0x82, 340 => 'ImageType' }, - 'imageuniqueid' => { 1 => 0x15, 69 => 0x28, 125 => 0xa420, 526 => 'ImageUniqueID', 527 => 'ImageUniqueID', 528 => 'ImageUniqueID' }, - 'imagewidth' => { 125 => 0x100, 195 => 0xe, 399 => 0x10c, 504 => 'ImageWidth', 546 => 'ImageWidth' }, - 'inclinationangle' => { 493 => 0x900f }, - 'inclinationcorrection' => { 493 => 0x900e }, - 'incrementaltemperature' => { 521 => 'IncrementalTemperature', 523 => 'IncrementalTemperature' }, - 'incrementaltint' => { 521 => 'IncrementalTint', 523 => 'IncrementalTint' }, - 'industry' => { 540 => 'industry', 541 => 'industry' }, + 'imageuniqueid' => { 1 => 0x15, 69 => 0x28, 125 => 0xa420, 528 => 'ImageUniqueID', 529 => 'ImageUniqueID', 530 => 'ImageUniqueID' }, + 'imagewidth' => { 125 => 0x100, 195 => 0xe, 399 => 0x10c, 506 => 'ImageWidth', 548 => 'ImageWidth' }, + 'inclinationangle' => { 495 => 0x900f }, + 'inclinationcorrection' => { 495 => 0x900e }, + 'incrementaltemperature' => { 523 => 'IncrementalTemperature', 525 => 'IncrementalTemperature' }, + 'incrementaltint' => { 523 => 'IncrementalTint', 525 => 'IncrementalTint' }, + 'industry' => { 542 => 'industry', 543 => 'industry' }, 'infobuttonwhenshooting' => { 90 => 0x409 }, - 'information' => { 409 => 'information', 415 => "\xa9inf" }, - 'infourl' => { 415 => 'infu' }, - 'infraredilluminator' => { 416 => 0x28 }, - 'ingredientexclusion' => { 542 => 'ingredientExclusion' }, - 'ingredients' => { 551 => 'Ingredients' }, - 'ingredientsalternatepaths' => { 551 => [\'Ingredients','IngredientsAlternatePaths'] }, - 'ingredientsdocumentid' => { 551 => [\'Ingredients','IngredientsDocumentID'] }, - 'ingredientsfilepath' => { 551 => [\'Ingredients','IngredientsFilePath'] }, - 'ingredientsfrompart' => { 551 => [\'Ingredients','IngredientsFromPart'] }, - 'ingredientsinstanceid' => { 551 => [\'Ingredients','IngredientsInstanceID'] }, - 'ingredientslastmodifydate' => { 551 => [\'Ingredients','IngredientsLastModifyDate'] }, - 'ingredientslasturl' => { 551 => [\'Ingredients','IngredientsLastURL'] }, - 'ingredientslinkcategory' => { 551 => [\'Ingredients','IngredientsLinkCategory'] }, - 'ingredientslinkform' => { 551 => [\'Ingredients','IngredientsLinkForm'] }, - 'ingredientsmanager' => { 551 => [\'Ingredients','IngredientsManager'] }, - 'ingredientsmanagervariant' => { 551 => [\'Ingredients','IngredientsManagerVariant'] }, - 'ingredientsmanageto' => { 551 => [\'Ingredients','IngredientsManageTo'] }, - 'ingredientsmanageui' => { 551 => [\'Ingredients','IngredientsManageUI'] }, - 'ingredientsmaskmarkers' => { 551 => [\'Ingredients','IngredientsMaskMarkers'] }, - 'ingredientsoriginaldocumentid' => { 551 => [\'Ingredients','IngredientsOriginalDocumentID'] }, - 'ingredientspartmapping' => { 551 => [\'Ingredients','IngredientsPartMapping'] }, - 'ingredientsplacedresolutionunit' => { 551 => [\'Ingredients','IngredientsPlacedResolutionUnit'] }, - 'ingredientsplacedxresolution' => { 551 => [\'Ingredients','IngredientsPlacedXResolution'] }, - 'ingredientsplacedyresolution' => { 551 => [\'Ingredients','IngredientsPlacedYResolution'] }, - 'ingredientsrenditionclass' => { 551 => [\'Ingredients','IngredientsRenditionClass'] }, - 'ingredientsrenditionparams' => { 551 => [\'Ingredients','IngredientsRenditionParams'] }, - 'ingredientstopart' => { 551 => [\'Ingredients','IngredientsToPart'] }, - 'ingredientsversionid' => { 551 => [\'Ingredients','IngredientsVersionID'] }, + 'information' => { 410 => 'information', 416 => "\xa9inf" }, + 'infourl' => { 416 => 'infu' }, + 'infraredilluminator' => { 418 => 0x28 }, + 'ingredientexclusion' => { 544 => 'ingredientExclusion' }, + 'ingredients' => { 553 => 'Ingredients' }, + 'ingredientsalternatepaths' => { 553 => [\'Ingredients','IngredientsAlternatePaths'] }, + 'ingredientsdocumentid' => { 553 => [\'Ingredients','IngredientsDocumentID'] }, + 'ingredientsfilepath' => { 553 => [\'Ingredients','IngredientsFilePath'] }, + 'ingredientsfrompart' => { 553 => [\'Ingredients','IngredientsFromPart'] }, + 'ingredientsinstanceid' => { 553 => [\'Ingredients','IngredientsInstanceID'] }, + 'ingredientslastmodifydate' => { 553 => [\'Ingredients','IngredientsLastModifyDate'] }, + 'ingredientslasturl' => { 553 => [\'Ingredients','IngredientsLastURL'] }, + 'ingredientslinkcategory' => { 553 => [\'Ingredients','IngredientsLinkCategory'] }, + 'ingredientslinkform' => { 553 => [\'Ingredients','IngredientsLinkForm'] }, + 'ingredientsmanager' => { 553 => [\'Ingredients','IngredientsManager'] }, + 'ingredientsmanagervariant' => { 553 => [\'Ingredients','IngredientsManagerVariant'] }, + 'ingredientsmanageto' => { 553 => [\'Ingredients','IngredientsManageTo'] }, + 'ingredientsmanageui' => { 553 => [\'Ingredients','IngredientsManageUI'] }, + 'ingredientsmaskmarkers' => { 553 => [\'Ingredients','IngredientsMaskMarkers'] }, + 'ingredientsoriginaldocumentid' => { 553 => [\'Ingredients','IngredientsOriginalDocumentID'] }, + 'ingredientspartmapping' => { 553 => [\'Ingredients','IngredientsPartMapping'] }, + 'ingredientsplacedresolutionunit' => { 553 => [\'Ingredients','IngredientsPlacedResolutionUnit'] }, + 'ingredientsplacedxresolution' => { 553 => [\'Ingredients','IngredientsPlacedXResolution'] }, + 'ingredientsplacedyresolution' => { 553 => [\'Ingredients','IngredientsPlacedYResolution'] }, + 'ingredientsrenditionclass' => { 553 => [\'Ingredients','IngredientsRenditionClass'] }, + 'ingredientsrenditionparams' => { 553 => [\'Ingredients','IngredientsRenditionParams'] }, + 'ingredientstopart' => { 553 => [\'Ingredients','IngredientsToPart'] }, + 'ingredientsversionid' => { 553 => [\'Ingredients','IngredientsVersionID'] }, 'initialafpointaiservoaf' => { 90 => 0x51e }, 'initialafpointinservo' => { 2 => 0x13 }, - 'initialcameradolly' => { 507 => 'InitialCameraDolly' }, - 'initialhorizontalfovdegrees' => { 507 => 'InitialHorizontalFOVDegrees' }, + 'initialcameradolly' => { 509 => 'InitialCameraDolly' }, + 'initialhorizontalfovdegrees' => { 509 => 'InitialHorizontalFOVDegrees' }, 'initialkey' => { 186 => 'WM/InitialKey' }, - 'initialverticalfovdegrees' => { 507 => 'InitialVerticalFOVDegrees' }, - 'initialviewheadingdegrees' => { 507 => 'InitialViewHeadingDegrees', 508 => 'InitialViewHeadingDegrees' }, - 'initialviewpitchdegrees' => { 507 => 'InitialViewPitchDegrees', 508 => 'InitialViewPitchDegrees' }, - 'initialviewrolldegrees' => { 507 => 'InitialViewRollDegrees', 508 => 'InitialViewRollDegrees' }, + 'initialverticalfovdegrees' => { 509 => 'InitialVerticalFOVDegrees' }, + 'initialviewheadingdegrees' => { 509 => 'InitialViewHeadingDegrees', 510 => 'InitialViewHeadingDegrees' }, + 'initialviewpitchdegrees' => { 509 => 'InitialViewPitchDegrees', 510 => 'InitialViewPitchDegrees' }, + 'initialviewrolldegrees' => { 509 => 'InitialViewRollDegrees', 510 => 'InitialViewRollDegrees' }, 'initialzoomliveview' => { 309 => '4.4' }, 'initialzoomsetting' => { 309 => '9.3', 318 => '27.3' }, 'inkset' => { 125 => 0x14c }, 'inputprofile' => { 145 => 0x1389 }, - 'instanceid' => { 551 => 'InstanceID' }, + 'instanceid' => { 553 => 'InstanceID' }, 'instantplaybacksetup' => { 191 => 0x3e }, 'instantplaybacktime' => { 191 => 0x3d }, - 'instructions' => { 538 => 'Instructions' }, - 'instrument' => { 550 => 'instrument' }, + 'instructions' => { 540 => 'Instructions' }, + 'instrument' => { 552 => 'instrument' }, 'integrationtime' => { 145 => 0x423 }, - 'intellectualgenre' => { 534 => 'IntellectualGenre' }, - 'intelligentauto' => { 456 => 0xb052, 484 => 0xd, 485 => 0xe, 486 => 0xd }, + 'intellectualgenre' => { 536 => 'IntellectualGenre' }, + 'intelligentauto' => { 458 => 0xb052, 486 => 0xd, 487 => 0xe, 488 => 0xd }, 'intelligentcontrast' => { 56 => 0x4 }, 'intelligentd-range' => { 354 => 0x79 }, 'intelligentexposure' => { 354 => 0x5d }, @@ -3886,10 +3889,10 @@ my %tagLookup = ( 'internalflashmode' => { 377 => 0x1 }, 'internalflashstrength' => { 377 => 0x3 }, 'internalflashtable' => { 335 => 0x1024 }, - 'internallensserialnumber' => { 429 => 0xa005 }, + 'internallensserialnumber' => { 431 => 0xa005 }, 'internalndfilter' => { 354 => 0x9d }, - 'internalserialnumber' => { 69 => 0x96, 81 => 0x9, 133 => 0x10, 194 => 0x49dc, 329 => 0x18, 331 => 0x102, 351 => 0x500, 354 => 0x25, 369 => 0x4, 422 => 0x5, 475 => [0x7c,0xf0], 476 => 0x88, 477 => [0x88,0x8a], 478 => 0x38 }, - 'interopindex' => { 125 => 0x1, 528 => 'InteroperabilityIndex' }, + 'internalserialnumber' => { 69 => 0x96, 81 => 0x9, 133 => 0x10, 194 => 0x49dc, 329 => 0x18, 331 => 0x102, 351 => 0x500, 354 => 0x25, 369 => 0x4, 424 => 0x5, 477 => [0x7c,0xf0], 478 => 0x88, 479 => [0x88,0x8a], 480 => 0x38 }, + 'interopindex' => { 125 => 0x1, 530 => 'InteroperabilityIndex' }, 'interopversion' => { 125 => 0x2 }, 'interval' => { 267 => 0x20 }, 'intervaldurationhours' => { 247 => 0x1dc, 248 => 0xa0, 249 => 0xb8, 250 => 0xb8 }, @@ -3903,9 +3906,9 @@ my %tagLookup = ( 'intervalpriority' => { 232 => 0x186, 247 => 0x1f6, 248 => 0xba, 249 => 0xd2, 250 => 0xd2 }, 'intervals' => { 232 => 0x17c, 247 => 0x1ec, 248 => 0xb0, 249 => 0xc8, 250 => 0xc8, 251 => 0xbc, 252 => 0xcc, 253 => 0xcc }, 'intervalshooting' => { 233 => 0x24, 269 => 0x24, 270 => 0x28, 390 => 0x92 }, - 'introtime' => { 550 => 'introTime' }, - 'introtimescale' => { 550 => [\'introTime','introTimeScale'] }, - 'introtimevalue' => { 550 => [\'introTime','introTimeValue'] }, + 'introtime' => { 552 => 'introTime' }, + 'introtimescale' => { 552 => [\'introTime','introTimeScale'] }, + 'introtimevalue' => { 552 => [\'introTime','introTimeValue'] }, 'ipaversion' => { 145 => 0xdae }, 'ipfcameramodel' => { 145 => 0xe4d }, 'iptc' => { 126 => 'IPTC' }, @@ -3915,23 +3918,23 @@ my %tagLookup = ( 'iptcimageheight' => { 140 => 0x1e }, 'iptcimagerotation' => { 140 => 0x66 }, 'iptcimagewidth' => { 140 => 0x14 }, - 'iptclastedited' => { 535 => 'IptcLastEdited' }, + 'iptclastedited' => { 537 => 'IptcLastEdited' }, 'iptcpicturenumber' => { 140 => 0xa }, 'iptcpixelheight' => { 140 => 0x32 }, 'iptcpixelwidth' => { 140 => 0x28 }, - 'isalternativeof' => { 540 => 'isAlternativeOf' }, - 'isbn' => { 540 => 'isbn' }, - 'iscorrectionof' => { 540 => 'isCorrectionOf' }, + 'isalternativeof' => { 542 => 'isAlternativeOf' }, + 'isbn' => { 542 => 'isbn' }, + 'iscorrectionof' => { 542 => 'isCorrectionOf' }, 'iscustompicturestyle' => { 115 => 0x3 }, - 'ismergedhdr' => { 518 => 'IsMergedHDR' }, - 'ismergedpanorama' => { 518 => 'IsMergedPanorama' }, - 'iso' => { 7 => 0x6, 9 => 0x6, 10 => 0x75, 11 => 0x6, 12 => 0x79, 13 => 0x6, 14 => 0x6, 15 => 0x6, 16 => 0x6, 17 => 0x6, 18 => 0x6, 19 => 0x6, 20 => 0x6, 21 => 0x6, 22 => 0x6, 23 => 0x6, 24 => 0x6, 25 => 0x6, 26 => 0x6, 27 => 0x6, 28 => 0x6, 29 => 0x6, 31 => 0x0, 32 => 0x1, 118 => 0x14, 119 => [0x3014,0x14], 125 => 0x8827, 144 => 0xfd06, 145 => 0x1784, 147 => 0x60, 149 => [0xfa2e,0xfa46], 150 => [0x27,0x28], 151 => 0xf105, 154 => 0x14, 156 => 0x4e, 158 => 0x1e, 159 => 0x1a, 161 => 0x34, 163 => 'ISO', 188 => 0x8, 194 => 0x49ba, 231 => 0x0, 243 => 0x2, 354 => 0xd1, 359 => [0x17,0x37], 390 => [0x8b,0x14], 397 => 0x14, 399 => 0x105, 429 => 0xa014, 432 => 0x86, 453 => 0x6f, 461 => [0x1f,0x21,0x25], 527 => 'ISOSpeedRatings' }, + 'ismergedhdr' => { 520 => 'IsMergedHDR' }, + 'ismergedpanorama' => { 520 => 'IsMergedPanorama' }, + 'iso' => { 7 => 0x6, 9 => 0x6, 10 => 0x75, 11 => 0x6, 12 => 0x79, 13 => 0x6, 14 => 0x6, 15 => 0x6, 16 => 0x6, 17 => 0x6, 18 => 0x6, 19 => 0x6, 20 => 0x6, 21 => 0x6, 22 => 0x6, 23 => 0x6, 24 => 0x6, 25 => 0x6, 26 => 0x6, 27 => 0x6, 28 => 0x6, 29 => 0x6, 31 => 0x0, 32 => 0x1, 118 => 0x14, 119 => [0x3014,0x14], 125 => 0x8827, 144 => 0xfd06, 145 => 0x1784, 147 => 0x60, 149 => [0xfa2e,0xfa46], 150 => [0x27,0x28], 151 => 0xf105, 154 => 0x14, 156 => 0x4e, 158 => 0x1e, 159 => 0x1a, 161 => 0x34, 163 => 'ISO', 188 => 0x8, 194 => 0x49ba, 231 => 0x0, 243 => 0x2, 354 => 0xd1, 359 => [0x17,0x37], 390 => [0x8b,0x14], 397 => 0x14, 399 => 0x105, 431 => 0xa014, 434 => 0x86, 455 => 0x6f, 463 => [0x1f,0x21,0x25], 529 => 'ISOSpeedRatings' }, 'iso2' => { 231 => 0x6, 274 => 0x265, 275 => 0x25c, 276 => 0x265, 277 => 0x221, 278 => 0x25d, 279 => 0x256, 280 => 0x25d, 283 => 0x2b5, 286 => 0x265, 290 => 0x2b5 }, 'isoauto' => { 370 => '14.4' }, 'isoautoflashlimit' => { 249 => 0x156, 250 => 0x156, 251 => 0x146, 252 => 0x15a, 253 => 0x15a }, 'isoautohilimit' => { 230 => 0x5, 247 => 0x28a, 249 => 0x154, 250 => 0x154, 251 => 0x144, 252 => 0x158, 253 => 0x158, 272 => 0x5, 282 => 0x18eb }, - 'isoautomax' => { 455 => 0x4 }, - 'isoautomin' => { 455 => 0x2 }, + 'isoautomax' => { 457 => 0x4 }, + 'isoautomin' => { 457 => 0x2 }, 'isoautominspeed' => { 390 => 0x7a }, 'isoautoshuttertime' => { 230 => 0x4, 249 => 0x15e, 250 => 0x15e, 251 => 0x14e, 252 => 0x162, 253 => 0x162, 272 => 0x4, 282 => 0x18ea }, 'isobutton' => { 253 => 0x796 }, @@ -3943,42 +3946,42 @@ my %tagLookup = ( 'isoselected' => { 353 => 0x359 }, 'isoselection' => { 243 => 0xf }, 'isosensitivitystep' => { 317 => '6.2', 319 => '6.2' }, - 'isosetting' => { 147 => 0x5e, 159 => 0x14, 163 => 'ISOSetting', 188 => 0x24, 189 => 0x26, 190 => 0x1c, 191 => 0x13, 196 => 0x6, 243 => 0x13, 370 => '17.3', 421 => 0x27, 442 => 0x16, 443 => 0x14, 444 => 0x2, 453 => 0x6d, 455 => 0x0 }, - 'isospeed' => { 125 => 0x8833, 528 => 'ISOSpeed' }, + 'isosetting' => { 147 => 0x5e, 159 => 0x14, 163 => 'ISOSetting', 188 => 0x24, 189 => 0x26, 190 => 0x1c, 191 => 0x13, 196 => 0x6, 243 => 0x13, 370 => '17.3', 423 => 0x27, 444 => 0x16, 445 => 0x14, 446 => 0x2, 455 => 0x6d, 457 => 0x0 }, + 'isospeed' => { 125 => 0x8833, 530 => 'ISOSpeed' }, 'isospeedexpansion' => { 89 => 0x3 }, 'isospeedincrements' => { 90 => 0x102 }, - 'isospeedlatitudeyyy' => { 125 => 0x8834, 528 => 'ISOSpeedLatitudeyyy' }, - 'isospeedlatitudezzz' => { 125 => 0x8835, 528 => 'ISOSpeedLatitudezzz' }, + 'isospeedlatitudeyyy' => { 125 => 0x8834, 530 => 'ISOSpeedLatitudeyyy' }, + 'isospeedlatitudezzz' => { 125 => 0x8835, 530 => 'ISOSpeedLatitudezzz' }, 'isospeedrange' => { 90 => 0x103 }, 'isostepsize' => { 309 => '6.1', 310 => '7.2', 312 => '7.2', 313 => '7.2', 318 => '4.1', 322 => '7.2', 323 => '7.2', 325 => 0x14d, 326 => 0x15d, 327 => 0x15d, 328 => 0x175 }, 'isovalue' => { 335 => 0x1001 }, - 'isrc' => { 407 => 'xid ' }, - 'isrccode' => { 415 => "\xa9isr" }, - 'issn' => { 540 => 'issn' }, - 'issueidentifier' => { 540 => 'issueIdentifier' }, - 'issuename' => { 540 => 'issueName' }, - 'issueteaser' => { 540 => 'issueTeaser' }, - 'issuetype' => { 540 => 'issueType' }, - 'istranslationof' => { 540 => 'isTranslationOf' }, + 'isrc' => { 408 => 'xid ' }, + 'isrccode' => { 416 => "\xa9isr" }, + 'issn' => { 542 => 'issn' }, + 'issueidentifier' => { 542 => 'issueIdentifier' }, + 'issuename' => { 542 => 'issueName' }, + 'issueteaser' => { 542 => 'issueTeaser' }, + 'issuetype' => { 542 => 'issueType' }, + 'istranslationof' => { 542 => 'isTranslationOf' }, 'itemsubtype' => { 185 => 'ItemSubType' }, - 'itunesu' => { 407 => 'itnu' }, + 'itunesu' => { 408 => 'itnu' }, 'jobid' => { 138 => 0xb8 }, - 'jobname' => { 529 => 'JobName' }, - 'jobref' => { 549 => 'JobRef' }, - 'jobrefid' => { 549 => [\'JobRef','JobRefId'] }, - 'jobrefname' => { 549 => [\'JobRef','JobRefName'] }, - 'jobrefurl' => { 549 => [\'JobRef','JobRefUrl'] }, - 'jobstatus' => { 529 => 'JobStatus' }, - 'jpeg-heifswitch' => { 456 => 0x2039 }, - 'jpeghandling' => { 521 => 'JPEGHandling', 523 => 'JPEGHandling' }, - 'jpegquality' => { 10 => 0x66, 354 => 0x43, 356 => 0x3034, 456 => 0xb047 }, + 'jobname' => { 531 => 'JobName' }, + 'jobref' => { 551 => 'JobRef' }, + 'jobrefid' => { 551 => [\'JobRef','JobRefId'] }, + 'jobrefname' => { 551 => [\'JobRef','JobRefName'] }, + 'jobrefurl' => { 551 => [\'JobRef','JobRefUrl'] }, + 'jobstatus' => { 531 => 'JobStatus' }, + 'jpeg-heifswitch' => { 458 => 0x2039 }, + 'jpeghandling' => { 523 => 'JPEGHandling', 525 => 'JPEGHandling' }, + 'jpegquality' => { 10 => 0x66, 354 => 0x43, 356 => 0x3034, 458 => 0xb047 }, 'jpegsize' => { 356 => 0x303a }, 'jpgcompression' => { 234 => 0x24, 243 => 0x44, 277 => '671.1' }, 'jpgfromraw' => { 103 => 0x2007, 120 => 'Exif-JpgFromRaw', 359 => 0x2e }, 'jpgfromrawlength' => { 125 => [0x117,0x202] }, 'jpgfromrawstart' => { 125 => [0x111,0x201] }, 'jpgrecordedpixels' => { 370 => '14.1' }, - 'jurisdiction' => { 519 => 'jurisdiction' }, + 'jurisdiction' => { 521 => 'jurisdiction' }, 'jxldecodespeed' => { 125 => 0xcd4b }, 'jxldistance' => { 125 => 0xcd49 }, 'jxleffort' => { 125 => 0xcd4a }, @@ -4001,16 +4004,16 @@ my %tagLookup = ( 'kelvinwb_16' => { 378 => 0x41 }, 'kelvinwb_daylight' => { 378 => 0x1 }, 'kerneldenominators' => { 145 => 0x933 }, - 'key' => { 550 => 'key' }, + 'key' => { 552 => 'key' }, 'keystonecompensation' => { 334 => 0x1900 }, 'keystonedirection' => { 334 => 0x1901 }, 'keystonevalue' => { 334 => 0x1906 }, - 'keyword' => { 407 => 'keyw', 540 => 'keyword' }, + 'keyword' => { 408 => 'keyw', 542 => 'keyword' }, 'keywordinfo' => { 178 => 'Keywords' }, - 'keywords' => { 138 => 0x19, 164 => 'Keywords', 339 => 'Keywords', 406 => 'Keywords', 409 => 'keywords', 515 => 'keywords', 537 => 'Keywords', 548 => 'Keywords' }, - 'killdate' => { 540 => 'killDate' }, - 'killdatea-platform' => { 540 => [\'killDate','killDateA-platform'] }, - 'killdatedate' => { 540 => [\'killDate','killDateDate'] }, + 'keywords' => { 138 => 0x19, 164 => 'Keywords', 339 => 'Keywords', 406 => 'Keywords', 410 => 'keywords', 517 => 'keywords', 539 => 'Keywords', 550 => 'Keywords' }, + 'killdate' => { 542 => 'killDate' }, + 'killdatea-platform' => { 542 => [\'killDate','killDateA-platform'] }, + 'killdatedate' => { 542 => [\'killDate','killDateDate'] }, 'kodakimageheight' => { 144 => 0xf908, 147 => 0xe, 149 => [0xfa1e,0xfa52], 155 => 0x70 }, 'kodakimagewidth' => { 144 => 0xf907, 147 => 0xc, 149 => [0xfa1d,0xfa51], 155 => 0x6c }, 'kodakinfotype' => { 144 => 0xfa00 }, @@ -4020,13 +4023,13 @@ my %tagLookup = ( 'kodakmodel' => { 147 => 0x0, 155 => 0x28 }, 'kodaktag' => { 145 => 0x3ea }, 'kodakversion' => { 145 => 0x0 }, - 'label' => { 343 => 'Label', 548 => 'Label' }, - 'labelname1' => { 533 => [\'TagStructure','TagStructureLabelName'] }, - 'labelname2' => { 533 => [\'TagStructure','TagStructureSubLabelsLabelName'] }, - 'labelname3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsLabelName'] }, - 'labelname4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsLabelName'] }, - 'labelname5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, - 'labelname6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, + 'label' => { 343 => 'Label', 550 => 'Label' }, + 'labelname1' => { 535 => [\'TagStructure','TagStructureLabelName'] }, + 'labelname2' => { 535 => [\'TagStructure','TagStructureSubLabelsLabelName'] }, + 'labelname3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsLabelName'] }, + 'labelname4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsLabelName'] }, + 'labelname5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, + 'labelname6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, 'landmark' => { 354 => 0x6f }, 'landscapeoutputhighlightpoint' => { 115 => 0x26 }, 'landscapeoutputshadowpoint' => { 115 => 0x27 }, @@ -4042,19 +4045,19 @@ my %tagLookup = ( 'landscapeunsharpmaskfineness' => { 115 => 0xa0 }, 'landscapeunsharpmaskstrength' => { 115 => 0x9e }, 'landscapeunsharpmaskthreshold' => { 115 => 0xa2 }, - 'language' => { 247 => 0x8fc, 249 => 0x6a2, 250 => 0x6a2, 251 => 0x592, 252 => 0x5c2, 253 => 0x5da, 524 => 'language' }, + 'language' => { 247 => 0x8fc, 249 => 0x6a2, 250 => 0x6a2, 251 => 0x592, 252 => 0x5c2, 253 => 0x5da, 526 => 'language' }, 'languageidentifier' => { 138 => 0x87 }, - 'largestvalidinteriorrectheight' => { 507 => 'LargestValidInteriorRectHeight' }, - 'largestvalidinteriorrectleft' => { 507 => 'LargestValidInteriorRectLeft' }, - 'largestvalidinteriorrecttop' => { 507 => 'LargestValidInteriorRectTop' }, - 'largestvalidinteriorrectwidth' => { 507 => 'LargestValidInteriorRectWidth' }, + 'largestvalidinteriorrectheight' => { 509 => 'LargestValidInteriorRectHeight' }, + 'largestvalidinteriorrectleft' => { 509 => 'LargestValidInteriorRectLeft' }, + 'largestvalidinteriorrecttop' => { 509 => 'LargestValidInteriorRectTop' }, + 'largestvalidinteriorrectwidth' => { 509 => 'LargestValidInteriorRectWidth' }, 'lastfilenumber' => { 188 => 0x1b }, 'lastkeywordiptc' => { 185 => 'LastKeywordIPTC' }, 'lastkeywordxmp' => { 185 => 'LastKeywordXMP' }, - 'lastphotodate' => { 507 => 'LastPhotoDate' }, - 'lasturl' => { 551 => 'LastURL' }, - 'lateralchromaticaberration' => { 456 => 0x2012 }, - 'lateralchromaticaberrationcorrectionalreadyapplied' => { 518 => 'LateralChromaticAberrationCorrectionAlreadyApplied' }, + 'lastphotodate' => { 509 => 'LastPhotoDate' }, + 'lasturl' => { 553 => 'LastURL' }, + 'lateralchromaticaberration' => { 458 => 0x2012 }, + 'lateralchromaticaberrationcorrectionalreadyapplied' => { 520 => 'LateralChromaticAberrationCorrectionAlreadyApplied' }, 'latestageorhigheststage' => { 124 => [\'GeologicalContext','GeologicalContextLatestAgeOrHighestStage'] }, 'latesteonorhighesteonothem' => { 124 => [\'GeologicalContext','GeologicalContextLatestEonOrHighestEonothem'] }, 'latestepochorhighestseries' => { 124 => [\'GeologicalContext','GeologicalContextLatestEpochOrHighestSeries'] }, @@ -4082,95 +4085,95 @@ my %tagLookup = ( 'lcdmatrixmarvin' => { 145 => 0xe76 }, 'lcdpanels' => { 89 => 0x8 }, 'lcheditor' => { 302 => 0x8ae85e }, - 'legacyiptcdigest' => { 538 => 'LegacyIPTCDigest' }, - 'legalcode' => { 519 => 'legalcode' }, - 'lens' => { 125 => 0xfdea, 243 => 0x84, 518 => 'Lens' }, + 'legacyiptcdigest' => { 540 => 'LegacyIPTCDigest' }, + 'legalcode' => { 521 => 'legalcode' }, + 'lens' => { 125 => 0xfdea, 243 => 0x84, 520 => 'Lens' }, 'lensafstopbutton' => { 88 => 0x11, 89 => 0x13, 90 => 0x506, 91 => 0x10, 92 => 0x12, 95 => 0x13, 96 => 0x9 }, - 'lensaperturerange' => { 432 => [0x30,0x48] }, - 'lensblur' => { 521 => 'LensBlur', 523 => 'LensBlur' }, - 'lensbluractive' => { 521 => [\'LensBlur','LensBlurActive'], 523 => [\'LensBlur','LensBlurActive'] }, - 'lensbluramount' => { 521 => [\'LensBlur','LensBlurBlurAmount'], 523 => [\'LensBlur','LensBlurBlurAmount'] }, - 'lensblurbokehaspect' => { 521 => [\'LensBlur','LensBlurBokehAspect'], 523 => [\'LensBlur','LensBlurBokehAspect'] }, - 'lensblurbokehrotation' => { 521 => [\'LensBlur','LensBlurBokehRotation'], 523 => [\'LensBlur','LensBlurBokehRotation'] }, - 'lensblurbokehshape' => { 521 => [\'LensBlur','LensBlurBokehShape'], 523 => [\'LensBlur','LensBlurBokehShape'] }, - 'lensblurbokehshapedetail' => { 521 => [\'LensBlur','LensBlurBokehShapeDetail'], 523 => [\'LensBlur','LensBlurBokehShapeDetail'] }, - 'lensblurcateyeamount' => { 521 => [\'LensBlur','LensBlurCatEyeAmount'], 523 => [\'LensBlur','LensBlurCatEyeAmount'] }, - 'lensblurcateyescale' => { 521 => [\'LensBlur','LensBlurCatEyeScale'], 523 => [\'LensBlur','LensBlurCatEyeScale'] }, - 'lensblurfocalrange' => { 521 => [\'LensBlur','LensBlurFocalRange'], 523 => [\'LensBlur','LensBlurFocalRange'] }, - 'lensblurfocalrangesource' => { 521 => [\'LensBlur','LensBlurFocalRangeSource'], 523 => [\'LensBlur','LensBlurFocalRangeSource'] }, - 'lensblurhighlightsboost' => { 521 => [\'LensBlur','LensBlurHighlightsBoost'], 523 => [\'LensBlur','LensBlurHighlightsBoost'] }, - 'lensblurhighlightsthreshold' => { 521 => [\'LensBlur','LensBlurHighlightsThreshold'], 523 => [\'LensBlur','LensBlurHighlightsThreshold'] }, - 'lensblursampledarea' => { 521 => [\'LensBlur','LensBlurSampledArea'], 523 => [\'LensBlur','LensBlurSampledArea'] }, - 'lensblursampledrange' => { 521 => [\'LensBlur','LensBlurSampledRange'], 523 => [\'LensBlur','LensBlurSampledRange'] }, - 'lensblursphericalaberration' => { 521 => [\'LensBlur','LensBlurSphericalAberration'], 523 => [\'LensBlur','LensBlurSphericalAberration'] }, - 'lensblursubjectrange' => { 521 => [\'LensBlur','LensBlurSubjectRange'], 523 => [\'LensBlur','LensBlurSubjectRange'] }, - 'lensblurversion' => { 521 => [\'LensBlur','LensBlurVersion'], 523 => [\'LensBlur','LensBlurVersion'] }, + 'lensaperturerange' => { 434 => [0x30,0x48] }, + 'lensblur' => { 523 => 'LensBlur', 525 => 'LensBlur' }, + 'lensbluractive' => { 523 => [\'LensBlur','LensBlurActive'], 525 => [\'LensBlur','LensBlurActive'] }, + 'lensbluramount' => { 523 => [\'LensBlur','LensBlurBlurAmount'], 525 => [\'LensBlur','LensBlurBlurAmount'] }, + 'lensblurbokehaspect' => { 523 => [\'LensBlur','LensBlurBokehAspect'], 525 => [\'LensBlur','LensBlurBokehAspect'] }, + 'lensblurbokehrotation' => { 523 => [\'LensBlur','LensBlurBokehRotation'], 525 => [\'LensBlur','LensBlurBokehRotation'] }, + 'lensblurbokehshape' => { 523 => [\'LensBlur','LensBlurBokehShape'], 525 => [\'LensBlur','LensBlurBokehShape'] }, + 'lensblurbokehshapedetail' => { 523 => [\'LensBlur','LensBlurBokehShapeDetail'], 525 => [\'LensBlur','LensBlurBokehShapeDetail'] }, + 'lensblurcateyeamount' => { 523 => [\'LensBlur','LensBlurCatEyeAmount'], 525 => [\'LensBlur','LensBlurCatEyeAmount'] }, + 'lensblurcateyescale' => { 523 => [\'LensBlur','LensBlurCatEyeScale'], 525 => [\'LensBlur','LensBlurCatEyeScale'] }, + 'lensblurfocalrange' => { 523 => [\'LensBlur','LensBlurFocalRange'], 525 => [\'LensBlur','LensBlurFocalRange'] }, + 'lensblurfocalrangesource' => { 523 => [\'LensBlur','LensBlurFocalRangeSource'], 525 => [\'LensBlur','LensBlurFocalRangeSource'] }, + 'lensblurhighlightsboost' => { 523 => [\'LensBlur','LensBlurHighlightsBoost'], 525 => [\'LensBlur','LensBlurHighlightsBoost'] }, + 'lensblurhighlightsthreshold' => { 523 => [\'LensBlur','LensBlurHighlightsThreshold'], 525 => [\'LensBlur','LensBlurHighlightsThreshold'] }, + 'lensblursampledarea' => { 523 => [\'LensBlur','LensBlurSampledArea'], 525 => [\'LensBlur','LensBlurSampledArea'] }, + 'lensblursampledrange' => { 523 => [\'LensBlur','LensBlurSampledRange'], 525 => [\'LensBlur','LensBlurSampledRange'] }, + 'lensblursphericalaberration' => { 523 => [\'LensBlur','LensBlurSphericalAberration'], 525 => [\'LensBlur','LensBlurSphericalAberration'] }, + 'lensblursubjectrange' => { 523 => [\'LensBlur','LensBlurSubjectRange'], 525 => [\'LensBlur','LensBlurSubjectRange'] }, + 'lensblurversion' => { 523 => [\'LensBlur','LensBlurVersion'], 525 => [\'LensBlur','LensBlurVersion'] }, 'lenscontrolring' => { 325 => 0xb1, 326 => 0xad, 327 => 0xad, 328 => 0xad }, - 'lenscorrectionsettings' => { 526 => 'LensCorrectionSettings' }, - 'lensdistortinfo' => { 518 => 'LensDistortInfo' }, + 'lenscorrectionsettings' => { 528 => 'LensCorrectionSettings' }, + 'lensdistortinfo' => { 520 => 'LensDistortInfo' }, 'lensdistortionparams' => { 335 => 0x206 }, 'lensdriveend' => { 241 => 0x56 }, 'lensdrivenoaf' => { 90 => 0x505 }, 'lensdrivewhenafimpossible' => { 2 => 0xb }, - 'lense-mountversion' => { 444 => 0x3f0, 492 => 0xd }, - 'lensfirmware' => { 423 => 0x20, 429 => 0xa004 }, - 'lensfirmwareversion' => { 241 => 0x34, 331 => 0x204, 354 => 0x60, 444 => 0x3f3, 492 => 0x14 }, + 'lense-mountversion' => { 446 => 0x3f0, 494 => 0xd }, + 'lensfirmware' => { 425 => 0x20, 431 => 0xa004 }, + 'lensfirmwareversion' => { 241 => 0x34, 331 => 0x204, 354 => 0x60, 446 => 0x3f3, 494 => 0x14 }, 'lensfocallength' => { 109 => 0xf0512, 380 => 0x9 }, - 'lensfocalrange' => { 432 => [0xa,0x2a] }, + 'lensfocalrange' => { 434 => [0xa,0x2a] }, 'lensfocusfunctionbuttons' => { 310 => '55.1', 312 => '52.1', 313 => '52.1', 322 => '52.1', 323 => '52.1' }, - 'lensformat' => { 469 => 0x1891, 471 => 0x18bd, 472 => 0x18ed, 473 => 0x17f1, 475 => 0x106, 476 => 0x106, 487 => 0x603, 488 => 0x5d }, + 'lensformat' => { 471 => 0x1891, 473 => 0x18bd, 474 => 0x18ed, 475 => 0x17f1, 477 => 0x106, 478 => 0x106, 489 => 0x603, 490 => 0x5d }, 'lensfstops' => { 235 => 0x7, 236 => 0xc, 237 => 0xd, 241 => 0xe, 243 => 0x8b, 380 => '0.3' }, 'lensfunc1button' => { 325 => 0xa3, 326 => 0x9f, 327 => 0x9f, 328 => 0x9f }, 'lensfunc1buttonplaybackmode' => { 250 => 0x80a, 253 => 0x810 }, 'lensfunc2button' => { 325 => 0xab, 326 => 0xa7, 327 => 0xa7, 328 => 0xa7 }, 'lensfunc2buttonplaybackmode' => { 250 => 0x80c, 253 => 0x812 }, - 'lensid' => { 241 => 0x30, 518 => 'LensID' }, + 'lensid' => { 241 => 0x30, 520 => 'LensID' }, 'lensidnumber' => { 235 => 0x6, 236 => 0xb, 237 => 0xc, 241 => 0xd }, - 'lensinfo' => { 125 => 0xa432, 386 => 0x2a, 518 => 'LensInfo', 528 => 'LensSpecification' }, + 'lensinfo' => { 125 => 0xa432, 386 => 0x2a, 520 => 'LensInfo', 530 => 'LensSpecification' }, 'lenskind' => { 380 => 0x1 }, - 'lensmake' => { 125 => 0xa433, 170 => 'Make', 528 => 'LensMake' }, - 'lensmanualdistortionamount' => { 521 => 'LensManualDistortionAmount', 523 => 'LensManualDistortionAmount' }, + 'lensmake' => { 125 => 0xa433, 170 => 'Make', 530 => 'LensMake' }, + 'lensmanualdistortionamount' => { 523 => 'LensManualDistortionAmount', 525 => 'LensManualDistortionAmount' }, 'lensmanufacturer' => { 185 => 'LensManufacturer' }, - 'lensmaxaperturerange' => { 432 => 0x2b }, - 'lensmodel' => { 7 => 0x937, 14 => 0x92b, 15 => 0x933, 69 => 0x95, 125 => 0xa434, 170 => 'Model', 185 => 'LensModel', 238 => 0x18a, 239 => 0x18b, 240 => 0x2ac, 331 => 0x203, 386 => 0xc, 399 => 0x412, 528 => 'LensModel' }, + 'lensmaxaperturerange' => { 434 => 0x2b }, + 'lensmodel' => { 7 => 0x937, 14 => 0x92b, 15 => 0x933, 69 => 0x95, 125 => 0xa434, 170 => 'Model', 185 => 'LensModel', 238 => 0x18a, 239 => 0x18b, 240 => 0x2ac, 331 => 0x203, 386 => 0xc, 399 => 0x412, 417 => 'camera.lens_model', 530 => 'LensModel' }, 'lensmodulationoptimizer' => { 133 => 0x1045 }, - 'lensmount' => { 444 => 0x99, 469 => 0x1892, 471 => 0x18be, 472 => 0x18ee, 473 => 0x17f2, 475 => 0x105, 476 => 0x105, 487 => 0x604, 488 => 0x5e }, - 'lensmount2' => { 492 => 0x8 }, + 'lensmount' => { 446 => 0x99, 471 => 0x1892, 473 => 0x18be, 474 => 0x18ee, 475 => 0x17f2, 477 => 0x105, 478 => 0x105, 489 => 0x604, 490 => 0x5e }, + 'lensmount2' => { 494 => 0x8 }, 'lensmounttype' => { 241 => 0x5f }, 'lenspositionabsolute' => { 241 => 0x5a }, - 'lensprofilechromaticaberrationscale' => { 521 => 'LensProfileChromaticAberrationScale', 523 => 'LensProfileChromaticAberrationScale' }, - 'lensprofiledigest' => { 521 => 'LensProfileDigest', 523 => 'LensProfileDigest' }, - 'lensprofiledistortionscale' => { 521 => 'LensProfileDistortionScale', 523 => 'LensProfileDistortionScale' }, - 'lensprofileenable' => { 521 => 'LensProfileEnable', 523 => 'LensProfileEnable' }, - 'lensprofilefilename' => { 521 => 'LensProfileFilename', 523 => 'LensProfileFilename' }, - 'lensprofileisembedded' => { 521 => 'LensProfileIsEmbedded', 523 => 'LensProfileIsEmbedded' }, - 'lensprofilematchkeycameramodelname' => { 521 => 'LensProfileMatchKeyCameraModelName', 523 => 'LensProfileMatchKeyCameraModelName' }, - 'lensprofilematchkeyexifmake' => { 521 => 'LensProfileMatchKeyExifMake', 523 => 'LensProfileMatchKeyExifMake' }, - 'lensprofilematchkeyexifmodel' => { 521 => 'LensProfileMatchKeyExifModel', 523 => 'LensProfileMatchKeyExifModel' }, - 'lensprofilematchkeyisraw' => { 521 => 'LensProfileMatchKeyIsRaw', 523 => 'LensProfileMatchKeyIsRaw' }, - 'lensprofilematchkeylensid' => { 521 => 'LensProfileMatchKeyLensID', 523 => 'LensProfileMatchKeyLensID' }, - 'lensprofilematchkeylensinfo' => { 521 => 'LensProfileMatchKeyLensInfo', 523 => 'LensProfileMatchKeyLensInfo' }, - 'lensprofilematchkeylensname' => { 521 => 'LensProfileMatchKeyLensName', 523 => 'LensProfileMatchKeyLensName' }, - 'lensprofilematchkeysensorformatfactor' => { 521 => 'LensProfileMatchKeySensorFormatFactor', 523 => 'LensProfileMatchKeySensorFormatFactor' }, - 'lensprofilename' => { 353 => 0x370, 521 => 'LensProfileName', 523 => 'LensProfileName' }, - 'lensprofilesetup' => { 521 => 'LensProfileSetup', 523 => 'LensProfileSetup' }, - 'lensprofilevignettingscale' => { 521 => 'LensProfileVignettingScale', 523 => 'LensProfileVignettingScale' }, + 'lensprofilechromaticaberrationscale' => { 523 => 'LensProfileChromaticAberrationScale', 525 => 'LensProfileChromaticAberrationScale' }, + 'lensprofiledigest' => { 523 => 'LensProfileDigest', 525 => 'LensProfileDigest' }, + 'lensprofiledistortionscale' => { 523 => 'LensProfileDistortionScale', 525 => 'LensProfileDistortionScale' }, + 'lensprofileenable' => { 523 => 'LensProfileEnable', 525 => 'LensProfileEnable' }, + 'lensprofilefilename' => { 523 => 'LensProfileFilename', 525 => 'LensProfileFilename' }, + 'lensprofileisembedded' => { 523 => 'LensProfileIsEmbedded', 525 => 'LensProfileIsEmbedded' }, + 'lensprofilematchkeycameramodelname' => { 523 => 'LensProfileMatchKeyCameraModelName', 525 => 'LensProfileMatchKeyCameraModelName' }, + 'lensprofilematchkeyexifmake' => { 523 => 'LensProfileMatchKeyExifMake', 525 => 'LensProfileMatchKeyExifMake' }, + 'lensprofilematchkeyexifmodel' => { 523 => 'LensProfileMatchKeyExifModel', 525 => 'LensProfileMatchKeyExifModel' }, + 'lensprofilematchkeyisraw' => { 523 => 'LensProfileMatchKeyIsRaw', 525 => 'LensProfileMatchKeyIsRaw' }, + 'lensprofilematchkeylensid' => { 523 => 'LensProfileMatchKeyLensID', 525 => 'LensProfileMatchKeyLensID' }, + 'lensprofilematchkeylensinfo' => { 523 => 'LensProfileMatchKeyLensInfo', 525 => 'LensProfileMatchKeyLensInfo' }, + 'lensprofilematchkeylensname' => { 523 => 'LensProfileMatchKeyLensName', 525 => 'LensProfileMatchKeyLensName' }, + 'lensprofilematchkeysensorformatfactor' => { 523 => 'LensProfileMatchKeySensorFormatFactor', 525 => 'LensProfileMatchKeySensorFormatFactor' }, + 'lensprofilename' => { 353 => 0x370, 523 => 'LensProfileName', 525 => 'LensProfileName' }, + 'lensprofilesetup' => { 523 => 'LensProfileSetup', 525 => 'LensProfileSetup' }, + 'lensprofilevignettingscale' => { 523 => 'LensProfileVignettingScale', 525 => 'LensProfileVignettingScale' }, 'lensproperties' => { 331 => 0x20b }, - 'lensserialnumber' => { 21 => 0x164, 35 => 0x16b, 65 => 0x0, 125 => 0xa435, 170 => 'SerialNumber', 331 => 0x202, 352 => 0x321, 354 => 0x52, 415 => 'LENS', 423 => 0x30, 518 => 'LensSerialNumber', 528 => 'LensSerialNumber' }, + 'lensserialnumber' => { 21 => 0x164, 35 => 0x16b, 65 => 0x0, 125 => 0xa435, 170 => 'SerialNumber', 331 => 0x202, 352 => 0x321, 354 => 0x52, 416 => 'LENS', 425 => 0x30, 520 => 'LensSerialNumber', 530 => 'LensSerialNumber' }, 'lensshutterlock' => { 191 => 0x4a }, - 'lensspec' => { 439 => 0x0, 440 => 0x0, 441 => 0x0, 456 => 0xb02a }, - 'lensspecfeatures' => { 475 => [0x115,0x116], 476 => [0x116,0x1ed,0x1f0,0x21c,0x21e] }, + 'lensspec' => { 441 => 0x0, 442 => 0x0, 443 => 0x0, 458 => 0xb02a }, + 'lensspecfeatures' => { 477 => [0x115,0x116], 478 => [0x116,0x1ed,0x1f0,0x21c,0x21e] }, 'lenstemperature' => { 335 => 0x1008 }, - 'lenstype' => { 7 => 0xe2, 8 => 0xd, 9 => 0x1a7, 10 => 0xc, 11 => 0x111, 12 => 0xc, 13 => 0x14f, 14 => 0xd6, 15 => 0xde, 16 => 0xf6, 17 => 0xea, 18 => 0xff, 19 => [0xc,0x97], 20 => 0xe6, 21 => 0x153, 22 => 0xea, 23 => 0xe8, 24 => 0x127, 25 => 0x161, 26 => 0x166, 27 => 0x184, 28 => 0x112, 29 => 0x189, 37 => 0x16, 193 => 0x10c, 194 => 0x49bd, 243 => 0x83, 331 => 0x201, 345 => 0x16, 349 => 0x310, 351 => 0x303, 352 => 0x303, 354 => 0x51, 356 => 0x3405, 381 => 0x0, 382 => 0x0, 383 => 0x1, 384 => 0x1, 385 => 0x1, 387 => 0x0, 429 => 0xa003, 432 => 0x27, 456 => 0xb027, 469 => 0x1896, 471 => 0x18c2, 472 => 0x18f2, 473 => 0x17f6, 475 => 0x109, 476 => 0x109, 487 => 0x608, 488 => 0x62 }, - 'lenstype2' => { 444 => 0x3f7, 469 => 0x1893, 471 => 0x18bf, 472 => 0x18ef, 473 => 0x17f3, 475 => 0x107, 476 => 0x107, 487 => 0x605, 488 => 0x60 }, - 'lenstype3' => { 492 => 0x9 }, + 'lenstype' => { 7 => 0xe2, 8 => 0xd, 9 => 0x1a7, 10 => 0xc, 11 => 0x111, 12 => 0xc, 13 => 0x14f, 14 => 0xd6, 15 => 0xde, 16 => 0xf6, 17 => 0xea, 18 => 0xff, 19 => [0xc,0x97], 20 => 0xe6, 21 => 0x153, 22 => 0xea, 23 => 0xe8, 24 => 0x127, 25 => 0x161, 26 => 0x166, 27 => 0x184, 28 => 0x112, 29 => 0x189, 37 => 0x16, 193 => 0x10c, 194 => 0x49bd, 243 => 0x83, 331 => 0x201, 345 => 0x16, 349 => 0x310, 351 => 0x303, 352 => 0x303, 354 => 0x51, 356 => 0x3405, 381 => 0x0, 382 => 0x0, 383 => 0x1, 384 => 0x1, 385 => 0x1, 387 => 0x0, 431 => 0xa003, 434 => 0x27, 458 => 0xb027, 471 => 0x1896, 473 => 0x18c2, 474 => 0x18f2, 475 => 0x17f6, 477 => 0x109, 478 => 0x109, 489 => 0x608, 490 => 0x62 }, + 'lenstype2' => { 446 => 0x3f7, 471 => 0x1893, 473 => 0x18bf, 474 => 0x18ef, 475 => 0x17f3, 477 => 0x107, 478 => 0x107, 489 => 0x605, 490 => 0x60 }, + 'lenstype3' => { 494 => 0x9 }, 'lenstypemake' => { 354 => 0xc4 }, 'lenstypemodel' => { 354 => [0xc5,0xe4] }, - 'lenszoomposition' => { 484 => 0x19, 485 => 0x1e, 488 => [0x342,0x34e,0x35a] }, + 'lenszoomposition' => { 486 => 0x19, 487 => 0x1e, 490 => [0x342,0x34e,0x35a] }, 'levelindicator' => { 362 => 0x15 }, - 'levelmeter' => { 415 => ['Lvlm','lvlm'] }, + 'levelmeter' => { 416 => ['Lvlm','lvlm'] }, 'levelorientation' => { 388 => 0x0 }, - 'license' => { 519 => 'license' }, + 'license' => { 521 => 'license' }, 'licensee' => { 340 => 'Licensee' }, 'licenseeid' => { 340 => [\'Licensee','LicenseeLicenseeID'] }, 'licenseeimageid' => { 340 => 'LicenseeImageID' }, @@ -4182,7 +4185,7 @@ my %tagLookup = ( 'licenseid' => { 340 => 'LicenseID' }, 'licensestartdate' => { 340 => 'LicenseStartDate' }, 'licensetransactiondate' => { 340 => 'LicenseTransactionDate' }, - 'licensetype' => { 525 => 'licensetype' }, + 'licensetype' => { 527 => 'licensetype' }, 'licensor' => { 340 => 'Licensor' }, 'licensorcity' => { 340 => [\'Licensor','LicensorLicensorCity'] }, 'licensorcountry' => { 340 => [\'Licensor','LicensorLicensorCountry'] }, @@ -4204,8 +4207,8 @@ my %tagLookup = ( 'lightcondition' => { 335 => 0x1009 }, 'lightingmode' => { 119 => 0x302a }, 'lightreading' => { 390 => 0x15 }, - 'lightsource' => { 125 => 0x9208, 243 => 0x90, 338 => 0x1000, 527 => 'LightSource' }, - 'lightsourcespecial' => { 431 => 0x21d }, + 'lightsource' => { 125 => 0x9208, 243 => 0x90, 338 => 0x1000, 529 => 'LightSource' }, + 'lightsourcespecial' => { 433 => 0x21d }, 'lightswitch' => { 322 => '0.1', 324 => '0.1' }, 'lightvaluecenter' => { 335 => 0x103d }, 'lightvalueperiphery' => { 335 => 0x103e }, @@ -4232,132 +4235,132 @@ my %tagLookup = ( 'linearityuppermargin' => { 44 => 0x32c, 45 => 0x282, 46 => 0x296, 49 => [0x2ba,0x2d1,0x2d5], 51 => 0x1e5, 52 => [0x1fe,0x2de], 53 => [0x232,0x310], 54 => 0x31e }, 'linearizationtable' => { 125 => 0xc618 }, 'linearresponselimit' => { 125 => 0xc62e }, - 'link' => { 540 => 'link' }, + 'link' => { 542 => 'link' }, 'linkaetoafpoint' => { 370 => '14.2' }, - 'linkedencodedrightsexpr' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprLinkedRightsExpr'] }, - 'linkedencodedrightsexprlangid' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprLangId'] }, - 'linkedencodedrightsexprtype' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprEncType'] }, - 'linkedencrightsexpr' => { 535 => 'LinkedEncRightsExpr' }, + 'linkedencodedrightsexpr' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprLinkedRightsExpr'] }, + 'linkedencodedrightsexprlangid' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprLangId'] }, + 'linkedencodedrightsexprtype' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprEncType'] }, + 'linkedencrightsexpr' => { 537 => 'LinkedEncRightsExpr' }, 'linkvrtofocuspoint' => { 247 => 0x3ec }, 'linlogcoring' => { 145 => 0x904 }, 'lithostratigraphicterms' => { 124 => [\'GeologicalContext','GeologicalContextLithostratigraphicTerms'] }, - 'livephotoauto' => { 409 => 'live-photo.auto' }, + 'livephotoauto' => { 410 => 'live-photo.auto' }, 'livephotovideoindex' => { 1 => 0x17 }, - 'livephotovitalityscore' => { 409 => 'live-photo.vitality-score' }, - 'livephotovitalityscoringversion' => { 409 => 'live-photo.vitality-scoring-version' }, + 'livephotovitalityscore' => { 410 => 'live-photo.vitality-score' }, + 'livephotovitalityscoringversion' => { 410 => 'live-photo.vitality-scoring-version' }, 'liveview' => { 365 => 0x1fa, 372 => 0x3 }, 'liveviewaf' => { 314 => '32.1', 324 => '34.1' }, 'liveviewafareamode' => { 319 => '34.1' }, - 'liveviewafmethod' => { 461 => 0x20 }, + 'liveviewafmethod' => { 463 => 0x20 }, 'liveviewafmode' => { 319 => '34.2' }, - 'liveviewafsetting' => { 444 => 0x36 }, + 'liveviewafsetting' => { 446 => 0x36 }, 'liveviewbuttonoptions' => { 310 => '50.2', 312 => '48.2', 313 => '48.2', 322 => '48.2', 323 => '48.2' }, 'liveviewexposuresimulation' => { 90 => 0x810 }, - 'liveviewfocusmode' => { 444 => [0x8b,0x28b] }, - 'liveviewmetering' => { 444 => [0x84,0x284] }, + 'liveviewfocusmode' => { 446 => [0x8b,0x28b] }, + 'liveviewmetering' => { 446 => [0x84,0x284] }, 'liveviewmonitorofftime' => { 310 => '21.2', 312 => '21.2', 313 => '21.2', 315 => '20.2', 316 => '20.2', 317 => '20.2', 319 => '20.2', 322 => '21.2', 323 => '21.2' }, 'liveviewshooting' => { 61 => 0x13 }, 'livingspecimen' => { 124 => 'LivingSpecimen' }, 'livingspecimenmaterialsampleid' => { 124 => [\'LivingSpecimen','LivingSpecimenMaterialSampleID'] }, 'localcaption' => { 138 => 0x79 }, 'localizedcameramodel' => { 125 => 0xc615 }, - 'locallocationname' => { 429 => 0x30 }, - 'location' => { 242 => 0x9, 354 => 0x67, 513 => 'Location', 534 => 'Location', 539 => 'location', 540 => 'location' }, - 'locationaccuracyhorizontal' => { 409 => 'location.accuracy.horizontal' }, - 'locationareacode' => { 520 => 'lac' }, - 'locationbody' => { 409 => 'location.body' }, - 'locationcreated' => { 535 => 'LocationCreated' }, - 'locationcreatedcity' => { 535 => [\'LocationCreated','LocationCreatedCity'] }, - 'locationcreatedcountrycode' => { 535 => [\'LocationCreated','LocationCreatedCountryCode'] }, - 'locationcreatedcountryname' => { 535 => [\'LocationCreated','LocationCreatedCountryName'] }, - 'locationcreatedgpsaltitude' => { 535 => [\'LocationCreated','LocationCreatedGPSAltitude'] }, - 'locationcreatedgpsaltituderef' => { 535 => [\'LocationCreated','LocationCreatedGPSAltitudeRef'] }, - 'locationcreatedgpslatitude' => { 535 => [\'LocationCreated','LocationCreatedGPSLatitude'] }, - 'locationcreatedgpslongitude' => { 535 => [\'LocationCreated','LocationCreatedGPSLongitude'] }, - 'locationcreatedidentifier' => { 535 => [\'LocationCreated','LocationCreatedIdentifier'] }, - 'locationcreatedlocationid' => { 535 => [\'LocationCreated','LocationCreatedLocationId'] }, - 'locationcreatedlocationname' => { 535 => [\'LocationCreated','LocationCreatedLocationName'] }, - 'locationcreatedprovincestate' => { 535 => [\'LocationCreated','LocationCreatedProvinceState'] }, - 'locationcreatedsublocation' => { 535 => [\'LocationCreated','LocationCreatedSublocation'] }, - 'locationcreatedworldregion' => { 535 => [\'LocationCreated','LocationCreatedWorldRegion'] }, - 'locationdate' => { 409 => 'location.date' }, - 'locationinformation' => { 415 => 'loci' }, + 'locallocationname' => { 431 => 0x30 }, + 'location' => { 242 => 0x9, 354 => 0x67, 515 => 'Location', 536 => 'Location', 541 => 'location', 542 => 'location' }, + 'locationaccuracyhorizontal' => { 410 => 'location.accuracy.horizontal' }, + 'locationareacode' => { 522 => 'lac' }, + 'locationbody' => { 410 => 'location.body' }, + 'locationcreated' => { 537 => 'LocationCreated' }, + 'locationcreatedcity' => { 537 => [\'LocationCreated','LocationCreatedCity'] }, + 'locationcreatedcountrycode' => { 537 => [\'LocationCreated','LocationCreatedCountryCode'] }, + 'locationcreatedcountryname' => { 537 => [\'LocationCreated','LocationCreatedCountryName'] }, + 'locationcreatedgpsaltitude' => { 537 => [\'LocationCreated','LocationCreatedGPSAltitude'] }, + 'locationcreatedgpsaltituderef' => { 537 => [\'LocationCreated','LocationCreatedGPSAltitudeRef'] }, + 'locationcreatedgpslatitude' => { 537 => [\'LocationCreated','LocationCreatedGPSLatitude'] }, + 'locationcreatedgpslongitude' => { 537 => [\'LocationCreated','LocationCreatedGPSLongitude'] }, + 'locationcreatedidentifier' => { 537 => [\'LocationCreated','LocationCreatedIdentifier'] }, + 'locationcreatedlocationid' => { 537 => [\'LocationCreated','LocationCreatedLocationId'] }, + 'locationcreatedlocationname' => { 537 => [\'LocationCreated','LocationCreatedLocationName'] }, + 'locationcreatedprovincestate' => { 537 => [\'LocationCreated','LocationCreatedProvinceState'] }, + 'locationcreatedsublocation' => { 537 => [\'LocationCreated','LocationCreatedSublocation'] }, + 'locationcreatedworldregion' => { 537 => [\'LocationCreated','LocationCreatedWorldRegion'] }, + 'locationdate' => { 410 => 'location.date' }, + 'locationinformation' => { 416 => 'loci' }, 'locationinfoversion' => { 242 => 0x0 }, - 'locationname' => { 409 => 'location.name', 429 => 0x31 }, - 'locationnote' => { 409 => 'location.note' }, - 'locationrole' => { 409 => 'location.role' }, - 'locationshown' => { 535 => 'LocationShown' }, - 'locationshowncity' => { 535 => [\'LocationShown','LocationShownCity'] }, - 'locationshowncountrycode' => { 535 => [\'LocationShown','LocationShownCountryCode'] }, - 'locationshowncountryname' => { 535 => [\'LocationShown','LocationShownCountryName'] }, - 'locationshowngpsaltitude' => { 535 => [\'LocationShown','LocationShownGPSAltitude'] }, - 'locationshowngpsaltituderef' => { 535 => [\'LocationShown','LocationShownGPSAltitudeRef'] }, - 'locationshowngpslatitude' => { 535 => [\'LocationShown','LocationShownGPSLatitude'] }, - 'locationshowngpslongitude' => { 535 => [\'LocationShown','LocationShownGPSLongitude'] }, - 'locationshownidentifier' => { 535 => [\'LocationShown','LocationShownIdentifier'] }, - 'locationshownlocationid' => { 535 => [\'LocationShown','LocationShownLocationId'] }, - 'locationshownlocationname' => { 535 => [\'LocationShown','LocationShownLocationName'] }, - 'locationshownprovincestate' => { 535 => [\'LocationShown','LocationShownProvinceState'] }, - 'locationshownsublocation' => { 535 => [\'LocationShown','LocationShownSublocation'] }, - 'locationshownworldregion' => { 535 => [\'LocationShown','LocationShownWorldRegion'] }, + 'locationname' => { 410 => 'location.name', 431 => 0x31 }, + 'locationnote' => { 410 => 'location.note' }, + 'locationrole' => { 410 => 'location.role' }, + 'locationshown' => { 537 => 'LocationShown' }, + 'locationshowncity' => { 537 => [\'LocationShown','LocationShownCity'] }, + 'locationshowncountrycode' => { 537 => [\'LocationShown','LocationShownCountryCode'] }, + 'locationshowncountryname' => { 537 => [\'LocationShown','LocationShownCountryName'] }, + 'locationshowngpsaltitude' => { 537 => [\'LocationShown','LocationShownGPSAltitude'] }, + 'locationshowngpsaltituderef' => { 537 => [\'LocationShown','LocationShownGPSAltitudeRef'] }, + 'locationshowngpslatitude' => { 537 => [\'LocationShown','LocationShownGPSLatitude'] }, + 'locationshowngpslongitude' => { 537 => [\'LocationShown','LocationShownGPSLongitude'] }, + 'locationshownidentifier' => { 537 => [\'LocationShown','LocationShownIdentifier'] }, + 'locationshownlocationid' => { 537 => [\'LocationShown','LocationShownLocationId'] }, + 'locationshownlocationname' => { 537 => [\'LocationShown','LocationShownLocationName'] }, + 'locationshownprovincestate' => { 537 => [\'LocationShown','LocationShownProvinceState'] }, + 'locationshownsublocation' => { 537 => [\'LocationShown','LocationShownSublocation'] }, + 'locationshownworldregion' => { 537 => [\'LocationShown','LocationShownWorldRegion'] }, 'lockmicrophonebutton' => { 90 => 0x709 }, - 'logcomment' => { 550 => 'logComment' }, + 'logcomment' => { 552 => 'logComment' }, 'logscale' => { 145 => 0x902 }, - 'longdescription' => { 407 => 'ldes' }, - 'longexposurenoisereduction' => { 67 => 0x4, 90 => 0x201, 91 => 0x1, 92 => 0x2, 93 => 0x1, 94 => 0x1, 95 => 0x2, 96 => 0x1, 354 => 0x49, 442 => 0x2b, 443 => 0x25, 444 => 0x25, 456 => 0x2008, 461 => 0x11, 488 => 0x44 }, + 'longdescription' => { 408 => 'ldes' }, + 'longexposurenoisereduction' => { 67 => 0x4, 90 => 0x201, 91 => 0x1, 92 => 0x2, 93 => 0x1, 94 => 0x1, 95 => 0x2, 96 => 0x1, 354 => 0x49, 444 => 0x2b, 445 => 0x25, 446 => 0x25, 458 => 0x2008, 463 => 0x11, 490 => 0x44 }, 'longexposurenoisereduction2' => { 61 => 0x8 }, 'longexposurenrused' => { 354 => 0xbe }, 'longitude' => { 122 => 'Longitude' }, - 'look' => { 521 => 'Look', 523 => 'Look' }, - 'lookamount' => { 521 => [\'Look','LookAmount'], 523 => [\'Look','LookAmount'] }, - 'lookcluster' => { 521 => [\'Look','LookCluster'], 523 => [\'Look','LookCluster'] }, - 'lookcopyright' => { 521 => [\'Look','LookCopyright'], 523 => [\'Look','LookCopyright'] }, - 'lookgroup' => { 521 => [\'Look','LookGroup'], 523 => [\'Look','LookGroup'] }, - 'lookname' => { 521 => 'LookName', 523 => 'LookName' }, - 'lookparameters' => { 521 => [\'Look','LookParameters'], 523 => [\'Look','LookParameters'] }, - 'lookparameterscameraprofile' => { 521 => [\'Look','LookParametersCameraProfile'], 523 => [\'Look','LookParametersCameraProfile'] }, - 'lookparametersclarity2012' => { 521 => [\'Look','LookParametersClarity2012'], 523 => [\'Look','LookParametersClarity2012'] }, - 'lookparametersconverttograyscale' => { 521 => [\'Look','LookParametersConvertToGrayscale'], 523 => [\'Look','LookParametersConvertToGrayscale'] }, - 'lookparametershighlights2012' => { 521 => [\'Look','LookParametersHighlights2012'], 523 => [\'Look','LookParametersHighlights2012'] }, - 'lookparameterslooktable' => { 521 => [\'Look','LookParametersLookTable'], 523 => [\'Look','LookParametersLookTable'] }, - 'lookparametersprocessversion' => { 521 => [\'Look','LookParametersProcessVersion'], 523 => [\'Look','LookParametersProcessVersion'] }, - 'lookparametersshadows2012' => { 521 => [\'Look','LookParametersShadows2012'], 523 => [\'Look','LookParametersShadows2012'] }, - 'lookparameterstonecurvepv2012' => { 521 => [\'Look','LookParametersToneCurvePV2012'], 523 => [\'Look','LookParametersToneCurvePV2012'] }, - 'lookparameterstonecurvepv2012blue' => { 521 => [\'Look','LookParametersToneCurvePV2012Blue'], 523 => [\'Look','LookParametersToneCurvePV2012Blue'] }, - 'lookparameterstonecurvepv2012green' => { 521 => [\'Look','LookParametersToneCurvePV2012Green'], 523 => [\'Look','LookParametersToneCurvePV2012Green'] }, - 'lookparameterstonecurvepv2012red' => { 521 => [\'Look','LookParametersToneCurvePV2012Red'], 523 => [\'Look','LookParametersToneCurvePV2012Red'] }, - 'lookparametersversion' => { 521 => [\'Look','LookParametersVersion'], 523 => [\'Look','LookParametersVersion'] }, - 'looksupportsamount' => { 521 => [\'Look','LookSupportsAmount'], 523 => [\'Look','LookSupportsAmount'] }, - 'looksupportsmonochrome' => { 521 => [\'Look','LookSupportsMonochrome'], 523 => [\'Look','LookSupportsMonochrome'] }, - 'looksupportsoutputreferred' => { 521 => [\'Look','LookSupportsOutputReferred'], 523 => [\'Look','LookSupportsOutputReferred'] }, - 'lookuuid' => { 521 => [\'Look','LookUUID'], 523 => [\'Look','LookUUID'] }, - 'loop' => { 550 => 'loop' }, - 'loopstyle' => { 415 => 'LOOP' }, + 'look' => { 523 => 'Look', 525 => 'Look' }, + 'lookamount' => { 523 => [\'Look','LookAmount'], 525 => [\'Look','LookAmount'] }, + 'lookcluster' => { 523 => [\'Look','LookCluster'], 525 => [\'Look','LookCluster'] }, + 'lookcopyright' => { 523 => [\'Look','LookCopyright'], 525 => [\'Look','LookCopyright'] }, + 'lookgroup' => { 523 => [\'Look','LookGroup'], 525 => [\'Look','LookGroup'] }, + 'lookname' => { 523 => 'LookName', 525 => 'LookName' }, + 'lookparameters' => { 523 => [\'Look','LookParameters'], 525 => [\'Look','LookParameters'] }, + 'lookparameterscameraprofile' => { 523 => [\'Look','LookParametersCameraProfile'], 525 => [\'Look','LookParametersCameraProfile'] }, + 'lookparametersclarity2012' => { 523 => [\'Look','LookParametersClarity2012'], 525 => [\'Look','LookParametersClarity2012'] }, + 'lookparametersconverttograyscale' => { 523 => [\'Look','LookParametersConvertToGrayscale'], 525 => [\'Look','LookParametersConvertToGrayscale'] }, + 'lookparametershighlights2012' => { 523 => [\'Look','LookParametersHighlights2012'], 525 => [\'Look','LookParametersHighlights2012'] }, + 'lookparameterslooktable' => { 523 => [\'Look','LookParametersLookTable'], 525 => [\'Look','LookParametersLookTable'] }, + 'lookparametersprocessversion' => { 523 => [\'Look','LookParametersProcessVersion'], 525 => [\'Look','LookParametersProcessVersion'] }, + 'lookparametersshadows2012' => { 523 => [\'Look','LookParametersShadows2012'], 525 => [\'Look','LookParametersShadows2012'] }, + 'lookparameterstonecurvepv2012' => { 523 => [\'Look','LookParametersToneCurvePV2012'], 525 => [\'Look','LookParametersToneCurvePV2012'] }, + 'lookparameterstonecurvepv2012blue' => { 523 => [\'Look','LookParametersToneCurvePV2012Blue'], 525 => [\'Look','LookParametersToneCurvePV2012Blue'] }, + 'lookparameterstonecurvepv2012green' => { 523 => [\'Look','LookParametersToneCurvePV2012Green'], 525 => [\'Look','LookParametersToneCurvePV2012Green'] }, + 'lookparameterstonecurvepv2012red' => { 523 => [\'Look','LookParametersToneCurvePV2012Red'], 525 => [\'Look','LookParametersToneCurvePV2012Red'] }, + 'lookparametersversion' => { 523 => [\'Look','LookParametersVersion'], 525 => [\'Look','LookParametersVersion'] }, + 'looksupportsamount' => { 523 => [\'Look','LookSupportsAmount'], 525 => [\'Look','LookSupportsAmount'] }, + 'looksupportsmonochrome' => { 523 => [\'Look','LookSupportsMonochrome'], 525 => [\'Look','LookSupportsMonochrome'] }, + 'looksupportsoutputreferred' => { 523 => [\'Look','LookSupportsOutputReferred'], 525 => [\'Look','LookSupportsOutputReferred'] }, + 'lookuuid' => { 523 => [\'Look','LookUUID'], 525 => [\'Look','LookUUID'] }, + 'loop' => { 552 => 'loop' }, + 'loopstyle' => { 416 => 'LOOP' }, 'lowestbiostratigraphiczone' => { 124 => [\'GeologicalContext','GeologicalContextLowestBiostratigraphicZone'] }, - 'luminanceadjustmentaqua' => { 521 => 'LuminanceAdjustmentAqua', 523 => 'LuminanceAdjustmentAqua' }, - 'luminanceadjustmentblue' => { 521 => 'LuminanceAdjustmentBlue', 523 => 'LuminanceAdjustmentBlue' }, - 'luminanceadjustmentgreen' => { 521 => 'LuminanceAdjustmentGreen', 523 => 'LuminanceAdjustmentGreen' }, - 'luminanceadjustmentmagenta' => { 521 => 'LuminanceAdjustmentMagenta', 523 => 'LuminanceAdjustmentMagenta' }, - 'luminanceadjustmentorange' => { 521 => 'LuminanceAdjustmentOrange', 523 => 'LuminanceAdjustmentOrange' }, - 'luminanceadjustmentpurple' => { 521 => 'LuminanceAdjustmentPurple', 523 => 'LuminanceAdjustmentPurple' }, - 'luminanceadjustmentred' => { 521 => 'LuminanceAdjustmentRed', 523 => 'LuminanceAdjustmentRed' }, - 'luminanceadjustmentyellow' => { 521 => 'LuminanceAdjustmentYellow', 523 => 'LuminanceAdjustmentYellow' }, + 'luminanceadjustmentaqua' => { 523 => 'LuminanceAdjustmentAqua', 525 => 'LuminanceAdjustmentAqua' }, + 'luminanceadjustmentblue' => { 523 => 'LuminanceAdjustmentBlue', 525 => 'LuminanceAdjustmentBlue' }, + 'luminanceadjustmentgreen' => { 523 => 'LuminanceAdjustmentGreen', 525 => 'LuminanceAdjustmentGreen' }, + 'luminanceadjustmentmagenta' => { 523 => 'LuminanceAdjustmentMagenta', 525 => 'LuminanceAdjustmentMagenta' }, + 'luminanceadjustmentorange' => { 523 => 'LuminanceAdjustmentOrange', 525 => 'LuminanceAdjustmentOrange' }, + 'luminanceadjustmentpurple' => { 523 => 'LuminanceAdjustmentPurple', 525 => 'LuminanceAdjustmentPurple' }, + 'luminanceadjustmentred' => { 523 => 'LuminanceAdjustmentRed', 525 => 'LuminanceAdjustmentRed' }, + 'luminanceadjustmentyellow' => { 523 => 'LuminanceAdjustmentYellow', 525 => 'LuminanceAdjustmentYellow' }, 'luminancecurvelimits' => { 114 => 0x150 }, 'luminancecurvepoints' => { 114 => 0x126 }, 'luminancenoiseamplitude' => { 1 => 0x1d }, - 'luminancenoisereduction' => { 109 => 0x20600, 115 => 0x5f, 432 => 0x1b }, - 'luminancenoisereductioncontrast' => { 521 => 'LuminanceNoiseReductionContrast', 523 => 'LuminanceNoiseReductionContrast' }, - 'luminancenoisereductiondetail' => { 521 => 'LuminanceNoiseReductionDetail', 523 => 'LuminanceNoiseReductionDetail' }, + 'luminancenoisereduction' => { 109 => 0x20600, 115 => 0x5f, 434 => 0x1b }, + 'luminancenoisereductioncontrast' => { 523 => 'LuminanceNoiseReductionContrast', 525 => 'LuminanceNoiseReductionContrast' }, + 'luminancenoisereductiondetail' => { 523 => 'LuminanceNoiseReductionDetail', 525 => 'LuminanceNoiseReductionDetail' }, 'luminancenr_tiff_jpeg' => { 115 => 0x6d }, - 'luminancesmoothing' => { 521 => 'LuminanceSmoothing', 523 => 'LuminanceSmoothing' }, + 'luminancesmoothing' => { 523 => 'LuminanceSmoothing', 525 => 'LuminanceSmoothing' }, 'lvshootingareadisplay' => { 90 => [0x40b,0x40c] }, - 'lyrics' => { 407 => "\xa9lyr", 415 => "\xa9lyr", 550 => 'lyrics' }, - 'lyricsuri' => { 415 => 'lrcu' }, + 'lyrics' => { 408 => "\xa9lyr", 416 => "\xa9lyr", 552 => 'lyrics' }, + 'lyricsuri' => { 416 => 'lrcu' }, 'm16cversion' => { 349 => 0x333 }, - 'macatom' => { 522 => 'macAtom' }, - 'macatomapplicationcode' => { 522 => [\'macAtom','macAtomApplicationCode'] }, - 'macatominvocationappleevent' => { 522 => [\'macAtom','macAtomInvocationAppleEvent'] }, - 'macatomposixprojectpath' => { 522 => [\'macAtom','macAtomPosixProjectPath'] }, + 'macatom' => { 524 => 'macAtom' }, + 'macatomapplicationcode' => { 524 => [\'macAtom','macAtomApplicationCode'] }, + 'macatominvocationappleevent' => { 524 => [\'macAtom','macAtomInvocationAppleEvent'] }, + 'macatomposixprojectpath' => { 524 => [\'macAtom','macAtomPosixProjectPath'] }, 'machineobservation' => { 124 => 'MachineObservation' }, 'machineobservationday' => { 124 => [\'MachineObservation','MachineObservationDay'] }, 'machineobservationearliestdate' => { 124 => [\'MachineObservation','MachineObservationEarliestDate'] }, @@ -4379,20 +4382,20 @@ my %tagLookup = ( 'machineobservationstartdayofyear' => { 124 => [\'MachineObservation','MachineObservationStartDayOfYear'] }, 'machineobservationverbatimeventdate' => { 124 => [\'MachineObservation','MachineObservationVerbatimEventDate'] }, 'machineobservationyear' => { 124 => [\'MachineObservation','MachineObservationYear'] }, - 'macro' => { 133 => 0x1020, 135 => 0x202, 158 => 0x2b, 335 => 0x202, 421 => 0x21, 431 => 0x202, 456 => 0xb040 }, + 'macro' => { 133 => 0x1020, 135 => 0x202, 158 => 0x2b, 335 => 0x202, 423 => 0x21, 433 => 0x202, 458 => 0xb040 }, 'macroled' => { 333 => 0x120a }, 'macromagnification' => { 7 => 0x1b, 11 => 0x1b, 14 => 0x1b, 15 => 0x1b, 19 => 0x1b, 20 => 0x1b, 61 => 0x10 }, - 'macromode' => { 37 => 0x1, 188 => 0xb, 330 => 0x300, 354 => 0x1c, 422 => 0x1009 }, + 'macromode' => { 37 => 0x1, 188 => 0xb, 330 => 0x300, 354 => 0x1c, 424 => 0x1009 }, 'magentahsl' => { 109 => 0x20917 }, 'magicfilter' => { 330 => 0x52c }, 'magnifiedview' => { 92 => 0x11, 94 => 0x9 }, 'mainboardversion' => { 145 => 0x438 }, 'maindialexposurecomp' => { 320 => '0.6' }, - 'mainingredient' => { 542 => 'mainIngredient' }, - 'majorbrand' => { 409 => 'major_brand' }, - 'majorversion' => { 511 => 'MajorVersion' }, - 'make' => { 104 => 0x0, 121 => 0x1, 125 => 0x10f, 163 => 'Make', 343 => 'Make', 359 => 0x10f, 409 => 'make', 415 => ['@mak',"\xa9mak"], 539 => 'make', 546 => 'Make' }, - 'makernote' => { 527 => 'MakerNote' }, + 'mainingredient' => { 544 => 'mainIngredient' }, + 'majorbrand' => { 410 => 'major_brand' }, + 'majorversion' => { 513 => 'MajorVersion' }, + 'make' => { 104 => 0x0, 121 => 0x1, 125 => 0x10f, 163 => 'Make', 343 => 'Make', 359 => 0x10f, 410 => 'make', 416 => ['@mak',"\xa9mak"], 541 => 'make', 548 => 'Make' }, + 'makernote' => { 529 => 'MakerNote' }, 'makernoteapple' => { 123 => 'MakN', 125 => 0x927c }, 'makernotecanon' => { 87 => 'CMT3', 123 => 'MakN', 125 => 0x927c }, 'makernotecasio' => { 123 => 'MakN', 125 => 0x927c }, @@ -4447,7 +4450,7 @@ my %tagLookup = ( 'makernotenikon2' => { 123 => 'MakN', 125 => 0x927c }, 'makernotenikon3' => { 123 => 'MakN', 125 => 0x927c }, 'makernotenintendo' => { 123 => 'MakN', 125 => 0x927c }, - 'makernoteoffset' => { 431 => 0xff }, + 'makernoteoffset' => { 433 => 0xff }, 'makernoteolympus' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteolympus2' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteolympus3' => { 123 => 'MakN', 125 => 0x927c }, @@ -4460,7 +4463,7 @@ my %tagLookup = ( 'makernotepentax4' => { 123 => 'MakN', 125 => 0x927c }, 'makernotepentax5' => { 123 => 'MakN', 125 => 0x927c }, 'makernotepentax6' => { 123 => 'MakN', 125 => 0x927c }, - 'makernotepentaxunknown' => { 415 => 'PXMN' }, + 'makernotepentaxunknown' => { 416 => 'PXMN' }, 'makernotephaseone' => { 123 => 'MakN', 125 => 0x927c }, 'makernotereconyx' => { 123 => 'MakN', 125 => 0x927c }, 'makernotereconyx2' => { 123 => 'MakN', 125 => 0x927c }, @@ -4484,248 +4487,248 @@ my %tagLookup = ( 'makernotesony5' => { 123 => 'MakN', 125 => 0x927c }, 'makernotesonyericsson' => { 123 => 'MakN', 125 => 0x927c }, 'makernotesonysrf' => { 123 => 'MakN', 125 => 0x927c }, - 'makernotetype' => { 422 => 0x1 }, + 'makernotetype' => { 424 => 0x1 }, 'makernoteunknown' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteunknownbinary' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteunknowntext' => { 123 => 'MakN', 125 => 0x927c }, - 'makernoteversion' => { 1 => 0x1, 193 => 0x0, 243 => 0x1, 335 => 0x0, 354 => 0x8000, 426 => 0x0, 429 => 0x1, 432 => [0x1d,0x1f], 445 => 0x2000 }, - 'makerurl' => { 415 => "\xa9mal" }, - 'managedfrom' => { 551 => 'ManagedFrom' }, - 'managedfromalternatepaths' => { 551 => [\'ManagedFrom','ManagedFromAlternatePaths'] }, - 'managedfromdocumentid' => { 551 => [\'ManagedFrom','ManagedFromDocumentID'] }, - 'managedfromfilepath' => { 551 => [\'ManagedFrom','ManagedFromFilePath'] }, - 'managedfromfrompart' => { 551 => [\'ManagedFrom','ManagedFromFromPart'] }, - 'managedfrominstanceid' => { 551 => [\'ManagedFrom','ManagedFromInstanceID'] }, - 'managedfromlastmodifydate' => { 551 => [\'ManagedFrom','ManagedFromLastModifyDate'] }, - 'managedfromlasturl' => { 551 => [\'ManagedFrom','ManagedFromLastURL'] }, - 'managedfromlinkcategory' => { 551 => [\'ManagedFrom','ManagedFromLinkCategory'] }, - 'managedfromlinkform' => { 551 => [\'ManagedFrom','ManagedFromLinkForm'] }, - 'managedfrommanager' => { 551 => [\'ManagedFrom','ManagedFromManager'] }, - 'managedfrommanagervariant' => { 551 => [\'ManagedFrom','ManagedFromManagerVariant'] }, - 'managedfrommanageto' => { 551 => [\'ManagedFrom','ManagedFromManageTo'] }, - 'managedfrommanageui' => { 551 => [\'ManagedFrom','ManagedFromManageUI'] }, - 'managedfrommaskmarkers' => { 551 => [\'ManagedFrom','ManagedFromMaskMarkers'] }, - 'managedfromoriginaldocumentid' => { 551 => [\'ManagedFrom','ManagedFromOriginalDocumentID'] }, - 'managedfrompartmapping' => { 551 => [\'ManagedFrom','ManagedFromPartMapping'] }, - 'managedfromplacedresolutionunit' => { 551 => [\'ManagedFrom','ManagedFromPlacedResolutionUnit'] }, - 'managedfromplacedxresolution' => { 551 => [\'ManagedFrom','ManagedFromPlacedXResolution'] }, - 'managedfromplacedyresolution' => { 551 => [\'ManagedFrom','ManagedFromPlacedYResolution'] }, - 'managedfromrenditionclass' => { 551 => [\'ManagedFrom','ManagedFromRenditionClass'] }, - 'managedfromrenditionparams' => { 551 => [\'ManagedFrom','ManagedFromRenditionParams'] }, - 'managedfromtopart' => { 551 => [\'ManagedFrom','ManagedFromToPart'] }, - 'managedfromversionid' => { 551 => [\'ManagedFrom','ManagedFromVersionID'] }, - 'manager' => { 551 => 'Manager' }, - 'managervariant' => { 551 => 'ManagerVariant' }, - 'manageto' => { 551 => 'ManageTo' }, - 'manageui' => { 551 => 'ManageUI' }, - 'manifest' => { 551 => 'Manifest' }, - 'manifestlinkform' => { 551 => [\'Manifest','ManifestLinkForm'] }, - 'manifestplacedresolutionunit' => { 551 => [\'Manifest','ManifestPlacedResolutionUnit'] }, - 'manifestplacedxresolution' => { 551 => [\'Manifest','ManifestPlacedXResolution'] }, - 'manifestplacedyresolution' => { 551 => [\'Manifest','ManifestPlacedYResolution'] }, - 'manifestreference' => { 551 => [\'Manifest','ManifestReference'] }, - 'manifestreferencealternatepaths' => { 551 => [\'Manifest','ManifestReferenceAlternatePaths'] }, - 'manifestreferencedocumentid' => { 551 => [\'Manifest','ManifestReferenceDocumentID'] }, - 'manifestreferencefilepath' => { 551 => [\'Manifest','ManifestReferenceFilePath'] }, - 'manifestreferencefrompart' => { 551 => [\'Manifest','ManifestReferenceFromPart'] }, - 'manifestreferenceinstanceid' => { 551 => [\'Manifest','ManifestReferenceInstanceID'] }, - 'manifestreferencelastmodifydate' => { 551 => [\'Manifest','ManifestReferenceLastModifyDate'] }, - 'manifestreferencelasturl' => { 551 => [\'Manifest','ManifestReferenceLastURL'] }, - 'manifestreferencelinkcategory' => { 551 => [\'Manifest','ManifestReferenceLinkCategory'] }, - 'manifestreferencelinkform' => { 551 => [\'Manifest','ManifestReferenceLinkForm'] }, - 'manifestreferencemanager' => { 551 => [\'Manifest','ManifestReferenceManager'] }, - 'manifestreferencemanagervariant' => { 551 => [\'Manifest','ManifestReferenceManagerVariant'] }, - 'manifestreferencemanageto' => { 551 => [\'Manifest','ManifestReferenceManageTo'] }, - 'manifestreferencemanageui' => { 551 => [\'Manifest','ManifestReferenceManageUI'] }, - 'manifestreferencemaskmarkers' => { 551 => [\'Manifest','ManifestReferenceMaskMarkers'] }, - 'manifestreferenceoriginaldocumentid' => { 551 => [\'Manifest','ManifestReferenceOriginalDocumentID'] }, - 'manifestreferencepartmapping' => { 551 => [\'Manifest','ManifestReferencePartMapping'] }, - 'manifestreferenceplacedresolutionunit' => { 551 => [\'Manifest','ManifestReferencePlacedResolutionUnit'] }, - 'manifestreferenceplacedxresolution' => { 551 => [\'Manifest','ManifestReferencePlacedXResolution'] }, - 'manifestreferenceplacedyresolution' => { 551 => [\'Manifest','ManifestReferencePlacedYResolution'] }, - 'manifestreferencerenditionclass' => { 551 => [\'Manifest','ManifestReferenceRenditionClass'] }, - 'manifestreferencerenditionparams' => { 551 => [\'Manifest','ManifestReferenceRenditionParams'] }, - 'manifestreferencetopart' => { 551 => [\'Manifest','ManifestReferenceToPart'] }, - 'manifestreferenceversionid' => { 551 => [\'Manifest','ManifestReferenceVersionID'] }, + 'makernoteversion' => { 1 => 0x1, 193 => 0x0, 243 => 0x1, 335 => 0x0, 354 => 0x8000, 428 => 0x0, 431 => 0x1, 434 => [0x1d,0x1f], 447 => 0x2000 }, + 'makerurl' => { 416 => "\xa9mal" }, + 'managedfrom' => { 553 => 'ManagedFrom' }, + 'managedfromalternatepaths' => { 553 => [\'ManagedFrom','ManagedFromAlternatePaths'] }, + 'managedfromdocumentid' => { 553 => [\'ManagedFrom','ManagedFromDocumentID'] }, + 'managedfromfilepath' => { 553 => [\'ManagedFrom','ManagedFromFilePath'] }, + 'managedfromfrompart' => { 553 => [\'ManagedFrom','ManagedFromFromPart'] }, + 'managedfrominstanceid' => { 553 => [\'ManagedFrom','ManagedFromInstanceID'] }, + 'managedfromlastmodifydate' => { 553 => [\'ManagedFrom','ManagedFromLastModifyDate'] }, + 'managedfromlasturl' => { 553 => [\'ManagedFrom','ManagedFromLastURL'] }, + 'managedfromlinkcategory' => { 553 => [\'ManagedFrom','ManagedFromLinkCategory'] }, + 'managedfromlinkform' => { 553 => [\'ManagedFrom','ManagedFromLinkForm'] }, + 'managedfrommanager' => { 553 => [\'ManagedFrom','ManagedFromManager'] }, + 'managedfrommanagervariant' => { 553 => [\'ManagedFrom','ManagedFromManagerVariant'] }, + 'managedfrommanageto' => { 553 => [\'ManagedFrom','ManagedFromManageTo'] }, + 'managedfrommanageui' => { 553 => [\'ManagedFrom','ManagedFromManageUI'] }, + 'managedfrommaskmarkers' => { 553 => [\'ManagedFrom','ManagedFromMaskMarkers'] }, + 'managedfromoriginaldocumentid' => { 553 => [\'ManagedFrom','ManagedFromOriginalDocumentID'] }, + 'managedfrompartmapping' => { 553 => [\'ManagedFrom','ManagedFromPartMapping'] }, + 'managedfromplacedresolutionunit' => { 553 => [\'ManagedFrom','ManagedFromPlacedResolutionUnit'] }, + 'managedfromplacedxresolution' => { 553 => [\'ManagedFrom','ManagedFromPlacedXResolution'] }, + 'managedfromplacedyresolution' => { 553 => [\'ManagedFrom','ManagedFromPlacedYResolution'] }, + 'managedfromrenditionclass' => { 553 => [\'ManagedFrom','ManagedFromRenditionClass'] }, + 'managedfromrenditionparams' => { 553 => [\'ManagedFrom','ManagedFromRenditionParams'] }, + 'managedfromtopart' => { 553 => [\'ManagedFrom','ManagedFromToPart'] }, + 'managedfromversionid' => { 553 => [\'ManagedFrom','ManagedFromVersionID'] }, + 'manager' => { 553 => 'Manager' }, + 'managervariant' => { 553 => 'ManagerVariant' }, + 'manageto' => { 553 => 'ManageTo' }, + 'manageui' => { 553 => 'ManageUI' }, + 'manifest' => { 553 => 'Manifest' }, + 'manifestlinkform' => { 553 => [\'Manifest','ManifestLinkForm'] }, + 'manifestplacedresolutionunit' => { 553 => [\'Manifest','ManifestPlacedResolutionUnit'] }, + 'manifestplacedxresolution' => { 553 => [\'Manifest','ManifestPlacedXResolution'] }, + 'manifestplacedyresolution' => { 553 => [\'Manifest','ManifestPlacedYResolution'] }, + 'manifestreference' => { 553 => [\'Manifest','ManifestReference'] }, + 'manifestreferencealternatepaths' => { 553 => [\'Manifest','ManifestReferenceAlternatePaths'] }, + 'manifestreferencedocumentid' => { 553 => [\'Manifest','ManifestReferenceDocumentID'] }, + 'manifestreferencefilepath' => { 553 => [\'Manifest','ManifestReferenceFilePath'] }, + 'manifestreferencefrompart' => { 553 => [\'Manifest','ManifestReferenceFromPart'] }, + 'manifestreferenceinstanceid' => { 553 => [\'Manifest','ManifestReferenceInstanceID'] }, + 'manifestreferencelastmodifydate' => { 553 => [\'Manifest','ManifestReferenceLastModifyDate'] }, + 'manifestreferencelasturl' => { 553 => [\'Manifest','ManifestReferenceLastURL'] }, + 'manifestreferencelinkcategory' => { 553 => [\'Manifest','ManifestReferenceLinkCategory'] }, + 'manifestreferencelinkform' => { 553 => [\'Manifest','ManifestReferenceLinkForm'] }, + 'manifestreferencemanager' => { 553 => [\'Manifest','ManifestReferenceManager'] }, + 'manifestreferencemanagervariant' => { 553 => [\'Manifest','ManifestReferenceManagerVariant'] }, + 'manifestreferencemanageto' => { 553 => [\'Manifest','ManifestReferenceManageTo'] }, + 'manifestreferencemanageui' => { 553 => [\'Manifest','ManifestReferenceManageUI'] }, + 'manifestreferencemaskmarkers' => { 553 => [\'Manifest','ManifestReferenceMaskMarkers'] }, + 'manifestreferenceoriginaldocumentid' => { 553 => [\'Manifest','ManifestReferenceOriginalDocumentID'] }, + 'manifestreferencepartmapping' => { 553 => [\'Manifest','ManifestReferencePartMapping'] }, + 'manifestreferenceplacedresolutionunit' => { 553 => [\'Manifest','ManifestReferencePlacedResolutionUnit'] }, + 'manifestreferenceplacedxresolution' => { 553 => [\'Manifest','ManifestReferencePlacedXResolution'] }, + 'manifestreferenceplacedyresolution' => { 553 => [\'Manifest','ManifestReferencePlacedYResolution'] }, + 'manifestreferencerenditionclass' => { 553 => [\'Manifest','ManifestReferenceRenditionClass'] }, + 'manifestreferencerenditionparams' => { 553 => [\'Manifest','ManifestReferenceRenditionParams'] }, + 'manifestreferencetopart' => { 553 => [\'Manifest','ManifestReferenceToPart'] }, + 'manifestreferenceversionid' => { 553 => [\'Manifest','ManifestReferenceVersionID'] }, 'manometerpressure' => { 330 => 0x900, 354 => 0x86 }, 'manometerreading' => { 330 => 0x901 }, 'manualafpointselectpattern' => { 90 => 0x513 }, 'manualafpointselpattern' => { 2 => 0xf }, 'manualflash' => { 333 => 0x1209 }, - 'manualflashoutput' => { 37 => 0x29, 311 => '8.2', 314 => '22.2', 315 => '23.1', 316 => '23.2', 318 => '16.2', 319 => '23.2', 320 => '8.2', 321 => '23.2', 324 => '24.2', 422 => 0x100c }, + 'manualflashoutput' => { 37 => 0x29, 311 => '8.2', 314 => '22.2', 315 => '23.1', 316 => '23.2', 318 => '16.2', 319 => '23.2', 320 => '8.2', 321 => '23.2', 324 => '24.2', 424 => 0x100c }, 'manualflashstrength' => { 330 => 0x406 }, - 'manualfocusdistance' => { 243 => 0x85, 335 => 0x100c, 431 => 0x223 }, + 'manualfocusdistance' => { 243 => 0x85, 335 => 0x100c, 433 => 0x223 }, 'manualfocuspointillumination' => { 325 => 0x17, 326 => 0x17, 327 => 0x17, 328 => 0x17 }, 'manualfocusringinafmode' => { 325 => 0x1b, 326 => 0x1a, 327 => 0x1a, 328 => 0x1a }, 'manualtv' => { 89 => 0x5, 90 => 0x705 }, 'manufacturedate' => { 198 => 0x6705, 369 => 0x1 }, - 'manufacturedate1' => { 424 => 0x4 }, - 'manufacturedate2' => { 424 => 0x5 }, - 'manufacturer' => { 504 => 'Manufacturer', 539 => 'manufacturer' }, + 'manufacturedate1' => { 426 => 0x4 }, + 'manufacturedate2' => { 426 => 0x5 }, + 'manufacturer' => { 506 => 'Manufacturer', 541 => 'manufacturer' }, 'mariahchromablursize' => { 145 => 0xf0d }, 'mariahmaphithreshold' => { 145 => 0xf0c }, 'mariahmaplothreshold' => { 145 => 0xf0b }, 'mariahsigmathreshold' => { 145 => 0xf0e }, 'mariahtexturethreshold' => { 145 => 0xf0a }, - 'marked' => { 537 => 'Marked', 554 => 'Marked' }, - 'markers' => { 550 => 'markers' }, - 'markerscomment' => { 550 => [\'markers','markersComment'] }, - 'markerscuepointparams' => { 550 => [\'markers','markersCuePointParams'] }, - 'markerscuepointparamskey' => { 550 => [\'markers','markersCuePointParamsKey'] }, - 'markerscuepointparamsvalue' => { 550 => [\'markers','markersCuePointParamsValue'] }, - 'markerscuepointtype' => { 550 => [\'markers','markersCuePointType'] }, - 'markersduration' => { 550 => [\'markers','markersDuration'] }, - 'markerslocation' => { 550 => [\'markers','markersLocation'] }, - 'markersname' => { 550 => [\'markers','markersName'] }, - 'markersprobability' => { 550 => [\'markers','markersProbability'] }, - 'markersspeaker' => { 550 => [\'markers','markersSpeaker'] }, - 'markersstarttime' => { 550 => [\'markers','markersStartTime'] }, - 'markerstarget' => { 550 => [\'markers','markersTarget'] }, - 'markerstype' => { 550 => [\'markers','markersType'] }, + 'marked' => { 539 => 'Marked', 556 => 'Marked' }, + 'markers' => { 552 => 'markers' }, + 'markerscomment' => { 552 => [\'markers','markersComment'] }, + 'markerscuepointparams' => { 552 => [\'markers','markersCuePointParams'] }, + 'markerscuepointparamskey' => { 552 => [\'markers','markersCuePointParamsKey'] }, + 'markerscuepointparamsvalue' => { 552 => [\'markers','markersCuePointParamsValue'] }, + 'markerscuepointtype' => { 552 => [\'markers','markersCuePointType'] }, + 'markersduration' => { 552 => [\'markers','markersDuration'] }, + 'markerslocation' => { 552 => [\'markers','markersLocation'] }, + 'markersname' => { 552 => [\'markers','markersName'] }, + 'markersprobability' => { 552 => [\'markers','markersProbability'] }, + 'markersspeaker' => { 552 => [\'markers','markersSpeaker'] }, + 'markersstarttime' => { 552 => [\'markers','markersStartTime'] }, + 'markerstarget' => { 552 => [\'markers','markersTarget'] }, + 'markerstype' => { 552 => [\'markers','markersType'] }, 'maskedareas' => { 125 => 0xc68e }, - 'maskgroupbasedcorractive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'] }, - 'maskgroupbasedcorramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'] }, - 'maskgroupbasedcorrblacks2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'] }, - 'maskgroupbasedcorrbrightness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'] }, - 'maskgroupbasedcorrclarity' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'] }, - 'maskgroupbasedcorrclarity2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'] }, - 'maskgroupbasedcorrcontrast' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'] }, - 'maskgroupbasedcorrcontrast2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'] }, - 'maskgroupbasedcorrcorrectionname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'] }, - 'maskgroupbasedcorrcorrectionsyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'] }, - 'maskgroupbasedcorrdefringe' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'] }, - 'maskgroupbasedcorrdehaze' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'] }, - 'maskgroupbasedcorrections' => { 521 => 'MaskGroupBasedCorrections', 523 => 'MaskGroupBasedCorrections' }, - 'maskgroupbasedcorrexposure' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'] }, - 'maskgroupbasedcorrexposure2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'] }, - 'maskgroupbasedcorrhighlights2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'] }, - 'maskgroupbasedcorrhue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'] }, - 'maskgroupbasedcorrluminancenoise' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'] }, - 'maskgroupbasedcorrmask' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'] }, - 'maskgroupbasedcorrmaskalpha' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'] }, - 'maskgroupbasedcorrmaskangle' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'] }, - 'maskgroupbasedcorrmaskbottom' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'] }, - 'maskgroupbasedcorrmaskcentervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'] }, - 'maskgroupbasedcorrmaskcenterweight' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'maskgroupbasedcorrmaskdabs' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'] }, - 'maskgroupbasedcorrmaskfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'] }, - 'maskgroupbasedcorrmaskflipped' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'] }, - 'maskgroupbasedcorrmaskflow' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'] }, - 'maskgroupbasedcorrmaskfullx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'] }, - 'maskgroupbasedcorrmaskfully' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'] }, - 'maskgroupbasedcorrmaskinputdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'] }, - 'maskgroupbasedcorrmaskleft' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'] }, - 'maskgroupbasedcorrmaskmaskactive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'] }, - 'maskgroupbasedcorrmaskmaskblendmode' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'maskgroupbasedcorrmaskmaskdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'maskgroupbasedcorrmaskmaskinverted' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'maskgroupbasedcorrmaskmaskname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'] }, - 'maskgroupbasedcorrmaskmasks' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'] }, - 'maskgroupbasedcorrmaskmasksalpha' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'maskgroupbasedcorrmaskmasksangle' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'maskgroupbasedcorrmaskmasksbottom' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'maskgroupbasedcorrmaskmaskscentervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'maskgroupbasedcorrmaskmaskscenterweight' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'maskgroupbasedcorrmaskmasksdabs' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'maskgroupbasedcorrmaskmasksfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'maskgroupbasedcorrmaskmasksflipped' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'maskgroupbasedcorrmaskmasksflow' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'maskgroupbasedcorrmaskmasksfullx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'maskgroupbasedcorrmaskmasksfully' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'maskgroupbasedcorrmaskmasksinputdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'maskgroupbasedcorrmaskmasksleft' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'maskgroupbasedcorrmaskmasksmaskactive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'maskgroupbasedcorrmaskmasksmaskblendmode' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'maskgroupbasedcorrmaskmasksmaskdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'maskgroupbasedcorrmaskmasksmaskinverted' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'maskgroupbasedcorrmaskmasksmaskname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'maskgroupbasedcorrmaskmasksmasksubtype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'maskgroupbasedcorrmaskmasksmasksyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'maskgroupbasedcorrmaskmasksmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'maskgroupbasedcorrmaskmasksmidpoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'maskgroupbasedcorrmaskmasksorigin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'maskgroupbasedcorrmaskmasksperimetervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'maskgroupbasedcorrmaskmasksradius' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'maskgroupbasedcorrmaskmasksreferencepoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'maskgroupbasedcorrmaskmasksright' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'] }, - 'maskgroupbasedcorrmaskmasksroundness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'maskgroupbasedcorrmaskmaskssizex' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'maskgroupbasedcorrmaskmaskssizey' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'maskgroupbasedcorrmaskmaskstop' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'] }, - 'maskgroupbasedcorrmaskmasksubtype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'maskgroupbasedcorrmaskmasksvalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'maskgroupbasedcorrmaskmasksversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'maskgroupbasedcorrmaskmaskswhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'maskgroupbasedcorrmaskmaskswholeimagearea' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'maskgroupbasedcorrmaskmasksx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'] }, - 'maskgroupbasedcorrmaskmasksy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'] }, - 'maskgroupbasedcorrmaskmasksyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'maskgroupbasedcorrmaskmaskszerox' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'maskgroupbasedcorrmaskmaskszeroy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'maskgroupbasedcorrmaskmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'maskgroupbasedcorrmaskmidpoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'] }, - 'maskgroupbasedcorrmaskorigin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'] }, - 'maskgroupbasedcorrmaskperimetervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'maskgroupbasedcorrmaskradius' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'] }, - 'maskgroupbasedcorrmaskrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'maskgroupbasedcorrmaskrangeareamodels' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'maskgroupbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'maskgroupbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'maskgroupbasedcorrmaskrangecoloramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'maskgroupbasedcorrmaskrangedepthfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'maskgroupbasedcorrmaskrangedepthmax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'maskgroupbasedcorrmaskrangedepthmin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'maskgroupbasedcorrmaskrangeinvert' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'maskgroupbasedcorrmaskrangelumfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'maskgroupbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'maskgroupbasedcorrmaskrangelummax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'maskgroupbasedcorrmaskrangelummin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'maskgroupbasedcorrmaskrangelumrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'maskgroupbasedcorrmaskrangesampletype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'maskgroupbasedcorrmaskrangetype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'maskgroupbasedcorrmaskrangeversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'maskgroupbasedcorrmaskreferencepoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'maskgroupbasedcorrmaskright' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'] }, - 'maskgroupbasedcorrmaskroundness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'] }, - 'maskgroupbasedcorrmasksizex' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'] }, - 'maskgroupbasedcorrmasksizey' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'] }, - 'maskgroupbasedcorrmasktop' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'] }, - 'maskgroupbasedcorrmaskvalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'] }, - 'maskgroupbasedcorrmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'] }, - 'maskgroupbasedcorrmaskwhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'] }, - 'maskgroupbasedcorrmaskwholeimagearea' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'maskgroupbasedcorrmaskx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'] }, - 'maskgroupbasedcorrmasky' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'] }, - 'maskgroupbasedcorrmaskzerox' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'] }, - 'maskgroupbasedcorrmaskzeroy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'] }, - 'maskgroupbasedcorrmoire' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'] }, - 'maskgroupbasedcorrrangemask' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'] }, - 'maskgroupbasedcorrrangemaskareamodels' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'maskgroupbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'maskgroupbasedcorrrangemaskareamodelscomponents' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'maskgroupbasedcorrrangemaskcoloramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'maskgroupbasedcorrrangemaskdepthfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'maskgroupbasedcorrrangemaskdepthmax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'maskgroupbasedcorrrangemaskdepthmin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'maskgroupbasedcorrrangemaskinvert' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'maskgroupbasedcorrrangemasklumfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'maskgroupbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'maskgroupbasedcorrrangemasklummax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'maskgroupbasedcorrrangemasklummin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'maskgroupbasedcorrrangemasklumrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'maskgroupbasedcorrrangemasksampletype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'maskgroupbasedcorrrangemasktype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'] }, - 'maskgroupbasedcorrrangemaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'maskgroupbasedcorrsaturation' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'] }, - 'maskgroupbasedcorrshadows2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'] }, - 'maskgroupbasedcorrsharpness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'] }, - 'maskgroupbasedcorrtemperature' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'] }, - 'maskgroupbasedcorrtexture' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'] }, - 'maskgroupbasedcorrtint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'] }, - 'maskgroupbasedcorrtoninghue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'] }, - 'maskgroupbasedcorrtoningsaturation' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'] }, - 'maskgroupbasedcorrwhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'] }, - 'maskgroupbasedcorrwhites2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'] }, + 'maskgroupbasedcorractive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'] }, + 'maskgroupbasedcorramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'] }, + 'maskgroupbasedcorrblacks2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'] }, + 'maskgroupbasedcorrbrightness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'] }, + 'maskgroupbasedcorrclarity' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'] }, + 'maskgroupbasedcorrclarity2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'] }, + 'maskgroupbasedcorrcontrast' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'] }, + 'maskgroupbasedcorrcontrast2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'] }, + 'maskgroupbasedcorrcorrectionname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'] }, + 'maskgroupbasedcorrcorrectionsyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'] }, + 'maskgroupbasedcorrdefringe' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'] }, + 'maskgroupbasedcorrdehaze' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'] }, + 'maskgroupbasedcorrections' => { 523 => 'MaskGroupBasedCorrections', 525 => 'MaskGroupBasedCorrections' }, + 'maskgroupbasedcorrexposure' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'] }, + 'maskgroupbasedcorrexposure2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'] }, + 'maskgroupbasedcorrhighlights2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'] }, + 'maskgroupbasedcorrhue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'] }, + 'maskgroupbasedcorrluminancenoise' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'] }, + 'maskgroupbasedcorrmask' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'] }, + 'maskgroupbasedcorrmaskalpha' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'] }, + 'maskgroupbasedcorrmaskangle' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'] }, + 'maskgroupbasedcorrmaskbottom' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'] }, + 'maskgroupbasedcorrmaskcentervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'] }, + 'maskgroupbasedcorrmaskcenterweight' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'maskgroupbasedcorrmaskdabs' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'] }, + 'maskgroupbasedcorrmaskfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'] }, + 'maskgroupbasedcorrmaskflipped' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'] }, + 'maskgroupbasedcorrmaskflow' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'] }, + 'maskgroupbasedcorrmaskfullx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'] }, + 'maskgroupbasedcorrmaskfully' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'] }, + 'maskgroupbasedcorrmaskinputdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'] }, + 'maskgroupbasedcorrmaskleft' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'] }, + 'maskgroupbasedcorrmaskmaskactive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'] }, + 'maskgroupbasedcorrmaskmaskblendmode' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'maskgroupbasedcorrmaskmaskdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'maskgroupbasedcorrmaskmaskinverted' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'maskgroupbasedcorrmaskmaskname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'] }, + 'maskgroupbasedcorrmaskmasks' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'] }, + 'maskgroupbasedcorrmaskmasksalpha' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'maskgroupbasedcorrmaskmasksangle' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'maskgroupbasedcorrmaskmasksbottom' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'maskgroupbasedcorrmaskmaskscentervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'maskgroupbasedcorrmaskmaskscenterweight' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'maskgroupbasedcorrmaskmasksdabs' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'maskgroupbasedcorrmaskmasksfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'maskgroupbasedcorrmaskmasksflipped' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'maskgroupbasedcorrmaskmasksflow' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'maskgroupbasedcorrmaskmasksfullx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'maskgroupbasedcorrmaskmasksfully' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'maskgroupbasedcorrmaskmasksinputdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'maskgroupbasedcorrmaskmasksleft' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'maskgroupbasedcorrmaskmasksmaskactive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'maskgroupbasedcorrmaskmasksmaskblendmode' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'maskgroupbasedcorrmaskmasksmaskdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'maskgroupbasedcorrmaskmasksmaskinverted' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'maskgroupbasedcorrmaskmasksmaskname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'maskgroupbasedcorrmaskmasksmasksubtype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'maskgroupbasedcorrmaskmasksmasksyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'maskgroupbasedcorrmaskmasksmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'maskgroupbasedcorrmaskmasksmidpoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'maskgroupbasedcorrmaskmasksorigin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'maskgroupbasedcorrmaskmasksperimetervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'maskgroupbasedcorrmaskmasksradius' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'maskgroupbasedcorrmaskmasksreferencepoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'maskgroupbasedcorrmaskmasksright' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'] }, + 'maskgroupbasedcorrmaskmasksroundness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'maskgroupbasedcorrmaskmaskssizex' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'maskgroupbasedcorrmaskmaskssizey' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'maskgroupbasedcorrmaskmaskstop' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'] }, + 'maskgroupbasedcorrmaskmasksubtype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'maskgroupbasedcorrmaskmasksvalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'maskgroupbasedcorrmaskmasksversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'maskgroupbasedcorrmaskmaskswhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'maskgroupbasedcorrmaskmaskswholeimagearea' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'maskgroupbasedcorrmaskmasksx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'] }, + 'maskgroupbasedcorrmaskmasksy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'] }, + 'maskgroupbasedcorrmaskmasksyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'maskgroupbasedcorrmaskmaskszerox' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'maskgroupbasedcorrmaskmaskszeroy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'maskgroupbasedcorrmaskmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'maskgroupbasedcorrmaskmidpoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'] }, + 'maskgroupbasedcorrmaskorigin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'] }, + 'maskgroupbasedcorrmaskperimetervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'maskgroupbasedcorrmaskradius' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'] }, + 'maskgroupbasedcorrmaskrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'maskgroupbasedcorrmaskrangeareamodels' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'maskgroupbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'maskgroupbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'maskgroupbasedcorrmaskrangecoloramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'maskgroupbasedcorrmaskrangedepthfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'maskgroupbasedcorrmaskrangedepthmax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'maskgroupbasedcorrmaskrangedepthmin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'maskgroupbasedcorrmaskrangeinvert' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'maskgroupbasedcorrmaskrangelumfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'maskgroupbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'maskgroupbasedcorrmaskrangelummax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'maskgroupbasedcorrmaskrangelummin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'maskgroupbasedcorrmaskrangelumrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'maskgroupbasedcorrmaskrangesampletype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'maskgroupbasedcorrmaskrangetype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'maskgroupbasedcorrmaskrangeversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'maskgroupbasedcorrmaskreferencepoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'maskgroupbasedcorrmaskright' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'] }, + 'maskgroupbasedcorrmaskroundness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'] }, + 'maskgroupbasedcorrmasksizex' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'] }, + 'maskgroupbasedcorrmasksizey' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'] }, + 'maskgroupbasedcorrmasktop' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'] }, + 'maskgroupbasedcorrmaskvalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'] }, + 'maskgroupbasedcorrmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'] }, + 'maskgroupbasedcorrmaskwhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'] }, + 'maskgroupbasedcorrmaskwholeimagearea' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'maskgroupbasedcorrmaskx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'] }, + 'maskgroupbasedcorrmasky' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'] }, + 'maskgroupbasedcorrmaskzerox' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'] }, + 'maskgroupbasedcorrmaskzeroy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'] }, + 'maskgroupbasedcorrmoire' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'] }, + 'maskgroupbasedcorrrangemask' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'] }, + 'maskgroupbasedcorrrangemaskareamodels' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'maskgroupbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'maskgroupbasedcorrrangemaskareamodelscomponents' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'maskgroupbasedcorrrangemaskcoloramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'maskgroupbasedcorrrangemaskdepthfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'maskgroupbasedcorrrangemaskdepthmax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'maskgroupbasedcorrrangemaskdepthmin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'maskgroupbasedcorrrangemaskinvert' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'maskgroupbasedcorrrangemasklumfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'maskgroupbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'maskgroupbasedcorrrangemasklummax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'maskgroupbasedcorrrangemasklummin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'maskgroupbasedcorrrangemasklumrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'maskgroupbasedcorrrangemasksampletype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'maskgroupbasedcorrrangemasktype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'] }, + 'maskgroupbasedcorrrangemaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'maskgroupbasedcorrsaturation' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'] }, + 'maskgroupbasedcorrshadows2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'] }, + 'maskgroupbasedcorrsharpness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'] }, + 'maskgroupbasedcorrtemperature' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'] }, + 'maskgroupbasedcorrtexture' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'] }, + 'maskgroupbasedcorrtint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'] }, + 'maskgroupbasedcorrtoninghue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'] }, + 'maskgroupbasedcorrtoningsaturation' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'] }, + 'maskgroupbasedcorrwhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'] }, + 'maskgroupbasedcorrwhites2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'] }, 'masterdocumentid' => { 138 => 0xb9 }, 'mastergain' => { 268 => 0x50 }, 'materialsample' => { 124 => 'MaterialSample' }, @@ -4735,25 +4738,25 @@ my %tagLookup = ( 'matrixselectthreshold' => { 145 => 0x91a }, 'matrixselectthreshold1' => { 145 => 0x91e }, 'matrixselectthreshold2' => { 145 => 0x91f }, - 'matrixstructure' => { 414 => 0xa }, + 'matrixstructure' => { 415 => 0xa }, 'maxaperture' => { 37 => 0x1a, 145 => 0x3f9, 151 => 0x6103, 170 => 'MaxAperture', 188 => 0x17, 194 => 0x49c5, 241 => 0x36, 331 => 0x20a, 380 => '14.1' }, 'maxapertureatmaxfocal' => { 133 => 0x1407, 170 => 'MaxApertureAtMaxFocal', 235 => 0xb, 236 => 0x10, 237 => 0x11, 241 => 0x12, 331 => 0x206 }, 'maxapertureatminfocal' => { 133 => 0x1406, 235 => 0xa, 236 => 0xf, 237 => 0x10, 241 => 0x11, 331 => 0x205 }, - 'maxaperturevalue' => { 125 => 0x9205, 399 => 0x414, 527 => 'MaxApertureValue' }, - 'maxavailheight' => { 535 => 'MaxAvailHeight' }, - 'maxavailwidth' => { 535 => 'MaxAvailWidth' }, + 'maxaperturevalue' => { 125 => 0x9205, 399 => 0x414, 529 => 'MaxApertureValue' }, + 'maxavailheight' => { 537 => 'MaxAvailHeight' }, + 'maxavailwidth' => { 537 => 'MaxAvailWidth' }, 'maxcontinuousrelease' => { 309 => 0xb, 310 => 0xc, 312 => '12.1', 313 => '12.1', 318 => 0xc, 319 => 0xb, 322 => '12.1', 323 => '12.1', 325 => 0x41, 326 => 0x3d, 327 => 0x3d, 328 => 0x3d }, 'maxfaces' => { 334 => 0x1202 }, - 'maxfocallength' => { 7 => 0xe6, 8 => 0x10, 9 => 0x1ab, 10 => 0x13, 11 => 0x115, 12 => 0x13, 13 => 0x153, 14 => 0xda, 16 => 0xfa, 17 => 0xee, 18 => 0x103, 19 => 0x95, 20 => 0xea, 21 => 0x157, 22 => 0xee, 23 => 0xec, 24 => 0x12b, 25 => 0x165, 26 => 0x16a, 27 => 0x188, 28 => 0x116, 29 => 0x18d, 37 => 0x17, 133 => 0x1405, 170 => 'MaxFocalLength', 235 => 0x9, 236 => 0xe, 237 => 0xf, 241 => 0x10, 331 => 0x208, 469 => 0x127c, 470 => 0x1138, 471 => 0x330, 472 => 0x330, 473 => 0x30e }, + 'maxfocallength' => { 7 => 0xe6, 8 => 0x10, 9 => 0x1ab, 10 => 0x13, 11 => 0x115, 12 => 0x13, 13 => 0x153, 14 => 0xda, 16 => 0xfa, 17 => 0xee, 18 => 0x103, 19 => 0x95, 20 => 0xea, 21 => 0x157, 22 => 0xee, 23 => 0xec, 24 => 0x12b, 25 => 0x165, 26 => 0x16a, 27 => 0x188, 28 => 0x116, 29 => 0x18d, 37 => 0x17, 133 => 0x1405, 170 => 'MaxFocalLength', 235 => 0x9, 236 => 0xe, 237 => 0xf, 241 => 0x10, 331 => 0x208, 471 => 0x127c, 472 => 0x1138, 473 => 0x330, 474 => 0x330, 475 => 0x30e }, 'maxfocallength2' => { 66 => 0x9 }, 'maximumdensityrange' => { 140 => 0x8c }, - 'maxpagesize' => { 555 => 'MaxPageSize' }, - 'maxpagesizeh' => { 555 => [\'MaxPageSize','MaxPageSizeH'] }, - 'maxpagesizeunit' => { 555 => [\'MaxPageSize','MaxPageSizeUnit'] }, - 'maxpagesizew' => { 555 => [\'MaxPageSize','MaxPageSizeW'] }, + 'maxpagesize' => { 557 => 'MaxPageSize' }, + 'maxpagesizeh' => { 557 => [\'MaxPageSize','MaxPageSizeH'] }, + 'maxpagesizeunit' => { 557 => [\'MaxPageSize','MaxPageSizeUnit'] }, + 'maxpagesizew' => { 557 => [\'MaxPageSize','MaxPageSizeW'] }, 'maxpixelvaluethreshold' => { 145 => 0xc7d }, 'maxsamplevalue' => { 125 => 0x119 }, - 'maxstorage' => { 545 => 'maxstorage' }, + 'maxstorage' => { 547 => 'maxstorage' }, 'mb-d10batteries' => { 309 => '12.6' }, 'mb-d10batterytype' => { 318 => '13.3' }, 'mb-d11batterytype' => { 319 => '2.3' }, @@ -4766,7 +4769,7 @@ my %tagLookup = ( 'mditemfscreationdate' => { 180 => 'MDItemFSCreationDate' }, 'mditemfslabel' => { 180 => 'MDItemFSLabel' }, 'mditemusertags' => { 180 => 'MDItemUserTags' }, - 'meal' => { 542 => 'meal' }, + 'meal' => { 544 => 'meal' }, 'measuredev' => { 28 => 0x9, 82 => 0x3, 103 => 0x1814, 163 => 'MeasuredEV' }, 'measuredev2' => { 13 => 0x8, 28 => 0x8, 82 => 0x17 }, 'measuredev3' => { 13 => 0x9 }, @@ -4783,72 +4786,72 @@ my %tagLookup = ( 'measurementtype' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementType'] }, 'measurementunit' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementUnit'] }, 'measurementvalue' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementValue'] }, - 'measuretype' => { 504 => 'MeasureType' }, + 'measuretype' => { 506 => 'MeasureType' }, 'mechanicalshuttercount' => { 243 => 0x37 }, 'mediaclassprimaryid' => { 186 => 'WM/MediaClassPrimaryID' }, 'mediaclasssecondaryid' => { 186 => 'WM/MediaClassSecondaryID' }, 'mediaconstraints' => { 340 => 'MediaConstraints' }, - 'mediacreatedate' => { 411 => 0x1 }, - 'mediaeventiddate' => { 509 => 'MediaEventIdDate' }, - 'mediamodifydate' => { 411 => 0x2 }, + 'mediacreatedate' => { 412 => 0x1 }, + 'mediaeventiddate' => { 511 => 'MediaEventIdDate' }, + 'mediamodifydate' => { 412 => 0x2 }, 'mediasummarycode' => { 340 => 'MediaSummaryCode' }, - 'mediatype' => { 407 => 'stik' }, + 'mediatype' => { 408 => 'stik' }, 'memoaudioquality' => { 90 => 0x812 }, - 'memorycardconfiguration' => { 448 => 0x16 }, + 'memorycardconfiguration' => { 450 => 0x16 }, 'memorycardnumber' => { 220 => 0x2 }, 'menubuttondisplayposition' => { 88 => 0xb, 91 => 0xa, 92 => 0xb, 95 => 0xb }, 'menubuttonreturn' => { 96 => 0xb }, 'menumonitorofftime' => { 309 => '26.1', 310 => '22.1', 312 => '22.1', 313 => '22.1', 317 => '21.1', 318 => '8.2', 319 => '21.1', 322 => '22.1', 323 => '22.1', 324 => '22.1', 325 => 0x39, 326 => 0x35, 327 => 0x35, 328 => 0x35 }, 'mergedimages' => { 354 => 0x76 }, - 'metadataauthority' => { 535 => 'metadataAuthority' }, - 'metadataauthorityidentifier' => { 535 => [\'metadataAuthority','metadataAuthorityIdentifier'] }, - 'metadataauthorityname' => { 535 => [\'metadataAuthority','metadataAuthorityName'] }, - 'metadatadate' => { 548 => 'MetadataDate' }, - 'metadataeditingsoftware' => { 125 => 0xa43c, 528 => 'MetadataEditingSoftware' }, - 'metadatalastedited' => { 535 => 'metadataLastEdited' }, - 'metadatalasteditor' => { 535 => 'metadataLastEditor' }, - 'metadatalasteditoridentifier' => { 535 => [\'metadataLastEditor','metadataLastEditorIdentifier'] }, - 'metadatalasteditorname' => { 535 => [\'metadataLastEditor','metadataLastEditorName'] }, - 'metadatamoddate' => { 550 => 'metadataModDate' }, - 'metaversion' => { 464 => 0x34 }, - 'meterinfo1row1' => { 457 => 0x0, 458 => 0x0 }, - 'meterinfo1row2' => { 457 => 0x6c, 458 => 0x5a }, - 'meterinfo1row3' => { 457 => 0xd8, 458 => 0xb4 }, - 'meterinfo1row4' => { 457 => 0x144, 458 => 0x10e }, - 'meterinfo1row5' => { 457 => 0x1b0, 458 => 0x168 }, - 'meterinfo1row6' => { 457 => 0x21c, 458 => 0x1c2 }, - 'meterinfo1row7' => { 457 => 0x288, 458 => 0x21c }, - 'meterinfo2row1' => { 457 => 0x2f4, 458 => 0x276 }, - 'meterinfo2row2' => { 457 => 0x378, 458 => 0x2e4 }, - 'meterinfo2row3' => { 457 => 0x3fc, 458 => 0x352 }, - 'meterinfo2row4' => { 457 => 0x480, 458 => 0x3c0 }, - 'meterinfo2row5' => { 457 => 0x504, 458 => 0x42e }, - 'meterinfo2row6' => { 457 => 0x588, 458 => 0x49c }, - 'meterinfo2row7' => { 457 => 0x60c, 458 => 0x50a }, - 'meterinfo2row8' => { 457 => 0x690, 458 => 0x578 }, - 'meterinfo2row9' => { 457 => 0x714, 458 => 0x5e6 }, + 'metadataauthority' => { 537 => 'metadataAuthority' }, + 'metadataauthorityidentifier' => { 537 => [\'metadataAuthority','metadataAuthorityIdentifier'] }, + 'metadataauthorityname' => { 537 => [\'metadataAuthority','metadataAuthorityName'] }, + 'metadatadate' => { 550 => 'MetadataDate' }, + 'metadataeditingsoftware' => { 125 => 0xa43c, 530 => 'MetadataEditingSoftware' }, + 'metadatalastedited' => { 537 => 'metadataLastEdited' }, + 'metadatalasteditor' => { 537 => 'metadataLastEditor' }, + 'metadatalasteditoridentifier' => { 537 => [\'metadataLastEditor','metadataLastEditorIdentifier'] }, + 'metadatalasteditorname' => { 537 => [\'metadataLastEditor','metadataLastEditorName'] }, + 'metadatamoddate' => { 552 => 'metadataModDate' }, + 'metaversion' => { 466 => 0x34 }, + 'meterinfo1row1' => { 459 => 0x0, 460 => 0x0 }, + 'meterinfo1row2' => { 459 => 0x6c, 460 => 0x5a }, + 'meterinfo1row3' => { 459 => 0xd8, 460 => 0xb4 }, + 'meterinfo1row4' => { 459 => 0x144, 460 => 0x10e }, + 'meterinfo1row5' => { 459 => 0x1b0, 460 => 0x168 }, + 'meterinfo1row6' => { 459 => 0x21c, 460 => 0x1c2 }, + 'meterinfo1row7' => { 459 => 0x288, 460 => 0x21c }, + 'meterinfo2row1' => { 459 => 0x2f4, 460 => 0x276 }, + 'meterinfo2row2' => { 459 => 0x378, 460 => 0x2e4 }, + 'meterinfo2row3' => { 459 => 0x3fc, 460 => 0x352 }, + 'meterinfo2row4' => { 459 => 0x480, 460 => 0x3c0 }, + 'meterinfo2row5' => { 459 => 0x504, 460 => 0x42e }, + 'meterinfo2row6' => { 459 => 0x588, 460 => 0x49c }, + 'meterinfo2row7' => { 459 => 0x60c, 460 => 0x50a }, + 'meterinfo2row8' => { 459 => 0x690, 460 => 0x578 }, + 'meterinfo2row9' => { 459 => 0x714, 460 => 0x5e6 }, 'metering' => { 311 => '6.1' }, - 'meteringmode' => { 37 => 0x11, 125 => 0x9207, 147 => 0x1c, 188 => 0x7, 189 => 0x25, 191 => 0x12, 330 => 0x202, 390 => 0x17, 432 => 0x9, 442 => 0x15, 443 => 0x13, 444 => 0x7, 461 => 0x3, 465 => 0x1174, 466 => 0x1178, 467 => 0x1154, 468 => 0x11d0, 469 => 0x11ac, 470 => 0x1064, 471 => 0x25c, 472 => 0x25c, 473 => 0x24b, 527 => 'MeteringMode' }, - 'meteringmode2' => { 370 => '2.1', 456 => 0x202c }, + 'meteringmode' => { 37 => 0x11, 125 => 0x9207, 147 => 0x1c, 188 => 0x7, 189 => 0x25, 191 => 0x12, 330 => 0x202, 390 => 0x17, 434 => 0x9, 444 => 0x15, 445 => 0x13, 446 => 0x7, 463 => 0x3, 467 => 0x1174, 468 => 0x1178, 469 => 0x1154, 470 => 0x11d0, 471 => 0x11ac, 472 => 0x1064, 473 => 0x25c, 474 => 0x25c, 475 => 0x24b, 529 => 'MeteringMode' }, + 'meteringmode2' => { 370 => '2.1', 458 => 0x202c }, 'meteringmode3' => { 370 => '16.1' }, 'meteringoffscaleindicator' => { 191 => 0x53 }, 'meteringtime' => { 309 => '22.2', 311 => '3.2', 314 => '17.1', 315 => '18.1', 318 => '7.3', 319 => '18.1', 320 => '3.2', 324 => '19.1' }, - 'micro1version' => { 417 => 0x1f }, - 'micro2version' => { 417 => 0x2d }, + 'micro1version' => { 419 => 0x1f }, + 'micro2version' => { 419 => 0x2d }, 'microphoneattenuator' => { 249 => 0x34e, 250 => 0x34e, 251 => 0x2d2, 252 => 0x2fa, 253 => 0x2fa }, 'microphonefrequencyresponse' => { 249 => 0x350, 250 => 0x350, 251 => 0x2d4, 252 => 0x2fc, 253 => 0x2fc }, 'microphonejackpower' => { 249 => 0x376, 250 => 0x376, 251 => 0x2fa, 252 => 0x322, 253 => 0x322 }, 'microphonesensitivity' => { 249 => 0x34c, 250 => 0x34c, 251 => 0x2d0, 252 => 0x2f8, 253 => 0x2f8 }, - 'microvideo' => { 501 => 'MicroVideo' }, - 'microvideooffset' => { 501 => 'MicroVideoOffset' }, - 'microvideopresentationtimestampus' => { 501 => 'MicroVideoPresentationTimestampUs' }, - 'microvideoversion' => { 501 => 'MicroVideoVersion' }, + 'microvideo' => { 503 => 'MicroVideo' }, + 'microvideooffset' => { 503 => 'MicroVideoOffset' }, + 'microvideopresentationtimestampus' => { 503 => 'MicroVideoPresentationTimestampUs' }, + 'microvideoversion' => { 503 => 'MicroVideoVersion' }, 'midrangesharpness' => { 262 => 0x3b }, 'mieversion' => { 171 => '0Vers' }, - 'mime' => { 504 => 'Mime' }, + 'mime' => { 506 => 'Mime' }, 'minaperture' => { 37 => 0x1b, 145 => 0x3f8, 170 => 'MinAperture', 380 => '0.2' }, 'minaperturevalue' => { 399 => 0x415 }, - 'minfocallength' => { 7 => 0xe4, 8 => 0xe, 9 => 0x1a9, 10 => 0x11, 11 => 0x113, 12 => 0x11, 13 => 0x151, 14 => 0xd8, 16 => 0xf8, 17 => 0xec, 18 => 0x101, 19 => 0x93, 20 => 0xe8, 21 => 0x155, 22 => 0xec, 23 => 0xea, 24 => 0x129, 25 => 0x163, 26 => 0x168, 27 => 0x186, 28 => 0x114, 29 => 0x18b, 37 => 0x18, 133 => 0x1404, 170 => 'MinFocalLength', 235 => 0x8, 236 => 0xd, 237 => 0xe, 241 => 0xf, 331 => 0x207, 469 => 0x127a, 470 => 0x1136, 471 => 0x32e, 472 => 0x32e, 473 => 0x30c }, + 'minfocallength' => { 7 => 0xe4, 8 => 0xe, 9 => 0x1a9, 10 => 0x11, 11 => 0x113, 12 => 0x11, 13 => 0x151, 14 => 0xd8, 16 => 0xf8, 17 => 0xec, 18 => 0x101, 19 => 0x93, 20 => 0xe8, 21 => 0x155, 22 => 0xec, 23 => 0xea, 24 => 0x129, 25 => 0x163, 26 => 0x168, 27 => 0x186, 28 => 0x114, 29 => 0x18b, 37 => 0x18, 133 => 0x1404, 170 => 'MinFocalLength', 235 => 0x8, 236 => 0xd, 237 => 0xe, 241 => 0xf, 331 => 0x207, 471 => 0x127a, 472 => 0x1136, 473 => 0x32e, 474 => 0x32e, 475 => 0x30c }, 'minfocallength2' => { 66 => 0x8 }, 'minfocusdistance' => { 380 => 0x3 }, 'minimumiso' => { 354 => 0xe8 }, @@ -4859,24 +4862,24 @@ my %tagLookup = ( 'minoltaquality' => { 188 => 0x5, 189 => 0xd, 190 => 0x3, 193 => [0x102,0x103] }, 'minoltatime' => { 188 => 0x16 }, 'minormodelagedisclosure' => { 340 => 'MinorModelAgeDisclosure' }, - 'minorversion' => { 409 => 'minor_version', 511 => 'MinorVersion' }, + 'minorversion' => { 410 => 'minor_version', 513 => 'MinorVersion' }, 'minsamplevalue' => { 125 => 0x118 }, 'mirrorlockup' => { 88 => 0xc, 89 => 0xc, 90 => 0x60f, 91 => 0xb, 92 => 0xc, 93 => 0x6, 94 => 0x6, 95 => 0xc, 96 => 0x3 }, - 'mobilecountrycode' => { 520 => 'mcc' }, - 'mobilenetworkcode' => { 520 => 'mnc' }, - 'moddate' => { 343 => 'modify-date', 537 => 'ModDate' }, - 'modedialposition' => { 448 => 0x14 }, - 'model' => { 104 => 0x6, 125 => 0x110, 163 => 'Model', 343 => 'Model', 359 => 0x110, 390 => 0x23f, 409 => 'model', 415 => ['@mod','CNMN','cmnm',"\xa9mdl","\xa9mod"], 432 => 0x84, 504 => 'Model', 539 => 'model', 546 => 'Model' }, - 'modelage' => { 535 => 'ModelAge' }, + 'mobilecountrycode' => { 522 => 'mcc' }, + 'mobilenetworkcode' => { 522 => 'mnc' }, + 'moddate' => { 343 => 'modify-date', 539 => 'ModDate' }, + 'modedialposition' => { 450 => 0x14 }, + 'model' => { 104 => 0x6, 125 => 0x110, 163 => 'Model', 343 => 'Model', 359 => 0x110, 390 => 0x23f, 410 => 'model', 416 => ['@mod','CNMN','cmnm',"\xa9mdl","\xa9mod"], 434 => 0x84, 506 => 'Model', 541 => 'model', 548 => 'Model' }, + 'modelage' => { 537 => 'ModelAge' }, 'modelid' => { 329 => 0x0 }, 'modelingflash' => { 309 => '21.4', 310 => '31.1', 312 => '31.1', 313 => '31.1', 318 => '26.4', 319 => '30.2', 320 => '7.4', 321 => '30.1', 322 => '31.1', 323 => '31.1', 324 => '31.3', 325 => 0x61, 326 => 0x5d, 327 => 0x5d, 328 => 0x5d }, 'modelreleaseid' => { 340 => 'ModelReleaseID' }, 'modelreleasestatus' => { 340 => 'ModelReleaseStatus' }, - 'modelreleaseyear' => { 479 => 0x52, 480 => 0x46, 481 => 0x53 }, + 'modelreleaseyear' => { 481 => 0x52, 482 => 0x46, 483 => 0x53 }, 'modeltiepoint' => { 125 => 0x8482 }, 'modeltransform' => { 125 => 0x85d8 }, - 'modelyear' => { 539 => 'modelYear' }, - 'modificationdate' => { 540 => 'modificationDate' }, + 'modelyear' => { 541 => 'modelYear' }, + 'modificationdate' => { 542 => 'modificationDate' }, 'modifiedcolortemp' => { 71 => 0x9 }, 'modifieddigitalgain' => { 71 => 0xb }, 'modifiedparamflag' => { 62 => 0x1 }, @@ -4890,8 +4893,8 @@ my %tagLookup = ( 'modifiedwhitebalance' => { 71 => 0x8 }, 'modifiedwhitebalanceblue' => { 71 => 0x7 }, 'modifiedwhitebalancered' => { 71 => 0x6 }, - 'modifydate' => { 125 => 0x132, 164 => 'ModifyDate', 339 => 'ModDate', 341 => 'tIME', 406 => 'ModDate', 412 => 0x2, 548 => 'ModifyDate' }, - 'moirefilter' => { 125 => 0xfe58, 521 => 'MoireFilter', 523 => 'MoireFilter' }, + 'modifydate' => { 125 => 0x132, 164 => 'ModifyDate', 339 => 'ModDate', 341 => 'tIME', 406 => 'ModDate', 413 => 0x2, 550 => 'ModifyDate' }, + 'moirefilter' => { 125 => 0xfe58, 523 => 'MoireFilter', 525 => 'MoireFilter' }, 'monitorbrightness' => { 247 => 0x904, 249 => 0x69a, 250 => 0x6aa, 251 => 0x59a, 252 => 0x5ca, 253 => 0x5e2 }, 'monitordisplayoff' => { 191 => 0x4c }, 'monitormatrix' => { 145 => 0x8fc }, @@ -4917,16 +4920,16 @@ my %tagLookup = ( 'monochromevignetting' => { 330 => 0x53a }, 'monthdaycreated' => { 147 => 0x12, 156 => 0xe }, 'mood' => { 186 => 'WM/Mood' }, - 'moonphase' => { 416 => 0x12, 417 => 0x43, 418 => 0x4c }, - 'morepermissions' => { 519 => 'morePermissions' }, - 'motionphoto' => { 501 => 'MotionPhoto' }, - 'motionphotopresentationtimestampus' => { 501 => 'MotionPhotoPresentationTimestampUs' }, - 'motionphotoversion' => { 501 => 'MotionPhotoVersion' }, - 'motionphotovideo' => { 410 => 'mpvd' }, - 'motionsensitivity' => { 416 => 0x29, 418 => 0x60 }, - 'movementcount' => { 407 => "\xa9mvc" }, - 'movementname' => { 407 => "\xa9mvn" }, - 'movementnumber' => { 407 => "\xa9mvi" }, + 'moonphase' => { 418 => 0x12, 419 => 0x43, 420 => 0x4c }, + 'morepermissions' => { 521 => 'morePermissions' }, + 'motionphoto' => { 503 => 'MotionPhoto' }, + 'motionphotopresentationtimestampus' => { 503 => 'MotionPhotoPresentationTimestampUs' }, + 'motionphotoversion' => { 503 => 'MotionPhotoVersion' }, + 'motionphotovideo' => { 411 => 'mpvd' }, + 'motionsensitivity' => { 418 => 0x29, 420 => 0x60 }, + 'movementcount' => { 408 => "\xa9mvc" }, + 'movementname' => { 408 => "\xa9mvn" }, + 'movementnumber' => { 408 => "\xa9mvi" }, 'movieactived-lighting' => { 248 => 0x238, 249 => 0x334, 250 => 0x334, 251 => 0x2b8, 252 => 0x2e0, 253 => 0x2e0 }, 'movieaelockbuttonassignment' => { 322 => '40.1' }, 'movieaf-onbutton' => { 325 => 0xd3, 326 => 0xcb, 327 => 0xcb, 328 => 0xcb }, @@ -4980,9 +4983,9 @@ my %tagLookup = ( 'movievignettecontrolsameasphoto' => { 248 => 0x240 }, 'movievrmode' => { 249 => 0x344, 250 => 0x344, 251 => 0x2c8, 252 => 0x2f0, 253 => 0x2f0 }, 'moviezebrapattern' => { 326 => 0x213, 327 => 0x213, 328 => 0x22b }, - 'multiburstimageheight' => { 456 => 0x1002 }, - 'multiburstimagewidth' => { 456 => 0x1001 }, - 'multiburstmode' => { 456 => 0x1000 }, + 'multiburstimageheight' => { 458 => 0x1002 }, + 'multiburstimagewidth' => { 458 => 0x1001 }, + 'multiburstmode' => { 458 => 0x1000 }, 'multicontrollerwhilemetering' => { 90 => 0x517 }, 'multiexposure' => { 73 => 0x1, 354 => 0xb4 }, 'multiexposureautogain' => { 255 => 0x3 }, @@ -4990,8 +4993,8 @@ my %tagLookup = ( 'multiexposuremode' => { 255 => 0x1, 256 => 0x1 }, 'multiexposureoverlaymode' => { 256 => 0x3 }, 'multiexposureshots' => { 73 => 0x3, 247 => 0x1be, 249 => 0x9a, 250 => 0x9a, 251 => 0x8e, 252 => 0x9c, 253 => 0x9c, 255 => 0x2, 256 => 0x2 }, - 'multiframenoisereduction' => { 444 => 0x35, 456 => 0x200b, 461 => 0x15 }, - 'multiframenreffect' => { 456 => 0x2023 }, + 'multiframenoisereduction' => { 446 => 0x35, 458 => 0x200b, 463 => 0x15 }, + 'multiframenreffect' => { 458 => 0x2023 }, 'multifunctionlock' => { 90 => 0x70f }, 'multipleexposuremode' => { 247 => 0x1bc, 249 => 0x98, 250 => 0x98, 251 => 0x8c, 252 => 0x9a, 253 => 0x9a, 334 => 0x101c }, 'multipleexposureset' => { 370 => '10.1' }, @@ -5002,22 +5005,22 @@ my %tagLookup = ( 'multiselectorplaybackmode' => { 309 => ['13.5','9.2'], 310 => '10.2', 313 => '10.2', 318 => '27.2', 322 => '10.2', 323 => '10.2', 325 => 0xb7, 326 => 0xb3, 327 => 0xb3, 328 => 0xb3 }, 'multiselectorshootmode' => { 309 => '9.1', 310 => '10.1', 312 => '10.1', 313 => '10.1', 318 => '27.1', 322 => '10.1', 323 => '10.1', 325 => 0xb3, 326 => 0xaf, 327 => 0xaf, 328 => 0xaf }, 'multishot' => { 359 => 0x121 }, - 'mute' => { 409 => 'player.movie.audio.mute' }, + 'mute' => { 407 => 'player.movie.audio.mute', 410 => 'player.movie.audio.mute' }, 'mycolormode' => { 74 => 0x2 }, - 'name' => { 415 => 'name', 521 => 'Name', 523 => 'Name' }, - 'narrator' => { 407 => "\xa9nrt" }, - 'nationalcatalognumber' => { 540 => 'nationalCatalogNumber' }, - 'nativedigest' => { 527 => 'NativeDigest', 546 => 'NativeDigest' }, - 'nativeformat' => { 516 => 'NativeFormat' }, - 'ndfilter' => { 82 => 0x1c, 330 => 0x204, 422 => 0x1019 }, - 'near' => { 504 => 'Near' }, + 'name' => { 416 => 'name', 523 => 'Name', 525 => 'Name' }, + 'narrator' => { 408 => "\xa9nrt" }, + 'nationalcatalognumber' => { 542 => 'nationalCatalogNumber' }, + 'nativedigest' => { 529 => 'NativeDigest', 548 => 'NativeDigest' }, + 'nativeformat' => { 518 => 'NativeFormat' }, + 'ndfilter' => { 82 => 0x1c, 330 => 0x204, 424 => 0x1019 }, + 'near' => { 506 => 'Near' }, 'nefbitdepth' => { 243 => 0xe22 }, 'nefcompression' => { 243 => 0x93, 244 => 0xa }, 'neflinearizationtable' => { 243 => 0x96 }, - 'negativecachelargepreviewsize' => { 521 => 'NegativeCacheLargePreviewSize', 523 => 'NegativeCacheLargePreviewSize' }, - 'negativecachemaximumsize' => { 521 => 'NegativeCacheMaximumSize', 523 => 'NegativeCacheMaximumSize' }, - 'negativecachepath' => { 521 => 'NegativeCachePath', 523 => 'NegativeCachePath' }, - 'neutraldensityfactor' => { 518 => 'NeutralDensityFactor' }, + 'negativecachelargepreviewsize' => { 523 => 'NegativeCacheLargePreviewSize', 525 => 'NegativeCacheLargePreviewSize' }, + 'negativecachemaximumsize' => { 523 => 'NegativeCacheMaximumSize', 525 => 'NegativeCacheMaximumSize' }, + 'negativecachepath' => { 523 => 'NegativeCachePath', 525 => 'NegativeCachePath' }, + 'neutraldensityfactor' => { 520 => 'NeutralDensityFactor' }, 'neutraldensityfilter' => { 390 => 0x88 }, 'neutraloutputhighlightpoint' => { 115 => 0x2f }, 'neutraloutputshadowpoint' => { 115 => 0x30 }, @@ -5036,7 +5039,7 @@ my %tagLookup = ( 'newlensdata' => { 241 => 0x2f }, 'newrawimagedigest' => { 125 => 0xc7a7 }, 'newsphotoversion' => { 140 => 0x0 }, - 'nickname' => { 548 => 'Nickname' }, + 'nickname' => { 550 => 'Nickname' }, 'nikoncapturedata' => { 243 => 0xe01 }, 'nikoncaptureeditversions' => { 243 => 0xe13 }, 'nikoncaptureoffsets' => { 243 => 0xe0e }, @@ -5048,12 +5051,12 @@ my %tagLookup = ( 'nikonsettings' => { 243 => 0x4e }, 'noisefilter' => { 330 => 0x527 }, 'noiseprofile' => { 125 => 0xc761 }, - 'noisereduction' => { 133 => [0x100b,0x100e], 189 => 0xb0, 190 => 0x60, 191 => 0x3f, 243 => 0x95, 302 => 0x753dcbc0, 303 => 0x17, 330 => 0x50a, 335 => 0x103a, 354 => 0x2d, 390 => 0x49, 422 => 0x100f, 424 => 0x2a }, + 'noisereduction' => { 133 => [0x100b,0x100e], 189 => 0xb0, 190 => 0x60, 191 => 0x3f, 243 => 0x95, 302 => 0x753dcbc0, 303 => 0x17, 330 => 0x50a, 335 => 0x103a, 354 => 0x2d, 390 => 0x49, 424 => 0x100f, 426 => 0x2a }, 'noisereduction2' => { 334 => 0x1010 }, 'noisereductionapplied' => { 125 => 0xc6f7 }, 'noisereductionintensity' => { 303 => 0x9 }, 'noisereductionmethod' => { 303 => 0x11 }, - 'noisereductionmode' => { 493 => 0x801e }, + 'noisereductionmode' => { 495 => 0x801e }, 'noisereductionparametersatcapture' => { 145 => 0xe73 }, 'noisereductionparameterscamera' => { 145 => 0xe72 }, 'noisereductionparametershost3mp' => { 145 => 0xe71 }, @@ -5065,7 +5068,7 @@ my %tagLookup = ( 'noisereductionparams' => { 359 => 0x1b }, 'noisereductionsharpness' => { 303 => 0xd }, 'noisereductionstrength' => { 354 => 0xd6 }, - 'noisereductionvalue' => { 493 => 0x8027 }, + 'noisereductionvalue' => { 495 => 0x8027 }, 'nomemorycard' => { 309 => '22.1', 310 => '4.2', 311 => '0.3', 314 => '2.4', 315 => '3.2', 316 => '3.2', 318 => '33.7', 319 => '3.2', 320 => '0.3', 322 => '4.2', 324 => '4.5' }, 'nominalmaxaperture' => { 380 => 0xa }, 'nominalminaperture' => { 380 => '10.1' }, @@ -5112,28 +5115,28 @@ my %tagLookup = ( 'normalizedcropcorners' => { 344 => 'NormalizedCropCorners' }, 'normallinetime' => { 145 => 0x186a }, 'normalwhitelevel' => { 44 => 0x32a, 45 => 0x280, 46 => 0x294, 49 => [0x2b8,0x2cf,0x2d3], 50 => 0x569, 51 => 0x1e3, 52 => [0x1fc,0x2dc], 53 => [0x230,0x30e], 54 => 0x31c }, - 'notes' => { 495 => 'Notes', 515 => 'notes' }, - 'npages' => { 555 => 'NPages' }, + 'notes' => { 497 => 'Notes', 517 => 'notes' }, + 'npages' => { 557 => 'NPages' }, 'nullrecord' => { 103 => 0x0 }, 'numafpoints' => { 366 => 0x2 }, - 'number' => { 540 => 'number' }, - 'numberofbeats' => { 550 => 'numberOfBeats' }, + 'number' => { 542 => 'number' }, + 'numberofbeats' => { 552 => 'numberOfBeats' }, 'numberoffocuspoints' => { 312 => '1.3', 313 => '1.3', 316 => '0.2', 317 => '0.3', 319 => '0.3' }, 'numfaceelements' => { 133 => 0x4200 }, 'numfacepositions' => { 346 => 0x0 }, 'numindexentries' => { 140 => 0x54 }, 'numwbentries' => { 360 => 0x0, 361 => 0x0 }, - 'object' => { 540 => 'object' }, + 'object' => { 542 => 'object' }, 'objectattributereference' => { 138 => 0x4 }, - 'objectcycle' => { 138 => 0x4b, 515 => 'ObjectCycle' }, - 'objectdescription' => { 539 => 'objectDescription' }, + 'objectcycle' => { 138 => 0x4b, 517 => 'ObjectCycle' }, + 'objectdescription' => { 541 => 'objectDescription' }, 'objectdistance' => { 118 => 0x6, 119 => 0x2022 }, 'objectname' => { 138 => 0x5 }, 'objectpreviewdata' => { 138 => 0xca }, 'objectpreviewfileformat' => { 138 => 0xc8 }, 'objectpreviewfileversion' => { 138 => 0xc9 }, - 'objectsubtype' => { 539 => 'objectSubtype' }, - 'objecttype' => { 539 => 'objectType' }, + 'objectsubtype' => { 541 => 'objectSubtype' }, + 'objecttype' => { 541 => 'objectType' }, 'objecttypereference' => { 138 => 0x3 }, 'occurrence' => { 124 => 'Occurrence' }, 'occurrenceassociatedmedia' => { 124 => [\'Occurrence','OccurrenceAssociatedMedia'] }, @@ -5165,17 +5168,17 @@ my %tagLookup = ( 'occurrencereproductivecondition' => { 124 => [\'Occurrence','OccurrenceReproductiveCondition'] }, 'occurrencesex' => { 124 => [\'Occurrence','OccurrenceSex'] }, 'occurrencestatus' => { 124 => [\'Occurrence','OccurrenceOccurrenceStatus'] }, - 'oecfcolumns' => { 527 => [\'OECF','OECFColumns'] }, - 'oecfnames' => { 527 => [\'OECF','OECFNames'] }, - 'oecfrows' => { 527 => [\'OECF','OECFRows'] }, - 'oecfvalues' => { 527 => [\'OECF','OECFValues'] }, - 'offsaledate' => { 540 => 'offSaleDate' }, - 'offsaledatea-platform' => { 540 => [\'offSaleDate','offSaleDateA-platform'] }, - 'offsaledatedate' => { 540 => [\'offSaleDate','offSaleDateDate'] }, + 'oecfcolumns' => { 529 => [\'OECF','OECFColumns'] }, + 'oecfnames' => { 529 => [\'OECF','OECFNames'] }, + 'oecfrows' => { 529 => [\'OECF','OECFRows'] }, + 'oecfvalues' => { 529 => [\'OECF','OECFValues'] }, + 'offsaledate' => { 542 => 'offSaleDate' }, + 'offsaledatea-platform' => { 542 => [\'offSaleDate','offSaleDateA-platform'] }, + 'offsaledatedate' => { 542 => [\'offSaleDate','offSaleDateDate'] }, 'offsetdacvalue' => { 145 => 0x190a }, - 'offsethdr' => { 532 => 'OffsetHDR' }, + 'offsethdr' => { 534 => 'OffsetHDR' }, 'offsetschema' => { 125 => 0xea1d }, - 'offsetsdr' => { 532 => 'OffsetSDR' }, + 'offsetsdr' => { 534 => 'OffsetSDR' }, 'offsettime' => { 125 => 0x9010 }, 'offsettimedigitized' => { 125 => 0x9012 }, 'offsettimeoriginal' => { 125 => 0x9011 }, @@ -5192,25 +5195,25 @@ my %tagLookup = ( 'omensurfaceindex' => { 145 => 0xa64 }, 'oneshotafrelease' => { 2 => 0x9 }, 'onetouchwb' => { 335 => 0x302 }, - 'onsaledate' => { 540 => 'onSaleDate' }, - 'onsaledatea-platform' => { 540 => [\'onSaleDate','onSaleDateA-platform'] }, - 'onsaledatedate' => { 540 => [\'onSaleDate','onSaleDateDate'] }, - 'onsaleday' => { 540 => 'onSaleDay' }, - 'onsaledaya-platform' => { 540 => [\'onSaleDay','onSaleDayA-platform'] }, - 'onsaledayday' => { 540 => [\'onSaleDay','onSaleDayDay'] }, + 'onsaledate' => { 542 => 'onSaleDate' }, + 'onsaledatea-platform' => { 542 => [\'onSaleDate','onSaleDateA-platform'] }, + 'onsaledatedate' => { 542 => [\'onSaleDate','onSaleDateDate'] }, + 'onsaleday' => { 542 => 'onSaleDay' }, + 'onsaledaya-platform' => { 542 => [\'onSaleDay','onSaleDayA-platform'] }, + 'onsaledayday' => { 542 => [\'onSaleDay','onSaleDayDay'] }, 'opcodelist1' => { 125 => 0xc740 }, 'opcodelist2' => { 125 => 0xc741 }, 'opcodelist3' => { 125 => 0xc74e }, 'opticalzoom' => { 149 => 0xfa3d, 151 => [0x6006,0xf006], 152 => 0x1000, 153 => 0xf, 156 => 0x1e, 158 => 0x20, 159 => 0x1c, 170 => 'OpticalZoom' }, 'opticalzoomcode' => { 82 => 0xa }, 'opticalzoommode' => { 354 => 0x34 }, - 'opticalzoomon' => { 431 => 0x219 }, - 'optionenddate' => { 543 => 'optionEndDate' }, - 'opto-electricconvfactor' => { 527 => 'OECF' }, + 'opticalzoomon' => { 433 => 0x219 }, + 'optionenddate' => { 545 => 'optionEndDate' }, + 'opto-electricconvfactor' => { 529 => 'OECF' }, 'orangehsl' => { 109 => 0x20911 }, 'ordernumber' => { 133 => 0x8002 }, - 'organisationinimagecode' => { 535 => 'OrganisationInImageCode' }, - 'organisationinimagename' => { 535 => 'OrganisationInImageName' }, + 'organisationinimagecode' => { 537 => 'OrganisationInImageCode' }, + 'organisationinimagename' => { 537 => 'OrganisationInImageName' }, 'organism' => { 124 => 'Organism' }, 'organismassociatedoccurrences' => { 124 => [\'Organism','OrganismAssociatedOccurrences'] }, 'organismassociatedorganisms' => { 124 => [\'Organism','OrganismAssociatedOrganisms'] }, @@ -5219,26 +5222,26 @@ my %tagLookup = ( 'organismpreviousidentifications' => { 124 => [\'Organism','OrganismPreviousIdentifications'] }, 'organismremarks' => { 124 => [\'Organism','OrganismOrganismRemarks'] }, 'organismscope' => { 124 => [\'Organism','OrganismOrganismScope'] }, - 'organization' => { 540 => 'organization' }, - 'orientation' => { 125 => 0x112, 359 => 0x112, 539 => 'orientation', 546 => 'Orientation' }, - 'orientation2' => { 461 => [0x28,0x2e] }, + 'organization' => { 542 => 'organization' }, + 'orientation' => { 125 => 0x112, 359 => 0x112, 541 => 'orientation', 548 => 'Orientation' }, + 'orientation2' => { 463 => [0x28,0x2e] }, 'orientationlinkedaf' => { 2 => 0xe }, 'orientationlinkedafpoint' => { 90 => 0x516 }, 'originalalbumtitle' => { 186 => 'WM/OriginalAlbumTitle' }, - 'originalartist' => { 186 => 'WM/OriginalArtist', 407 => "\xa9ope" }, + 'originalartist' => { 186 => 'WM/OriginalArtist', 408 => "\xa9ope" }, 'originalbestqualitysize' => { 125 => 0xc792 }, - 'originalcreatedatetime' => { 509 => 'OriginalCreateDateTime' }, + 'originalcreatedatetime' => { 511 => 'OriginalCreateDateTime' }, 'originaldecisiondata' => { 120 => 'Canon-OriginalDecisionData' }, 'originaldecisiondataoffset' => { 69 => 0x83 }, 'originaldefaultcropsize' => { 125 => 0xc793 }, 'originaldefaultfinalsize' => { 125 => 0xc791 }, 'originaldirectory' => { 351 => 0x408 }, - 'originaldocumentid' => { 551 => 'OriginalDocumentID' }, - 'originalfilename' => { 103 => 0x816, 145 => 0x3e9, 157 => 0x20, 351 => 0x407, 509 => 'OriginalFilename' }, - 'originalimagehash' => { 498 => 'OriginalImageHash' }, - 'originalimagehashtype' => { 498 => 'OriginalImageHashType' }, + 'originaldocumentid' => { 553 => 'OriginalDocumentID' }, + 'originalfilename' => { 103 => 0x816, 145 => 0x3e9, 157 => 0x20, 351 => 0x407, 511 => 'OriginalFilename' }, + 'originalimagehash' => { 500 => 'OriginalImageHash' }, + 'originalimagehashtype' => { 500 => 'OriginalImageHashType' }, 'originalimageheight' => { 84 => 0xc, 129 => 0x1 }, - 'originalimagemd5' => { 498 => 'OriginalImageMD5' }, + 'originalimagemd5' => { 500 => 'OriginalImageMD5' }, 'originalimagesize' => { 169 => 'OriginalImageSize' }, 'originalimagewidth' => { 84 => 0xb, 129 => 0x0 }, 'originallyricist' => { 186 => 'WM/OriginalLyricist' }, @@ -5246,9 +5249,9 @@ my %tagLookup = ( 'originalrawfiledigest' => { 125 => 0xc71d }, 'originalrawfilename' => { 125 => 0xc68b }, 'originaltransmissionreference' => { 138 => 0x67 }, - 'originatingprogram' => { 138 => 0x41, 515 => 'OriginatingProgram' }, - 'originplatform' => { 540 => 'originPlatform' }, - 'os' => { 525 => 'os' }, + 'originatingprogram' => { 138 => 0x41, 517 => 'OriginatingProgram' }, + 'originplatform' => { 542 => 'originPlatform' }, + 'os' => { 527 => 'os' }, 'otherconditions' => { 340 => 'OtherConditions' }, 'otherconstraints' => { 340 => 'OtherConstraints' }, 'otherimage' => { 120 => 'Exif-OtherImage' }, @@ -5258,9 +5261,9 @@ my %tagLookup = ( 'otherlicensedocuments' => { 340 => 'OtherLicenseDocuments' }, 'otherlicenseinfo' => { 340 => 'OtherLicenseInfo' }, 'otherlicenserequirements' => { 340 => 'OtherLicenseRequirements' }, - 'outcue' => { 550 => 'outCue' }, - 'outcuescale' => { 550 => [\'outCue','outCueScale'] }, - 'outcuevalue' => { 550 => [\'outCue','outCueValue'] }, + 'outcue' => { 552 => 'outCue' }, + 'outcuescale' => { 552 => [\'outCue','outCueScale'] }, + 'outcuevalue' => { 552 => [\'outCue','outCueValue'] }, 'outputimageheight' => { 207 => 0x3 }, 'outputimagewidth' => { 207 => 0x2 }, 'outputlut' => { 354 => 0xa7 }, @@ -5268,165 +5271,165 @@ my %tagLookup = ( 'outputresolution' => { 207 => 0x4 }, 'overclockcols' => { 145 => 0x189c }, 'overclockrows' => { 145 => 0x18c4 }, - 'overridelookvignette' => { 521 => 'OverrideLookVignette', 523 => 'OverrideLookVignette' }, - 'owner' => { 407 => 'ownr', 554 => 'Owner' }, + 'overridelookvignette' => { 523 => 'OverrideLookVignette', 525 => 'OverrideLookVignette' }, + 'owner' => { 408 => 'ownr', 556 => 'Owner' }, 'ownerid' => { 138 => 0xbc }, - 'ownername' => { 15 => 0x10f, 69 => 0x9, 103 => 0x810, 125 => [0xa430,0xfde8], 163 => 'OwnerName', 518 => 'OwnerName', 528 => 'CameraOwnerName' }, + 'ownername' => { 15 => 0x10f, 69 => 0x9, 103 => 0x810, 125 => [0xa430,0xfde8], 163 => 'OwnerName', 520 => 'OwnerName', 530 => 'CameraOwnerName' }, 'padding' => { 125 => 0xea1c }, - 'pagecount' => { 540 => 'pageCount' }, - 'pageimage' => { 548 => [\'PageInfo','PageInfoImage'] }, - 'pageimageformat' => { 548 => [\'PageInfo','PageInfoFormat'] }, - 'pageimageheight' => { 548 => [\'PageInfo','PageInfoHeight'] }, - 'pageimagepagenumber' => { 548 => [\'PageInfo','PageInfoPageNumber'] }, - 'pageimagewidth' => { 548 => [\'PageInfo','PageInfoWidth'] }, - 'pageinfo' => { 548 => 'PageInfo' }, + 'pagecount' => { 542 => 'pageCount' }, + 'pageimage' => { 550 => [\'PageInfo','PageInfoImage'] }, + 'pageimageformat' => { 550 => [\'PageInfo','PageInfoFormat'] }, + 'pageimageheight' => { 550 => [\'PageInfo','PageInfoHeight'] }, + 'pageimagepagenumber' => { 550 => [\'PageInfo','PageInfoPageNumber'] }, + 'pageimagewidth' => { 550 => [\'PageInfo','PageInfoWidth'] }, + 'pageinfo' => { 550 => 'PageInfo' }, 'pagename' => { 125 => 0x11d }, 'pagenumber' => { 125 => 0x129 }, - 'pageprogressiondirection' => { 540 => 'pageProgressionDirection' }, - 'pagerange' => { 540 => 'pageRange' }, - 'paintbasedcorrectionmasks' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'] }, - 'paintbasedcorrections' => { 521 => 'PaintBasedCorrections', 523 => 'PaintBasedCorrections' }, - 'paintcorrectionactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'] }, - 'paintcorrectionamount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'] }, - 'paintcorrectionblacks2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'] }, - 'paintcorrectionbrightness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'] }, - 'paintcorrectionclarity' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'] }, - 'paintcorrectionclarity2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'] }, - 'paintcorrectioncontrast' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'] }, - 'paintcorrectioncontrast2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'] }, - 'paintcorrectioncorrectionname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'] }, - 'paintcorrectioncorrectionsyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'] }, - 'paintcorrectiondefringe' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'] }, - 'paintcorrectiondehaze' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'] }, - 'paintcorrectionexposure' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'] }, - 'paintcorrectionexposure2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'] }, - 'paintcorrectionhighlights2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'] }, - 'paintcorrectionhue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'] }, - 'paintcorrectionluminancenoise' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'] }, - 'paintcorrectionmaskalpha' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'] }, - 'paintcorrectionmaskangle' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'] }, - 'paintcorrectionmaskbottom' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'] }, - 'paintcorrectionmaskcentervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'] }, - 'paintcorrectionmaskcenterweight' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'paintcorrectionmaskdabs' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'] }, - 'paintcorrectionmaskfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'] }, - 'paintcorrectionmaskflipped' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'] }, - 'paintcorrectionmaskflow' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'] }, - 'paintcorrectionmaskfullx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'] }, - 'paintcorrectionmaskfully' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'] }, - 'paintcorrectionmaskinputdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'] }, - 'paintcorrectionmaskleft' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'] }, - 'paintcorrectionmaskmaskactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'] }, - 'paintcorrectionmaskmaskblendmode' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'paintcorrectionmaskmaskdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'paintcorrectionmaskmaskinverted' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'paintcorrectionmaskmaskname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'] }, - 'paintcorrectionmaskmasks' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'] }, - 'paintcorrectionmaskmasksalpha' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'paintcorrectionmaskmasksangle' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'paintcorrectionmaskmasksbottom' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'paintcorrectionmaskmaskscentervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'paintcorrectionmaskmaskscenterweight' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'paintcorrectionmaskmasksdabs' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'paintcorrectionmaskmasksfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'paintcorrectionmaskmasksflipped' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'paintcorrectionmaskmasksflow' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'paintcorrectionmaskmasksfullx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'paintcorrectionmaskmasksfully' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'paintcorrectionmaskmasksinputdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'paintcorrectionmaskmasksleft' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'paintcorrectionmaskmasksmaskactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'paintcorrectionmaskmasksmaskblendmode' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'paintcorrectionmaskmasksmaskdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'paintcorrectionmaskmasksmaskinverted' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'paintcorrectionmaskmasksmaskname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'paintcorrectionmaskmasksmasksubtype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'paintcorrectionmaskmasksmasksyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'paintcorrectionmaskmasksmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'paintcorrectionmaskmasksmidpoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'paintcorrectionmaskmasksorigin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'paintcorrectionmaskmasksperimetervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'paintcorrectionmaskmasksradius' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'paintcorrectionmaskmasksreferencepoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'paintcorrectionmaskmasksright' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'] }, - 'paintcorrectionmaskmasksroundness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'paintcorrectionmaskmaskssizex' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'paintcorrectionmaskmaskssizey' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'paintcorrectionmaskmaskstop' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'] }, - 'paintcorrectionmaskmasksubtype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'paintcorrectionmaskmasksvalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'paintcorrectionmaskmasksversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'paintcorrectionmaskmaskswhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'paintcorrectionmaskmaskswholeimagearea' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'paintcorrectionmaskmasksx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'] }, - 'paintcorrectionmaskmasksy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'] }, - 'paintcorrectionmaskmasksyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'paintcorrectionmaskmaskszerox' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'paintcorrectionmaskmaskszeroy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'paintcorrectionmaskmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'paintcorrectionmaskmidpoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'] }, - 'paintcorrectionmaskorigin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'] }, - 'paintcorrectionmaskperimetervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'paintcorrectionmaskradius' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'] }, - 'paintcorrectionmaskrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'paintcorrectionmaskrangeareamodels' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'paintcorrectionmaskrangeareamodelscolorsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'paintcorrectionmaskrangeareamodelscomponents' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'paintcorrectionmaskrangecoloramount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'paintcorrectionmaskrangedepthfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'paintcorrectionmaskrangedepthmax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'paintcorrectionmaskrangedepthmin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'paintcorrectionmaskrangeinvert' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'paintcorrectionmaskrangelumfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'paintcorrectionmaskrangeluminancedepthsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'paintcorrectionmaskrangelummax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'paintcorrectionmaskrangelummin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'paintcorrectionmaskrangelumrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'paintcorrectionmaskrangesampletype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'paintcorrectionmaskrangetype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'paintcorrectionmaskrangeversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'paintcorrectionmaskreferencepoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'paintcorrectionmaskright' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'] }, - 'paintcorrectionmaskroundness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'] }, - 'paintcorrectionmasksizex' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'] }, - 'paintcorrectionmasksizey' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'] }, - 'paintcorrectionmasktop' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'] }, - 'paintcorrectionmaskvalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'] }, - 'paintcorrectionmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'] }, - 'paintcorrectionmaskwhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'] }, - 'paintcorrectionmaskwholeimagearea' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'paintcorrectionmaskx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'] }, - 'paintcorrectionmasky' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'] }, - 'paintcorrectionmaskzerox' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'] }, - 'paintcorrectionmaskzeroy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'] }, - 'paintcorrectionmoire' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'] }, - 'paintcorrectionrangemask' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'] }, - 'paintcorrectionrangemaskareamodels' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'paintcorrectionrangemaskareamodelscolorsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'paintcorrectionrangemaskareamodelscomponents' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'paintcorrectionrangemaskcoloramount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'paintcorrectionrangemaskdepthfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'paintcorrectionrangemaskdepthmax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'paintcorrectionrangemaskdepthmin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'paintcorrectionrangemaskinvert' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'paintcorrectionrangemasklumfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'paintcorrectionrangemaskluminancedepthsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'paintcorrectionrangemasklummax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'paintcorrectionrangemasklummin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'paintcorrectionrangemasklumrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'paintcorrectionrangemasksampletype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'paintcorrectionrangemasktype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'] }, - 'paintcorrectionrangemaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'paintcorrectionsaturation' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'] }, - 'paintcorrectionshadows2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'] }, - 'paintcorrectionsharpness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'] }, - 'paintcorrectiontemperature' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'] }, - 'paintcorrectiontexture' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'] }, - 'paintcorrectiontint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'] }, - 'paintcorrectiontoninghue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'] }, - 'paintcorrectiontoningsaturation' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'] }, - 'paintcorrectionwhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'] }, - 'paintcorrectionwhites2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'] }, + 'pageprogressiondirection' => { 542 => 'pageProgressionDirection' }, + 'pagerange' => { 542 => 'pageRange' }, + 'paintbasedcorrectionmasks' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'] }, + 'paintbasedcorrections' => { 523 => 'PaintBasedCorrections', 525 => 'PaintBasedCorrections' }, + 'paintcorrectionactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'] }, + 'paintcorrectionamount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'] }, + 'paintcorrectionblacks2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'] }, + 'paintcorrectionbrightness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'] }, + 'paintcorrectionclarity' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'] }, + 'paintcorrectionclarity2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'] }, + 'paintcorrectioncontrast' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'] }, + 'paintcorrectioncontrast2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'] }, + 'paintcorrectioncorrectionname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'] }, + 'paintcorrectioncorrectionsyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'] }, + 'paintcorrectiondefringe' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'] }, + 'paintcorrectiondehaze' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'] }, + 'paintcorrectionexposure' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'] }, + 'paintcorrectionexposure2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'] }, + 'paintcorrectionhighlights2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'] }, + 'paintcorrectionhue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'] }, + 'paintcorrectionluminancenoise' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'] }, + 'paintcorrectionmaskalpha' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'] }, + 'paintcorrectionmaskangle' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'] }, + 'paintcorrectionmaskbottom' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'] }, + 'paintcorrectionmaskcentervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'] }, + 'paintcorrectionmaskcenterweight' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'paintcorrectionmaskdabs' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'] }, + 'paintcorrectionmaskfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'] }, + 'paintcorrectionmaskflipped' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'] }, + 'paintcorrectionmaskflow' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'] }, + 'paintcorrectionmaskfullx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'] }, + 'paintcorrectionmaskfully' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'] }, + 'paintcorrectionmaskinputdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'] }, + 'paintcorrectionmaskleft' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'] }, + 'paintcorrectionmaskmaskactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'] }, + 'paintcorrectionmaskmaskblendmode' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'paintcorrectionmaskmaskdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'paintcorrectionmaskmaskinverted' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'paintcorrectionmaskmaskname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'] }, + 'paintcorrectionmaskmasks' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'] }, + 'paintcorrectionmaskmasksalpha' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'paintcorrectionmaskmasksangle' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'paintcorrectionmaskmasksbottom' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'paintcorrectionmaskmaskscentervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'paintcorrectionmaskmaskscenterweight' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'paintcorrectionmaskmasksdabs' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'paintcorrectionmaskmasksfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'paintcorrectionmaskmasksflipped' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'paintcorrectionmaskmasksflow' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'paintcorrectionmaskmasksfullx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'paintcorrectionmaskmasksfully' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'paintcorrectionmaskmasksinputdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'paintcorrectionmaskmasksleft' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'paintcorrectionmaskmasksmaskactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'paintcorrectionmaskmasksmaskblendmode' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'paintcorrectionmaskmasksmaskdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'paintcorrectionmaskmasksmaskinverted' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'paintcorrectionmaskmasksmaskname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'paintcorrectionmaskmasksmasksubtype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'paintcorrectionmaskmasksmasksyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'paintcorrectionmaskmasksmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'paintcorrectionmaskmasksmidpoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'paintcorrectionmaskmasksorigin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'paintcorrectionmaskmasksperimetervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'paintcorrectionmaskmasksradius' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'paintcorrectionmaskmasksreferencepoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'paintcorrectionmaskmasksright' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'] }, + 'paintcorrectionmaskmasksroundness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'paintcorrectionmaskmaskssizex' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'paintcorrectionmaskmaskssizey' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'paintcorrectionmaskmaskstop' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'] }, + 'paintcorrectionmaskmasksubtype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'paintcorrectionmaskmasksvalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'paintcorrectionmaskmasksversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'paintcorrectionmaskmaskswhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'paintcorrectionmaskmaskswholeimagearea' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'paintcorrectionmaskmasksx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'] }, + 'paintcorrectionmaskmasksy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'] }, + 'paintcorrectionmaskmasksyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'paintcorrectionmaskmaskszerox' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'paintcorrectionmaskmaskszeroy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'paintcorrectionmaskmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'paintcorrectionmaskmidpoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'] }, + 'paintcorrectionmaskorigin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'] }, + 'paintcorrectionmaskperimetervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'paintcorrectionmaskradius' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'] }, + 'paintcorrectionmaskrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'paintcorrectionmaskrangeareamodels' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'paintcorrectionmaskrangeareamodelscolorsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'paintcorrectionmaskrangeareamodelscomponents' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'paintcorrectionmaskrangecoloramount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'paintcorrectionmaskrangedepthfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'paintcorrectionmaskrangedepthmax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'paintcorrectionmaskrangedepthmin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'paintcorrectionmaskrangeinvert' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'paintcorrectionmaskrangelumfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'paintcorrectionmaskrangeluminancedepthsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'paintcorrectionmaskrangelummax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'paintcorrectionmaskrangelummin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'paintcorrectionmaskrangelumrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'paintcorrectionmaskrangesampletype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'paintcorrectionmaskrangetype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'paintcorrectionmaskrangeversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'paintcorrectionmaskreferencepoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'paintcorrectionmaskright' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'] }, + 'paintcorrectionmaskroundness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'] }, + 'paintcorrectionmasksizex' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'] }, + 'paintcorrectionmasksizey' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'] }, + 'paintcorrectionmasktop' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'] }, + 'paintcorrectionmaskvalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'] }, + 'paintcorrectionmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'] }, + 'paintcorrectionmaskwhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'] }, + 'paintcorrectionmaskwholeimagearea' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'paintcorrectionmaskx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'] }, + 'paintcorrectionmasky' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'] }, + 'paintcorrectionmaskzerox' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'] }, + 'paintcorrectionmaskzeroy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'] }, + 'paintcorrectionmoire' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'] }, + 'paintcorrectionrangemask' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'] }, + 'paintcorrectionrangemaskareamodels' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'paintcorrectionrangemaskareamodelscolorsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'paintcorrectionrangemaskareamodelscomponents' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'paintcorrectionrangemaskcoloramount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'paintcorrectionrangemaskdepthfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'paintcorrectionrangemaskdepthmax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'paintcorrectionrangemaskdepthmin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'paintcorrectionrangemaskinvert' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'paintcorrectionrangemasklumfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'paintcorrectionrangemaskluminancedepthsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'paintcorrectionrangemasklummax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'paintcorrectionrangemasklummin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'paintcorrectionrangemasklumrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'paintcorrectionrangemasksampletype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'paintcorrectionrangemasktype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'] }, + 'paintcorrectionrangemaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'paintcorrectionsaturation' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'] }, + 'paintcorrectionshadows2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'] }, + 'paintcorrectionsharpness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'] }, + 'paintcorrectiontemperature' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'] }, + 'paintcorrectiontexture' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'] }, + 'paintcorrectiontint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'] }, + 'paintcorrectiontoninghue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'] }, + 'paintcorrectiontoningsaturation' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'] }, + 'paintcorrectionwhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'] }, + 'paintcorrectionwhites2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'] }, 'panasonicdatetime' => { 357 => 0x0 }, 'panasonicexifversion' => { 354 => 0x26 }, 'panasonicimageheight' => { 354 => 0x4c }, @@ -5435,20 +5438,20 @@ my %tagLookup = ( 'panasonictitle' => { 125 => 0xc6d2 }, 'panasonictitle2' => { 125 => 0xc6d3 }, 'panoramaangle' => { 133 => 0x1153 }, - 'panoramacropbottom' => { 462 => 0x7 }, - 'panoramacropleft' => { 462 => 0x4 }, - 'panoramacropright' => { 462 => 0x6 }, - 'panoramacroptop' => { 462 => 0x5 }, - 'panoramadirection' => { 77 => 0x5, 133 => 0x1154, 462 => 0x3 }, - 'panoramaframeheight' => { 462 => 0x9 }, + 'panoramacropbottom' => { 464 => 0x7 }, + 'panoramacropleft' => { 464 => 0x4 }, + 'panoramacropright' => { 464 => 0x6 }, + 'panoramacroptop' => { 464 => 0x5 }, + 'panoramadirection' => { 77 => 0x5, 133 => 0x1154, 464 => 0x3 }, + 'panoramaframeheight' => { 464 => 0x9 }, 'panoramaframenumber' => { 77 => 0x2 }, - 'panoramaframewidth' => { 462 => 0x8 }, - 'panoramafullheight' => { 462 => 0x2 }, - 'panoramafullwidth' => { 462 => 0x1 }, + 'panoramaframewidth' => { 464 => 0x8 }, + 'panoramafullheight' => { 464 => 0x2 }, + 'panoramafullwidth' => { 464 => 0x1 }, 'panoramamode' => { 147 => 0x3c, 330 => 0x601 }, - 'panoramasize3d' => { 444 => 0x38 }, - 'panoramasourceheight' => { 462 => 0xb }, - 'panoramasourcewidth' => { 462 => 0xa }, + 'panoramasize3d' => { 446 => 0x38 }, + 'panoramasourceheight' => { 464 => 0xb }, + 'panoramasourcewidth' => { 464 => 0xa }, 'panoramicstitchcameramotion' => { 183 => 'PanoramicStitchCameraMotion', 184 => 0x1 }, 'panoramicstitchmaptype' => { 183 => 'PanoramicStitchMapType', 184 => 0x2 }, 'panoramicstitchphi0' => { 183 => 'PanoramicStitchPhi0', 184 => 0x5 }, @@ -5456,39 +5459,39 @@ my %tagLookup = ( 'panoramicstitchtheta0' => { 183 => 'PanoramicStitchTheta0', 184 => 0x3 }, 'panoramicstitchtheta1' => { 183 => 'PanoramicStitchTheta1', 184 => 0x4 }, 'panoramicstitchversion' => { 184 => 0x0 }, - 'pantry' => { 551 => 'Pantry' }, - 'pantryinstanceid' => { 551 => [\'Pantry','PantryInstanceID'] }, + 'pantry' => { 553 => 'Pantry' }, + 'pantryinstanceid' => { 553 => [\'Pantry','PantryInstanceID'] }, 'parallax' => { 133 => 0xb211, 329 => 0x28 }, 'parameters' => { 343 => 'parameters' }, - 'parametricdarks' => { 521 => 'ParametricDarks', 523 => 'ParametricDarks' }, - 'parametrichighlights' => { 521 => 'ParametricHighlights', 523 => 'ParametricHighlights' }, - 'parametrichighlightsplit' => { 521 => 'ParametricHighlightSplit', 523 => 'ParametricHighlightSplit' }, - 'parametriclights' => { 521 => 'ParametricLights', 523 => 'ParametricLights' }, - 'parametricmidtonesplit' => { 521 => 'ParametricMidtoneSplit', 523 => 'ParametricMidtoneSplit' }, - 'parametricshadows' => { 521 => 'ParametricShadows', 523 => 'ParametricShadows' }, - 'parametricshadowsplit' => { 521 => 'ParametricShadowSplit', 523 => 'ParametricShadowSplit' }, + 'parametricdarks' => { 523 => 'ParametricDarks', 525 => 'ParametricDarks' }, + 'parametrichighlights' => { 523 => 'ParametricHighlights', 525 => 'ParametricHighlights' }, + 'parametrichighlightsplit' => { 523 => 'ParametricHighlightSplit', 525 => 'ParametricHighlightSplit' }, + 'parametriclights' => { 523 => 'ParametricLights', 525 => 'ParametricLights' }, + 'parametricmidtonesplit' => { 523 => 'ParametricMidtoneSplit', 525 => 'ParametricMidtoneSplit' }, + 'parametricshadows' => { 523 => 'ParametricShadows', 525 => 'ParametricShadows' }, + 'parametricshadowsplit' => { 523 => 'ParametricShadowSplit', 525 => 'ParametricShadowSplit' }, 'parentalrating' => { 186 => 'WM/ParentalRating' }, - 'parentid' => { 535 => 'parentId' }, - 'parentmediaeventid' => { 509 => 'ParentMediaEventID' }, - 'parentmeid' => { 509 => 'ParentMEID' }, - 'parentproductid' => { 407 => '@ppi' }, - 'parentreference1' => { 533 => [\'TagStructure','TagStructureParentReference'] }, - 'parentreference2' => { 533 => [\'TagStructure','TagStructureSubLabelsParentReference'] }, - 'parentreference3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsParentReference'] }, - 'parentreference4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentreference5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentreference6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentshorttitle' => { 407 => '@PST' }, - 'parenttitle' => { 407 => '@pti' }, + 'parentid' => { 537 => 'parentId' }, + 'parentmediaeventid' => { 511 => 'ParentMediaEventID' }, + 'parentmeid' => { 511 => 'ParentMEID' }, + 'parentproductid' => { 408 => '@ppi' }, + 'parentreference1' => { 535 => [\'TagStructure','TagStructureParentReference'] }, + 'parentreference2' => { 535 => [\'TagStructure','TagStructureSubLabelsParentReference'] }, + 'parentreference3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsParentReference'] }, + 'parentreference4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentreference5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentreference6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentshorttitle' => { 408 => '@PST' }, + 'parenttitle' => { 408 => '@pti' }, 'partialactivecols1' => { 145 => 0x17e8 }, 'partialactivecols2' => { 145 => 0x17f2 }, 'partialactiverows1' => { 145 => 0x17fc }, 'partialactiverows2' => { 145 => 0x1806 }, - 'partofcompilation' => { 550 => 'partOfCompilation' }, - 'patientbirthdate' => { 496 => 'PatientDOB' }, - 'patientid' => { 496 => 'PatientID' }, - 'patientname' => { 496 => 'PatientName' }, - 'patientsex' => { 496 => 'PatientSex' }, + 'partofcompilation' => { 552 => 'partOfCompilation' }, + 'patientbirthdate' => { 498 => 'PatientDOB' }, + 'patientid' => { 498 => 'PatientID' }, + 'patientname' => { 498 => 'PatientName' }, + 'patientsex' => { 498 => 'PatientSex' }, 'patternareaheight' => { 145 => 0x963 }, 'patternareawidth' => { 145 => 0x962 }, 'patterncorrectionfactorscale' => { 145 => 0x969 }, @@ -5500,52 +5503,52 @@ my %tagLookup = ( 'patternimagerwidth' => { 145 => 0x960 }, 'patternx' => { 145 => 0x966 }, 'patterny' => { 145 => 0x967 }, - 'pdfversion' => { 537 => 'PDFVersion' }, + 'pdfversion' => { 539 => 'PDFVersion' }, 'pentaximagesize' => { 390 => 0x9 }, 'pentaxmodelid' => { 369 => 0x0, 390 => 0x5 }, 'pentaxmodeltype' => { 390 => 0x1 }, 'pentaxversion' => { 390 => 0x0 }, - 'people' => { 499 => 'People', 513 => 'People' }, + 'people' => { 501 => 'People', 515 => 'People' }, 'perchannelblacklevel' => { 44 => 0x157, 45 => 0x16b, 46 => 0x17f, 48 => 0xc4, 49 => [0x2b4,0x2cb,0x2cf], 50 => [0x108,0x14d], 51 => 0x1df, 52 => [0x1f8,0x2d8], 53 => [0x22c,0x30a], 54 => 0x149 }, - 'performer' => { 407 => 'perf', 415 => 'perf' }, - 'performerkeywords' => { 415 => "\xa9prk" }, - 'performers' => { 415 => "\xa9prf" }, - 'performerurl' => { 415 => "\xa9prl" }, + 'performer' => { 408 => 'perf', 416 => 'perf' }, + 'performerkeywords' => { 416 => "\xa9prk" }, + 'performers' => { 416 => "\xa9prf" }, + 'performerurl' => { 416 => "\xa9prl" }, 'period' => { 186 => 'WM/Period' }, - 'peripheralillumcentralradius' => { 493 => 0x8030 }, - 'peripheralillumcentralvalue' => { 493 => 0x8031 }, + 'peripheralillumcentralradius' => { 495 => 0x8030 }, + 'peripheralillumcentralvalue' => { 495 => 0x8031 }, 'peripheralillumination' => { 109 => 0x20702, 115 => 0x68 }, 'peripheralilluminationcorr' => { 67 => 0x1, 379 => 0x2 }, 'peripheralilluminationon' => { 109 => '0x20702.0', 115 => 0x64 }, - 'peripheralillumperiphvalue' => { 493 => 0x8032 }, + 'peripheralillumperiphvalue' => { 495 => 0x8032 }, 'peripherallighting' => { 84 => 0x2, 133 => 0x3804 }, 'peripherallightingsetting' => { 85 => 0x5 }, 'peripherallightingvalue' => { 84 => 0x6 }, - 'permissions' => { 543 => 'permissions' }, - 'permits' => { 519 => 'permits' }, - 'person' => { 540 => 'person' }, - 'personality' => { 509 => 'Personality' }, - 'personheard' => { 535 => 'PersonHeard' }, - 'personheardidentifier' => { 535 => [\'PersonHeard','PersonHeardIdentifier'] }, - 'personheardname' => { 535 => [\'PersonHeard','PersonHeardName'] }, - 'personinimage' => { 535 => 'PersonInImage' }, - 'personinimagecharacteristic' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristic'] }, - 'personinimagecvtermcvid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvId'] }, - 'personinimagecvtermid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermId'] }, - 'personinimagecvtermname' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermName'] }, - 'personinimagecvtermrefinedabout' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermRefinedAbout'] }, - 'personinimagedescription' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonDescription'] }, - 'personinimageid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonId'] }, - 'personinimagename' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonName'] }, - 'personinimagewdetails' => { 535 => 'PersonInImageWDetails' }, - 'perspectiveaspect' => { 521 => 'PerspectiveAspect', 523 => 'PerspectiveAspect' }, - 'perspectivehorizontal' => { 521 => 'PerspectiveHorizontal', 523 => 'PerspectiveHorizontal' }, - 'perspectiverotate' => { 521 => 'PerspectiveRotate', 523 => 'PerspectiveRotate' }, - 'perspectivescale' => { 521 => 'PerspectiveScale', 523 => 'PerspectiveScale' }, - 'perspectiveupright' => { 521 => 'PerspectiveUpright', 523 => 'PerspectiveUpright' }, - 'perspectivevertical' => { 521 => 'PerspectiveVertical', 523 => 'PerspectiveVertical' }, - 'perspectivex' => { 521 => 'PerspectiveX', 523 => 'PerspectiveX' }, - 'perspectivey' => { 521 => 'PerspectiveY', 523 => 'PerspectiveY' }, + 'permissions' => { 545 => 'permissions' }, + 'permits' => { 521 => 'permits' }, + 'person' => { 542 => 'person' }, + 'personality' => { 511 => 'Personality' }, + 'personheard' => { 537 => 'PersonHeard' }, + 'personheardidentifier' => { 537 => [\'PersonHeard','PersonHeardIdentifier'] }, + 'personheardname' => { 537 => [\'PersonHeard','PersonHeardName'] }, + 'personinimage' => { 537 => 'PersonInImage' }, + 'personinimagecharacteristic' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristic'] }, + 'personinimagecvtermcvid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvId'] }, + 'personinimagecvtermid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermId'] }, + 'personinimagecvtermname' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermName'] }, + 'personinimagecvtermrefinedabout' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermRefinedAbout'] }, + 'personinimagedescription' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonDescription'] }, + 'personinimageid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonId'] }, + 'personinimagename' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonName'] }, + 'personinimagewdetails' => { 537 => 'PersonInImageWDetails' }, + 'perspectiveaspect' => { 523 => 'PerspectiveAspect', 525 => 'PerspectiveAspect' }, + 'perspectivehorizontal' => { 523 => 'PerspectiveHorizontal', 525 => 'PerspectiveHorizontal' }, + 'perspectiverotate' => { 523 => 'PerspectiveRotate', 525 => 'PerspectiveRotate' }, + 'perspectivescale' => { 523 => 'PerspectiveScale', 525 => 'PerspectiveScale' }, + 'perspectiveupright' => { 523 => 'PerspectiveUpright', 525 => 'PerspectiveUpright' }, + 'perspectivevertical' => { 523 => 'PerspectiveVertical', 525 => 'PerspectiveVertical' }, + 'perspectivex' => { 523 => 'PerspectiveX', 525 => 'PerspectiveX' }, + 'perspectivey' => { 523 => 'PerspectiveY', 525 => 'PerspectiveY' }, 'pf0customfuncregistration' => { 98 => 0x1 }, 'pf10retainprogramshift' => { 98 => 0xb }, 'pf13drivepriority' => { 98 => 0xe }, @@ -5608,11 +5611,11 @@ my %tagLookup = ( 'photoeffectsgreen' => { 304 => 0x6 }, 'photoeffectsred' => { 304 => 0x4 }, 'photoeffectstype' => { 304 => 0x0 }, - 'photographer' => { 125 => 0xa437, 528 => 'Photographer' }, - 'photographicsensitivity' => { 528 => 'PhotographicSensitivity' }, + 'photographer' => { 125 => 0xa437, 530 => 'Photographer' }, + 'photographicsensitivity' => { 530 => 'PhotographicSensitivity' }, 'photoidentifier' => { 1 => 0x2b }, 'photoinfoplayback' => { 309 => '17.6', 318 => '33.6' }, - 'photometricinterpretation' => { 125 => 0x106, 546 => 'PhotometricInterpretation' }, + 'photometricinterpretation' => { 125 => 0x106, 548 => 'PhotometricInterpretation' }, 'photosappfeatureflags' => { 1 => 0x1f }, 'photoshootingmenubank' => { 249 => 0x11e, 250 => 0x11e, 251 => 0x112, 252 => 0x122, 253 => 0x122, 254 => 0x24, 272 => 0x0 }, 'photoshootingmenubankimagearea' => { 246 => 0x6dd, 249 => 0x144, 250 => 0x144, 251 => 0x134, 252 => 0x148, 253 => 0x148, 272 => '7.1' }, @@ -5620,10 +5623,10 @@ my %tagLookup = ( 'photoshopquality' => { 403 => 0x0 }, 'photoshopthumbnail' => { 404 => 0x40c }, 'photostyle' => { 354 => 0x89 }, - 'picasawebgphotoid' => { 526 => 'picasawebGPhotoId' }, - 'pick' => { 550 => 'pick' }, - 'picklabel' => { 526 => 'PickLabel' }, - 'pictinfo' => { 431 => 0x208 }, + 'picasawebgphotoid' => { 528 => 'picasawebGPhotoId' }, + 'pick' => { 552 => 'pick' }, + 'picklabel' => { 528 => 'PickLabel' }, + 'pictinfo' => { 433 => 0x208 }, 'picturecontrol' => { 302 => 0xe2173c47 }, 'picturecontrolactive' => { 305 => 0x0 }, 'picturecontroladjust' => { 260 => 0x30, 261 => 0x30, 262 => 0x36 }, @@ -5632,10 +5635,10 @@ my %tagLookup = ( 'picturecontrolmode' => { 305 => 0x13 }, 'picturecontrolname' => { 260 => 0x4, 261 => 0x4, 262 => 0x8 }, 'picturecontrolquickadjust' => { 260 => 0x31, 261 => 0x31, 262 => 0x37 }, - 'pictureeffect' => { 456 => 0x200e }, - 'pictureeffect2' => { 465 => 0x1163, 466 => 0x1167, 467 => 0x1143, 468 => 0x11bf, 469 => 0x119b, 470 => 0x1053, 471 => 0x24b, 472 => 0x24b, 473 => 0x23c, 488 => 0x46 }, + 'pictureeffect' => { 458 => 0x200e }, + 'pictureeffect2' => { 467 => 0x1163, 468 => 0x1167, 469 => 0x1143, 470 => 0x11bf, 471 => 0x119b, 472 => 0x1053, 473 => 0x24b, 474 => 0x24b, 475 => 0x23c, 490 => 0x46 }, 'picturefinish' => { 189 => 0x71 }, - 'picturemode' => { 133 => 0x1031, 330 => 0x520, 390 => [0xb,0x33], 432 => 0x3d }, + 'picturemode' => { 133 => 0x1031, 330 => 0x520, 390 => [0xb,0x33], 434 => 0x3d }, 'picturemode2' => { 370 => 0x0 }, 'picturemodebwfilter' => { 330 => 0x525 }, 'picturemodecontrast' => { 330 => 0x523 }, @@ -5644,27 +5647,27 @@ my %tagLookup = ( 'picturemodesaturation' => { 330 => 0x521 }, 'picturemodesharpness' => { 330 => 0x524 }, 'picturemodetone' => { 330 => 0x526 }, - 'pictureprofile' => { 465 => [0x115e,0x115f], 466 => [0x1162,0x1163], 467 => [0x113e,0x113f], 468 => [0x11ba,0x11bb], 469 => [0x1196,0x1197], 470 => [0x104e,0x104f], 471 => [0x246,0x247], 472 => [0x246,0x247], 473 => [0x237,0x238] }, + 'pictureprofile' => { 467 => [0x115e,0x115f], 468 => [0x1162,0x1163], 469 => [0x113e,0x113f], 470 => [0x11ba,0x11bb], 471 => [0x1196,0x1197], 472 => [0x104e,0x104f], 473 => [0x246,0x247], 474 => [0x246,0x247], 475 => [0x237,0x238] }, 'picturestyle' => { 8 => [0x4b,0x51], 9 => 0xf4, 10 => 0x6c, 11 => 0x86, 12 => 0x73, 16 => 0xab, 17 => 0xa7, 18 => 0xb0, 19 => 0x6c, 20 => 0xa7, 21 => 0xf4, 22 => 0xb3, 24 => 0xf4, 25 => 0xfa, 27 => 0x169, 79 => 0xa, 109 => 0x20301, 115 => 0x2 }, 'picturestylepc' => { 69 => 0x4009 }, 'picturestyleuserdef' => { 69 => 0x4008 }, - 'picturewizard' => { 429 => 0x21 }, - 'picturewizardcolor' => { 428 => 0x1 }, - 'picturewizardcontrast' => { 428 => 0x4 }, - 'picturewizardmode' => { 428 => 0x0 }, - 'picturewizardsaturation' => { 428 => 0x2 }, - 'picturewizardsharpness' => { 428 => 0x3 }, + 'picturewizard' => { 431 => 0x21 }, + 'picturewizardcolor' => { 430 => 0x1 }, + 'picturewizardcontrast' => { 430 => 0x4 }, + 'picturewizardmode' => { 430 => 0x0 }, + 'picturewizardsaturation' => { 430 => 0x2 }, + 'picturewizardsharpness' => { 430 => 0x3 }, 'pipelineversion' => { 183 => 'PipelineVersion' }, - 'pitch' => { 121 => 0x6, 310 => '4.1', 322 => '4.1', 415 => ['ptch',"\xa9fpt"] }, - 'pitchangle' => { 66 => 0x5, 258 => 0x4, 330 => 0x904, 344 => 'PitchAngle', 354 => 0x91, 388 => 0x2, 389 => 0x5, 427 => 0x1 }, - 'pitchshift' => { 409 => 'player.movie.audio.pitchshift' }, - 'pixelaspectratio' => { 408 => 'pasp' }, + 'pitch' => { 121 => 0x6, 310 => '4.1', 322 => '4.1', 416 => ['ptch',"\xa9fpt"] }, + 'pitchangle' => { 66 => 0x5, 258 => 0x4, 330 => 0x904, 344 => 'PitchAngle', 354 => 0x91, 388 => 0x2, 389 => 0x5, 429 => 0x1 }, + 'pitchshift' => { 407 => 'player.movie.audio.pitchshift', 410 => 'player.movie.audio.pitchshift' }, + 'pixelaspectratio' => { 409 => 'pasp' }, 'pixelclockfrequency' => { 145 => 0x40b }, 'pixelcorrectionoffset' => { 145 => 0x972 }, 'pixelcorrectionscale' => { 145 => 0x971 }, 'pixelscale' => { 125 => 0x830e }, 'pixelshiftdelay' => { 247 => 0x38c, 250 => 0x802 }, - 'pixelshiftinfo' => { 456 => 0x202f }, + 'pixelshiftinfo' => { 458 => 0x202f }, 'pixelshiftinterval' => { 247 => 0x38e }, 'pixelshiftnumbershots' => { 247 => 0x38a, 250 => 0x800 }, 'pixelshiftoffset' => { 133 => 0x1106 }, @@ -5674,29 +5677,29 @@ my %tagLookup = ( 'pixelsperunitx' => { 342 => 0x0 }, 'pixelsperunity' => { 342 => 0x4 }, 'pixelunits' => { 342 => 0x8 }, - 'planarconfiguration' => { 125 => 0x11c, 546 => 'PlanarConfiguration' }, - 'plane' => { 497 => [\'Planes','PlanesPlane'] }, - 'planeboundary' => { 497 => [\'Planes','PlanesPlaneBoundary'] }, - 'planeboundaryvertexcount' => { 497 => [\'Planes','PlanesPlaneBoundaryVertexCount'] }, - 'planeextentx' => { 497 => [\'Planes','PlanesPlaneExtentX'] }, - 'planeextentz' => { 497 => [\'Planes','PlanesPlaneExtentZ'] }, - 'planepose' => { 497 => [\'Planes','PlanesPlanePose'] }, - 'planeposepositionx' => { 497 => [\'Planes','PlanesPlanePosePositionX'] }, - 'planeposepositiony' => { 497 => [\'Planes','PlanesPlanePosePositionY'] }, - 'planeposepositionz' => { 497 => [\'Planes','PlanesPlanePosePositionZ'] }, - 'planeposerotationw' => { 497 => [\'Planes','PlanesPlanePoseRotationW'] }, - 'planeposerotationx' => { 497 => [\'Planes','PlanesPlanePoseRotationX'] }, - 'planeposerotationy' => { 497 => [\'Planes','PlanesPlanePoseRotationY'] }, - 'planeposerotationz' => { 497 => [\'Planes','PlanesPlanePoseRotationZ'] }, - 'planeposetimestamp' => { 497 => [\'Planes','PlanesPlanePoseTimestamp'] }, - 'planes' => { 497 => 'Planes' }, - 'planningref' => { 535 => 'PlanningRef' }, - 'planningrefidentifier' => { 535 => [\'PlanningRef','PlanningRefIdentifier'] }, - 'planningrefname' => { 535 => [\'PlanningRef','PlanningRefName'] }, - 'planningrefrole' => { 535 => [\'PlanningRef','PlanningRefRole'] }, - 'platenames' => { 555 => 'PlateNames' }, - 'platform' => { 540 => 'platform' }, - 'playallframes' => { 415 => 'AllF' }, + 'planarconfiguration' => { 125 => 0x11c, 548 => 'PlanarConfiguration' }, + 'plane' => { 499 => [\'Planes','PlanesPlane'] }, + 'planeboundary' => { 499 => [\'Planes','PlanesPlaneBoundary'] }, + 'planeboundaryvertexcount' => { 499 => [\'Planes','PlanesPlaneBoundaryVertexCount'] }, + 'planeextentx' => { 499 => [\'Planes','PlanesPlaneExtentX'] }, + 'planeextentz' => { 499 => [\'Planes','PlanesPlaneExtentZ'] }, + 'planepose' => { 499 => [\'Planes','PlanesPlanePose'] }, + 'planeposepositionx' => { 499 => [\'Planes','PlanesPlanePosePositionX'] }, + 'planeposepositiony' => { 499 => [\'Planes','PlanesPlanePosePositionY'] }, + 'planeposepositionz' => { 499 => [\'Planes','PlanesPlanePosePositionZ'] }, + 'planeposerotationw' => { 499 => [\'Planes','PlanesPlanePoseRotationW'] }, + 'planeposerotationx' => { 499 => [\'Planes','PlanesPlanePoseRotationX'] }, + 'planeposerotationy' => { 499 => [\'Planes','PlanesPlanePoseRotationY'] }, + 'planeposerotationz' => { 499 => [\'Planes','PlanesPlanePoseRotationZ'] }, + 'planeposetimestamp' => { 499 => [\'Planes','PlanesPlanePoseTimestamp'] }, + 'planes' => { 499 => 'Planes' }, + 'planningref' => { 537 => 'PlanningRef' }, + 'planningrefidentifier' => { 537 => [\'PlanningRef','PlanningRefIdentifier'] }, + 'planningrefname' => { 537 => [\'PlanningRef','PlanningRefName'] }, + 'planningrefrole' => { 537 => [\'PlanningRef','PlanningRefRole'] }, + 'platenames' => { 557 => 'PlateNames' }, + 'platform' => { 542 => 'platform' }, + 'playallframes' => { 416 => 'AllF' }, 'playbackbutton' => { 250 => 0x804, 253 => 0x808 }, 'playbackbuttonplaybackmode' => { 250 => 0x80e, 253 => 0x814 }, 'playbackflickdown' => { 325 => 0x149, 326 => 0x159, 327 => 0x159, 328 => 0x171 }, @@ -5705,18 +5708,18 @@ my %tagLookup = ( 'playbackmonitorofftime' => { 309 => '25.2', 310 => '36.1', 312 => '36.1', 313 => '36.1', 317 => '35.1', 318 => '8.1', 319 => '35.1', 322 => '36.1', 323 => '36.1', 324 => '21.1', 325 => 0x37, 326 => 0x33, 327 => 0x33, 328 => 0x33 }, 'playbackzoom' => { 310 => '37.1' }, 'playdisplay' => { 191 => 0x4e }, - 'playerversion' => { 409 => 'player.version' }, - 'playgap' => { 407 => 'pgap' }, - 'playmode' => { 415 => 'SDLN' }, - 'playselection' => { 415 => 'SelO' }, + 'playerversion' => { 410 => 'player.version' }, + 'playgap' => { 408 => 'pgap' }, + 'playmode' => { 416 => 'SDLN' }, + 'playselection' => { 416 => 'SelO' }, 'plusversion' => { 340 => 'Version' }, 'pmversion' => { 402 => 'PMVersion' }, 'pngwarning' => { 343 => 'Warning' }, - 'podcast' => { 407 => 'pcst' }, - 'podcasturl' => { 407 => 'purl' }, + 'podcast' => { 408 => 'pcst' }, + 'podcasturl' => { 408 => 'purl' }, 'poilevel' => { 242 => 0x8 }, 'portraitimpressionbalance' => { 247 => 0x378, 249 => 0x26e, 250 => 0x26e, 263 => 0xa0 }, - 'portraitnote' => { 501 => 'PortraitNote' }, + 'portraitnote' => { 503 => 'PortraitNote' }, 'portraitoutputhighlightpoint' => { 115 => 0x1d }, 'portraitoutputshadowpoint' => { 115 => 0x1e }, 'portraitrawcolortone' => { 115 => 0x16 }, @@ -5729,41 +5732,41 @@ my %tagLookup = ( 'portraitrawshadowpoint' => { 115 => 0x1c }, 'portraitrawsharpness' => { 115 => 0x1a }, 'portraitrefiner' => { 119 => 0x302b }, - 'portraitrequest' => { 501 => 'PortraitRequest' }, + 'portraitrequest' => { 503 => 'PortraitRequest' }, 'portraitunsharpmaskfineness' => { 115 => 0x9a }, 'portraitunsharpmaskstrength' => { 115 => 0x98 }, 'portraitunsharpmaskthreshold' => { 115 => 0x9c }, - 'portraitversion' => { 501 => 'PortraitVersion' }, - 'pose' => { 497 => 'Pose' }, - 'poseheadingdegrees' => { 507 => 'PoseHeadingDegrees' }, - 'posepitchdegrees' => { 507 => 'PosePitchDegrees' }, - 'posepositionx' => { 497 => [\'Pose','PosePositionX'] }, - 'posepositiony' => { 497 => [\'Pose','PosePositionY'] }, - 'posepositionz' => { 497 => [\'Pose','PosePositionZ'] }, - 'poserolldegrees' => { 507 => 'PoseRollDegrees' }, - 'poserotationw' => { 497 => [\'Pose','PoseRotationW'] }, - 'poserotationx' => { 497 => [\'Pose','PoseRotationX'] }, - 'poserotationy' => { 497 => [\'Pose','PoseRotationY'] }, - 'poserotationz' => { 497 => [\'Pose','PoseRotationZ'] }, - 'posetimestamp' => { 497 => [\'Pose','PoseTimestamp'] }, - 'positiondescriptor' => { 539 => 'positionDescriptor' }, + 'portraitversion' => { 503 => 'PortraitVersion' }, + 'pose' => { 499 => 'Pose' }, + 'poseheadingdegrees' => { 509 => 'PoseHeadingDegrees' }, + 'posepitchdegrees' => { 509 => 'PosePitchDegrees' }, + 'posepositionx' => { 499 => [\'Pose','PosePositionX'] }, + 'posepositiony' => { 499 => [\'Pose','PosePositionY'] }, + 'posepositionz' => { 499 => [\'Pose','PosePositionZ'] }, + 'poserolldegrees' => { 509 => 'PoseRollDegrees' }, + 'poserotationw' => { 499 => [\'Pose','PoseRotationW'] }, + 'poserotationx' => { 499 => [\'Pose','PoseRotationX'] }, + 'poserotationy' => { 499 => [\'Pose','PoseRotationY'] }, + 'poserotationz' => { 499 => [\'Pose','PoseRotationZ'] }, + 'posetimestamp' => { 499 => [\'Pose','PoseTimestamp'] }, + 'positiondescriptor' => { 541 => 'positionDescriptor' }, 'postalcode' => { 168 => 'PostalCode' }, - 'postcropvignetteamount' => { 521 => 'PostCropVignetteAmount', 523 => 'PostCropVignetteAmount' }, - 'postcropvignettefeather' => { 521 => 'PostCropVignetteFeather', 523 => 'PostCropVignetteFeather' }, - 'postcropvignettehighlightcontrast' => { 521 => 'PostCropVignetteHighlightContrast', 523 => 'PostCropVignetteHighlightContrast' }, - 'postcropvignettemidpoint' => { 521 => 'PostCropVignetteMidpoint', 523 => 'PostCropVignetteMidpoint' }, - 'postcropvignetteroundness' => { 521 => 'PostCropVignetteRoundness', 523 => 'PostCropVignetteRoundness' }, - 'postcropvignettestyle' => { 521 => 'PostCropVignetteStyle', 523 => 'PostCropVignetteStyle' }, + 'postcropvignetteamount' => { 523 => 'PostCropVignetteAmount', 525 => 'PostCropVignetteAmount' }, + 'postcropvignettefeather' => { 523 => 'PostCropVignetteFeather', 525 => 'PostCropVignetteFeather' }, + 'postcropvignettehighlightcontrast' => { 523 => 'PostCropVignetteHighlightContrast', 525 => 'PostCropVignetteHighlightContrast' }, + 'postcropvignettemidpoint' => { 523 => 'PostCropVignetteMidpoint', 525 => 'PostCropVignetteMidpoint' }, + 'postcropvignetteroundness' => { 523 => 'PostCropVignetteRoundness', 525 => 'PostCropVignetteRoundness' }, + 'postcropvignettestyle' => { 523 => 'PostCropVignetteStyle', 525 => 'PostCropVignetteStyle' }, 'postfocusmerging' => { 354 => 0xbf }, 'postreleaseburstlength' => { 252 => 0x714, 253 => 0x784, 326 => 0x289 }, - 'potentialface1position' => { 452 => 0xb }, - 'potentialface2position' => { 452 => 0x15 }, - 'potentialface3position' => { 452 => 0x1f }, - 'potentialface4position' => { 452 => 0x29 }, - 'potentialface5position' => { 452 => 0x33 }, - 'potentialface6position' => { 452 => 0x3d }, - 'potentialface7position' => { 452 => 0x47 }, - 'potentialface8position' => { 452 => 0x51 }, + 'potentialface1position' => { 454 => 0xb }, + 'potentialface2position' => { 454 => 0x15 }, + 'potentialface3position' => { 454 => 0x1f }, + 'potentialface4position' => { 454 => 0x29 }, + 'potentialface5position' => { 454 => 0x33 }, + 'potentialface6position' => { 454 => 0x3d }, + 'potentialface7position' => { 454 => 0x47 }, + 'potentialface8position' => { 454 => 0x51 }, 'poweravailable' => { 368 => '0.2' }, 'powersource' => { 368 => '0.1' }, 'poweruptime' => { 243 => 0xb6 }, @@ -5774,13 +5777,13 @@ my %tagLookup = ( 'prefs' => { 138 => 0xdd, 402 => 'Prefs' }, 'prereadfastresetcount' => { 145 => 0x187e }, 'prereleaseburstlength' => { 252 => 0x712, 253 => 0x782, 326 => 0x287 }, - 'preservedfilename' => { 551 => 'PreservedFileName' }, + 'preservedfilename' => { 553 => 'PreservedFileName' }, 'preservedspecimen' => { 124 => 'PreservedSpecimen' }, 'preservedspecimenmaterialsampleid' => { 124 => [\'PreservedSpecimen','PreservedSpecimenMaterialSampleID'] }, - 'presettype' => { 521 => 'PresetType', 523 => 'PresetType' }, - 'presetwhitebalance' => { 191 => 0x24, 493 => 0x8002 }, - 'presetwhitebalanceadj' => { 493 => 0x8014 }, - 'pressure' => { 125 => 0x9402, 528 => 'Pressure' }, + 'presettype' => { 523 => 'PresetType', 525 => 'PresetType' }, + 'presetwhitebalance' => { 191 => 0x24, 495 => 0x8002 }, + 'presetwhitebalanceadj' => { 495 => 0x8014 }, + 'pressure' => { 125 => 0x9402, 530 => 'Pressure' }, 'previewapplicationname' => { 125 => 0xc716 }, 'previewapplicationversion' => { 125 => 0xc717 }, 'previewbutton' => { 309 => ['14.1','15.1'], 310 => '15.1', 312 => '15.1', 313 => '15.1', 318 => '29.1', 319 => '14.1', 322 => '15.1', 323 => '15.1' }, @@ -5790,15 +5793,15 @@ my %tagLookup = ( 'previewcropleft' => { 401 => 0xec }, 'previewcropright' => { 401 => 0xee }, 'previewcroptop' => { 401 => 0xed }, - 'previewdate' => { 413 => 0x0 }, + 'previewdate' => { 414 => 0x0 }, 'previewdatetime' => { 125 => 0xc71b }, - 'previewimage' => { 119 => 0x2000, 120 => 'Exif-PreviewImage', 126 => 'PreviewImage', 128 => 0x4, 173 => 'data', 193 => 0x81, 335 => 0x280, 352 => 0x300, 407 => 'snal', 415 => 'mcvr', 456 => 0x2001 }, + 'previewimage' => { 119 => 0x2000, 120 => 'Exif-PreviewImage', 126 => 'PreviewImage', 128 => 0x4, 173 => 'data', 193 => 0x81, 335 => 0x280, 352 => 0x300, 408 => 'snal', 416 => 'mcvr', 458 => 0x2001 }, 'previewimageborders' => { 390 => 0x3e }, 'previewimageheight' => { 78 => 0x4, 149 => 0xfa58 }, - 'previewimagelength' => { 78 => 0x2, 119 => 0x3, 125 => [0x117,0x202], 193 => 0x89, 264 => 0x202, 330 => 0x102, 335 => 0x1037, 390 => 0x3, 421 => 0x1e, 426 => 0x3, 432 => [0x1b,0x1d], 445 => 0x202 }, + 'previewimagelength' => { 78 => 0x2, 119 => 0x3, 125 => [0x117,0x202], 193 => 0x89, 264 => 0x202, 330 => 0x102, 335 => 0x1037, 390 => 0x3, 423 => 0x1e, 428 => 0x3, 434 => [0x1b,0x1d], 447 => 0x202 }, 'previewimagename' => { 173 => '1Name' }, - 'previewimagesize' => { 119 => 0x2, 154 => 0x2, 173 => 'ImageSize', 390 => 0x2, 432 => [0x1c,0x1e], 456 => 0xb02c, 493 => 0x9012 }, - 'previewimagestart' => { 78 => 0x5, 119 => 0x4, 125 => [0x111,0x201], 193 => 0x88, 264 => 0x201, 330 => 0x101, 335 => 0x1036, 390 => 0x4, 421 => 0x1c, 426 => 0x2, 432 => [0x1a,0x1c], 445 => 0x201 }, + 'previewimagesize' => { 119 => 0x2, 154 => 0x2, 173 => 'ImageSize', 390 => 0x2, 434 => [0x1c,0x1e], 458 => 0xb02c, 495 => 0x9012 }, + 'previewimagestart' => { 78 => 0x5, 119 => 0x4, 125 => [0x111,0x201], 193 => 0x88, 264 => 0x201, 330 => 0x101, 335 => 0x1036, 390 => 0x4, 423 => 0x1c, 428 => 0x2, 434 => [0x1a,0x1c], 447 => 0x201 }, 'previewimagetype' => { 173 => '0Type' }, 'previewimagevalid' => { 330 => 0x100, 335 => 0x1035 }, 'previewimagewidth' => { 78 => 0x3, 149 => 0xfa57 }, @@ -5806,36 +5809,36 @@ my %tagLookup = ( 'previewsettingsdigest' => { 125 => 0xc719 }, 'previewsettingsname' => { 125 => 0xc718 }, 'primaryafpoint' => { 200 => [0x38,0x44,0x7,0x8] }, - 'primarychromaticities' => { 125 => 0x13f, 546 => 'PrimaryChromaticities' }, - 'primaryftp' => { 509 => 'PrimaryFTP' }, + 'primarychromaticities' => { 125 => 0x13f, 548 => 'PrimaryChromaticities' }, + 'primaryftp' => { 511 => 'PrimaryFTP' }, 'primaryslot' => { 254 => 0x25, 272 => 0x2 }, 'printim' => { 125 => 0xc4a5 }, - 'prioritysetinawb' => { 456 => 0x202b }, - 'prioritysetupshutterrelease' => { 191 => 0x1d, 442 => 0x28 }, - 'privatertkinfo' => { 512 => 'privateRTKInfo' }, + 'prioritysetinawb' => { 458 => 0x202b }, + 'prioritysetupshutterrelease' => { 191 => 0x1d, 444 => 0x28 }, + 'privatertkinfo' => { 514 => 'privateRTKInfo' }, 'processbordercolsleft' => { 145 => 0xc61 }, 'processbordercolsright' => { 145 => 0xc62 }, 'processborderrowsbottom' => { 145 => 0xc64 }, 'processborderrowstop' => { 145 => 0xc63 }, 'processingsoftware' => { 125 => 0xb }, - 'processversion' => { 521 => 'ProcessVersion', 523 => 'ProcessVersion' }, - 'producer' => { 186 => 'WM/Producer', 339 => 'Producer', 407 => "\xa9prd", 409 => 'producer', 415 => "\xa9prd", 537 => 'Producer' }, - 'producerkeywords' => { 415 => "\xa9pdk" }, - 'productcode' => { 540 => 'productCode' }, - 'productid' => { 139 => 0x32, 407 => 'prID', 539 => 'productID' }, - 'productidtype' => { 539 => 'productIDType' }, - 'productinimage' => { 535 => 'ProductInImage' }, - 'productinimagedescription' => { 535 => [\'ProductInImage','ProductInImageProductDescription'] }, - 'productinimagegtin' => { 535 => [\'ProductInImage','ProductInImageProductGTIN'] }, - 'productinimagename' => { 535 => [\'ProductInImage','ProductInImageProductName'] }, - 'productinimageproductid' => { 535 => [\'ProductInImage','ProductInImageProductId'] }, + 'processversion' => { 523 => 'ProcessVersion', 525 => 'ProcessVersion' }, + 'producer' => { 186 => 'WM/Producer', 339 => 'Producer', 408 => "\xa9prd", 410 => 'producer', 416 => "\xa9prd", 539 => 'Producer' }, + 'producerkeywords' => { 416 => "\xa9pdk" }, + 'productcode' => { 542 => 'productCode' }, + 'productid' => { 139 => 0x32, 408 => 'prID', 541 => 'productID' }, + 'productidtype' => { 541 => 'productIDType' }, + 'productinimage' => { 537 => 'ProductInImage' }, + 'productinimagedescription' => { 537 => [\'ProductInImage','ProductInImageProductDescription'] }, + 'productinimagegtin' => { 537 => [\'ProductInImage','ProductInImageProductGTIN'] }, + 'productinimagename' => { 537 => [\'ProductInImage','ProductInImageProductName'] }, + 'productinimageproductid' => { 537 => [\'ProductInImage','ProductInImageProductId'] }, 'productioncode' => { 369 => 0x2 }, 'productorserviceconstraints' => { 340 => 'ProductOrServiceConstraints' }, - 'productversion' => { 407 => 'VERS' }, - 'profession' => { 540 => 'profession' }, - 'profile' => { 497 => [\'Profiles','ProfilesProfile'] }, + 'productversion' => { 408 => 'VERS' }, + 'profession' => { 542 => 'profession' }, + 'profile' => { 499 => [\'Profiles','ProfilesProfile'] }, 'profilecalibrationsig' => { 125 => 0xc6f4 }, - 'profilecameraindices' => { 497 => [\'Profiles','ProfilesProfileCameraIndices'] }, + 'profilecameraindices' => { 499 => [\'Profiles','ProfilesProfileCameraIndices'] }, 'profilecopyright' => { 125 => 0xc6fe }, 'profiledynamicrange' => { 125 => 0xcd47 }, 'profileembedpolicy' => { 125 => 0xc6fd }, @@ -5851,45 +5854,45 @@ my %tagLookup = ( 'profilelooktabledims' => { 125 => 0xc725 }, 'profilelooktableencoding' => { 125 => 0xc7a4 }, 'profilename' => { 125 => 0xc6f8, 341 => 'iCCP-name' }, - 'profiles' => { 497 => 'Profiles' }, + 'profiles' => { 499 => 'Profiles' }, 'profiletonecurve' => { 125 => 0xc6fc }, - 'profiletype' => { 497 => [\'Profiles','ProfilesProfileType'] }, + 'profiletype' => { 499 => [\'Profiles','ProfilesProfileType'] }, 'programiso' => { 354 => 0x3c }, 'programline' => { 370 => '1.1' }, 'programmode' => { 196 => 0x5 }, 'programshift' => { 243 => 0xd }, 'programversion' => { 138 => 0x46 }, - 'prohibits' => { 519 => 'prohibits' }, - 'projectiontype' => { 507 => 'ProjectionType', 508 => 'ProjectionType' }, - 'projectname' => { 550 => 'projectName' }, - 'projectref' => { 550 => 'projectRef' }, - 'projectrefpath' => { 550 => [\'projectRef','projectRefPath'] }, - 'projectreftype' => { 550 => [\'projectRef','projectRefType'] }, + 'prohibits' => { 521 => 'prohibits' }, + 'projectiontype' => { 509 => 'ProjectionType', 510 => 'ProjectionType' }, + 'projectname' => { 552 => 'projectName' }, + 'projectref' => { 552 => 'projectRef' }, + 'projectrefpath' => { 552 => [\'projectRef','projectRefPath'] }, + 'projectreftype' => { 552 => [\'projectRef','projectRefType'] }, 'promotionurl' => { 186 => 'WM/PromotionURL' }, 'propertyreleaseid' => { 340 => 'PropertyReleaseID' }, 'propertyreleasestatus' => { 340 => 'PropertyReleaseStatus' }, 'provider' => { 186 => 'WM/Provider' }, 'province-state' => { 138 => 0x5f }, - 'publicationdate' => { 540 => 'publicationDate' }, - 'publicationdatea-platform' => { 540 => [\'publicationDate','publicationDateA-platform'] }, - 'publicationdatedate' => { 540 => [\'publicationDate','publicationDateDate'] }, - 'publicationdisplaydate' => { 540 => 'publicationDisplayDate' }, - 'publicationdisplaydatea-platform' => { 540 => [\'publicationDisplayDate','publicationDisplayDateA-platform'] }, - 'publicationdisplaydatedate' => { 540 => [\'publicationDisplayDate','publicationDisplayDateDate'] }, - 'publicationevent' => { 535 => 'PublicationEvent' }, - 'publicationeventdate' => { 535 => [\'PublicationEvent','PublicationEventDate'] }, - 'publicationeventidentifier' => { 535 => [\'PublicationEvent','PublicationEventIdentifier'] }, - 'publicationeventname' => { 535 => [\'PublicationEvent','PublicationEventName'] }, - 'publicationname' => { 540 => 'publicationName' }, - 'publisher' => { 186 => 'WM/Publisher', 407 => "\xa9pub", 409 => 'publisher', 524 => 'publisher' }, - 'publishingfrequency' => { 540 => 'publishingFrequency' }, - 'pulldown' => { 550 => 'pullDown' }, - 'purchasedate' => { 407 => 'purd' }, + 'publicationdate' => { 542 => 'publicationDate' }, + 'publicationdatea-platform' => { 542 => [\'publicationDate','publicationDateA-platform'] }, + 'publicationdatedate' => { 542 => [\'publicationDate','publicationDateDate'] }, + 'publicationdisplaydate' => { 542 => 'publicationDisplayDate' }, + 'publicationdisplaydatea-platform' => { 542 => [\'publicationDisplayDate','publicationDisplayDateA-platform'] }, + 'publicationdisplaydatedate' => { 542 => [\'publicationDisplayDate','publicationDisplayDateDate'] }, + 'publicationevent' => { 537 => 'PublicationEvent' }, + 'publicationeventdate' => { 537 => [\'PublicationEvent','PublicationEventDate'] }, + 'publicationeventidentifier' => { 537 => [\'PublicationEvent','PublicationEventIdentifier'] }, + 'publicationeventname' => { 537 => [\'PublicationEvent','PublicationEventName'] }, + 'publicationname' => { 542 => 'publicationName' }, + 'publisher' => { 186 => 'WM/Publisher', 408 => "\xa9pub", 410 => 'publisher', 526 => 'publisher' }, + 'publishingfrequency' => { 542 => 'publishingFrequency' }, + 'pulldown' => { 552 => 'pullDown' }, + 'purchasedate' => { 408 => 'purd' }, 'purplehsl' => { 109 => 0x20916 }, - 'pxshiftperiphedgenr' => { 493 => 0x9013 }, - 'pxshiftperiphedgenrvalue' => { 493 => 0x9014 }, - 'quality' => { 0 => 0x1, 37 => 0x3, 118 => 0x2, 119 => 0x3002, 133 => 0x1000, 147 => 0x9, 243 => 0x4, 291 => 0x3, 335 => 0x201, 349 => 0x300, 390 => 0x8, 397 => 0x2, 432 => 0x16, 442 => 0x56, 443 => 0x56, 444 => 0xb, 456 => [0x102,0x202e] }, - 'quality2' => { 465 => 0x1170, 466 => 0x1174, 467 => 0x1150, 469 => 0x11a8, 470 => 0x1060, 471 => 0x258, 472 => 0x258, 473 => 0x247, 479 => 0x29, 480 => 0x25, 481 => 0x2a }, + 'pxshiftperiphedgenr' => { 495 => 0x9013 }, + 'pxshiftperiphedgenrvalue' => { 495 => 0x9014 }, + 'quality' => { 0 => 0x1, 37 => 0x3, 118 => 0x2, 119 => 0x3002, 133 => 0x1000, 147 => 0x9, 243 => 0x4, 291 => 0x3, 335 => 0x201, 349 => 0x300, 390 => 0x8, 397 => 0x2, 434 => 0x16, 444 => 0x56, 445 => 0x56, 446 => 0xb, 458 => [0x102,0x202e] }, + 'quality2' => { 467 => 0x1170, 468 => 0x1174, 469 => 0x1150, 471 => 0x11a8, 472 => 0x1060, 473 => 0x258, 474 => 0x258, 475 => 0x247, 481 => 0x29, 482 => 0x25, 483 => 0x2a }, 'qualitybutton' => { 327 => 0x17d, 328 => 0x195 }, 'qualitybuttonplaybackmode' => { 327 => 0x1bf, 328 => 0x1d7 }, 'qualityhint' => { 1 => 0x1a }, @@ -5898,42 +5901,42 @@ my %tagLookup = ( 'quickadjust' => { 305 => 0x2a }, 'quickcontroldialinmeter' => { 90 => 0x703 }, 'quickfix' => { 302 => 0x416391c6 }, - 'quickshot' => { 431 => 0x213 }, + 'quickshot' => { 433 => 0x213 }, 'quiettime' => { 145 => 0x188a }, 'radialdistortioncoefficient1' => { 218 => 0x14 }, 'radialdistortioncoefficient2' => { 218 => 0x1c }, 'radialdistortioncoefficient3' => { 218 => 0x24 }, - 'rads' => { 415 => 'rads' }, + 'rads' => { 416 => 'rads' }, 'rangefinder' => { 314 => '4.1', 315 => '5.1', 316 => '5.1' }, - 'rangemask' => { 521 => 'RangeMaskMapInfo', 523 => 'RangeMaskMapInfo' }, - 'rangemaskmapinfo' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'] }, - 'rangemaskmapinfolabmax' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'] }, - 'rangemaskmapinfolabmin' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'] }, - 'rangemaskmapinfolumeq' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'] }, - 'rangemaskmapinforgbmax' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'] }, - 'rangemaskmapinforgbmin' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'] }, + 'rangemask' => { 523 => 'RangeMaskMapInfo', 525 => 'RangeMaskMapInfo' }, + 'rangemaskmapinfo' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'] }, + 'rangemaskmapinfolabmax' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'] }, + 'rangemaskmapinfolabmin' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'] }, + 'rangemaskmapinfolumeq' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'] }, + 'rangemaskmapinforgbmax' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'] }, + 'rangemaskmapinforgbmin' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'] }, 'rasterizedcaption' => { 138 => 0x7d }, - 'rating' => { 109 => 0x10100, 125 => 0x4746, 133 => 0x1431, 401 => 0xdf, 407 => 'rtng', 415 => 'rtng', 456 => 0x2002, 515 => 'rating', 525 => 'rating', 535 => 'Rating', 540 => 'rating', 548 => 'Rating' }, - 'ratingpercent' => { 125 => 0x4749, 185 => 'Rating', 407 => 'rate', 548 => 'RatingPercent' }, - 'ratingregion' => { 535 => [\'Rating','RatingRatingRegion'] }, - 'ratingregioncity' => { 535 => [\'Rating','RatingRatingRegionCity'] }, - 'ratingregioncountrycode' => { 535 => [\'Rating','RatingRatingRegionCountryCode'] }, - 'ratingregioncountryname' => { 535 => [\'Rating','RatingRatingRegionCountryName'] }, - 'ratingregiongpsaltitude' => { 535 => [\'Rating','RatingRatingRegionGPSAltitude'] }, - 'ratingregiongpsaltituderef' => { 535 => [\'Rating','RatingRatingRegionGPSAltitudeRef'] }, - 'ratingregiongpslatitude' => { 535 => [\'Rating','RatingRatingRegionGPSLatitude'] }, - 'ratingregiongpslongitude' => { 535 => [\'Rating','RatingRatingRegionGPSLongitude'] }, - 'ratingregionidentifier' => { 535 => [\'Rating','RatingRatingRegionIdentifier'] }, - 'ratingregionlocationid' => { 535 => [\'Rating','RatingRatingRegionLocationId'] }, - 'ratingregionlocationname' => { 535 => [\'Rating','RatingRatingRegionLocationName'] }, - 'ratingregionprovincestate' => { 535 => [\'Rating','RatingRatingRegionProvinceState'] }, - 'ratingregionsublocation' => { 535 => [\'Rating','RatingRatingRegionSublocation'] }, - 'ratingregionworldregion' => { 535 => [\'Rating','RatingRatingRegionWorldRegion'] }, - 'ratingscalemaxvalue' => { 535 => [\'Rating','RatingRatingScaleMaxValue'] }, - 'ratingscaleminvalue' => { 535 => [\'Rating','RatingRatingScaleMinValue'] }, - 'ratingsourcelink' => { 535 => [\'Rating','RatingRatingSourceLink'] }, - 'ratingvalue' => { 535 => [\'Rating','RatingRatingValue'] }, - 'ratingvaluelogolink' => { 535 => [\'Rating','RatingRatingValueLogoLink'] }, + 'rating' => { 109 => 0x10100, 125 => 0x4746, 133 => 0x1431, 401 => 0xdf, 408 => 'rtng', 416 => 'rtng', 458 => 0x2002, 517 => 'rating', 527 => 'rating', 537 => 'Rating', 542 => 'rating', 550 => 'Rating' }, + 'ratingpercent' => { 125 => 0x4749, 185 => 'Rating', 408 => 'rate', 550 => 'RatingPercent' }, + 'ratingregion' => { 537 => [\'Rating','RatingRatingRegion'] }, + 'ratingregioncity' => { 537 => [\'Rating','RatingRatingRegionCity'] }, + 'ratingregioncountrycode' => { 537 => [\'Rating','RatingRatingRegionCountryCode'] }, + 'ratingregioncountryname' => { 537 => [\'Rating','RatingRatingRegionCountryName'] }, + 'ratingregiongpsaltitude' => { 537 => [\'Rating','RatingRatingRegionGPSAltitude'] }, + 'ratingregiongpsaltituderef' => { 537 => [\'Rating','RatingRatingRegionGPSAltitudeRef'] }, + 'ratingregiongpslatitude' => { 537 => [\'Rating','RatingRatingRegionGPSLatitude'] }, + 'ratingregiongpslongitude' => { 537 => [\'Rating','RatingRatingRegionGPSLongitude'] }, + 'ratingregionidentifier' => { 537 => [\'Rating','RatingRatingRegionIdentifier'] }, + 'ratingregionlocationid' => { 537 => [\'Rating','RatingRatingRegionLocationId'] }, + 'ratingregionlocationname' => { 537 => [\'Rating','RatingRatingRegionLocationName'] }, + 'ratingregionprovincestate' => { 537 => [\'Rating','RatingRatingRegionProvinceState'] }, + 'ratingregionsublocation' => { 537 => [\'Rating','RatingRatingRegionSublocation'] }, + 'ratingregionworldregion' => { 537 => [\'Rating','RatingRatingRegionWorldRegion'] }, + 'ratingscalemaxvalue' => { 537 => [\'Rating','RatingRatingScaleMaxValue'] }, + 'ratingscaleminvalue' => { 537 => [\'Rating','RatingRatingScaleMinValue'] }, + 'ratingsourcelink' => { 537 => [\'Rating','RatingRatingSourceLink'] }, + 'ratingvalue' => { 537 => [\'Rating','RatingRatingValue'] }, + 'ratingvaluelogolink' => { 537 => [\'Rating','RatingRatingValueLogoLink'] }, 'rawandjpgrecording' => { 88 => 0x8, 193 => 0x109, 370 => 0xd }, 'rawbrightnessadj' => { 109 => 0x20001, 114 => 0x38 }, 'rawburstimagecount' => { 80 => 0x2 }, @@ -5945,9 +5948,9 @@ my %tagLookup = ( 'rawcroptop' => { 401 => 0xd2 }, 'rawcustomsaturation' => { 114 => 0x30 }, 'rawcustomtone' => { 114 => 0x34 }, - 'rawdata' => { 429 => 0xa048 }, - 'rawdatabyteorder' => { 429 => 0x40 }, - 'rawdatacfapattern' => { 429 => 0x50 }, + 'rawdata' => { 431 => 0xa048 }, + 'rawdatabyteorder' => { 431 => 0x40 }, + 'rawdatacfapattern' => { 431 => 0x50 }, 'rawdatauniqueid' => { 125 => 0xc65d }, 'rawdepth' => { 195 => 0x10 }, 'rawdevartfilter' => { 337 => 0x121 }, @@ -5955,7 +5958,7 @@ my %tagLookup = ( 'rawdevcolorspace' => { 336 => 0x108, 337 => 0x109 }, 'rawdevcontrastvalue' => { 336 => 0x106, 337 => 0x105 }, 'rawdeveditstatus' => { 336 => 0x10b }, - 'rawdevelopingsoftware' => { 125 => 0xa43a, 528 => 'RAWDevelopingSoftware' }, + 'rawdevelopingsoftware' => { 125 => 0xa43a, 530 => 'RAWDevelopingSoftware' }, 'rawdevelopmentprocess' => { 390 => 0x62 }, 'rawdevengine' => { 336 => 0x109, 337 => 0x10b }, 'rawdevexposurebiasvalue' => { 336 => 0x100, 337 => 0x100 }, @@ -5979,8 +5982,8 @@ my %tagLookup = ( 'rawdevwhitebalance' => { 337 => 0x101 }, 'rawdevwhitebalancevalue' => { 336 => 0x101, 337 => 0x102 }, 'rawfile' => { 125 => 0xfe4c }, - 'rawfilename' => { 521 => 'RawFileName', 523 => 'RawFileName' }, - 'rawfiletype' => { 456 => 0x2029 }, + 'rawfilename' => { 523 => 'RawFileName', 525 => 'RawFileName' }, + 'rawfiletype' => { 458 => 0x2029 }, 'rawformat' => { 359 => 0x2d, 399 => 0x10e }, 'rawimagecenter' => { 243 => 0x99 }, 'rawimagedigest' => { 125 => 0xc71c }, @@ -5991,22 +5994,22 @@ my %tagLookup = ( 'rawjpgsize' => { 61 => 0x7, 105 => 0x2 }, 'rawjpgwidth' => { 105 => 0x3 }, 'rawmeasuredrggb' => { 47 => 0x26a, 49 => 0x280, 51 => 0x194, 52 => [0x1ad,0x26b] }, - 'rawrppused' => { 515 => 'rawrppused' }, + 'rawrppused' => { 517 => 'rawrppused' }, 'rawtopreviewgain' => { 125 => 0xc7a8 }, 'readouttypeactual' => { 145 => 0x1903 }, 'readouttyperequested' => { 145 => 0x1902 }, 'reardisplay' => { 309 => '12.3', 310 => '6.2' }, - 'recdevice' => { 535 => 'RecDevice' }, - 'recdeviceattlensdescription' => { 535 => [\'RecDevice','RecDeviceAttLensDescription'] }, - 'recdevicemanufacturer' => { 535 => [\'RecDevice','RecDeviceManufacturer'] }, - 'recdevicemodelname' => { 535 => [\'RecDevice','RecDeviceModelName'] }, - 'recdeviceownersdeviceid' => { 535 => [\'RecDevice','RecDeviceOwnersDeviceId'] }, - 'recdeviceserialnumber' => { 535 => [\'RecDevice','RecDeviceSerialNumber'] }, - 'recipeendingpage' => { 542 => 'recipeEndingPage' }, - 'recipepagerange' => { 542 => 'recipePageRange' }, - 'recipesource' => { 542 => 'recipeSource' }, - 'recipestartingpage' => { 542 => 'recipeStartingPage' }, - 'recipetitle' => { 542 => 'recipeTitle' }, + 'recdevice' => { 537 => 'RecDevice' }, + 'recdeviceattlensdescription' => { 537 => [\'RecDevice','RecDeviceAttLensDescription'] }, + 'recdevicemanufacturer' => { 537 => [\'RecDevice','RecDeviceManufacturer'] }, + 'recdevicemodelname' => { 537 => [\'RecDevice','RecDeviceModelName'] }, + 'recdeviceownersdeviceid' => { 537 => [\'RecDevice','RecDeviceOwnersDeviceId'] }, + 'recdeviceserialnumber' => { 537 => [\'RecDevice','RecDeviceSerialNumber'] }, + 'recipeendingpage' => { 544 => 'recipeEndingPage' }, + 'recipepagerange' => { 544 => 'recipePageRange' }, + 'recipesource' => { 544 => 'recipeSource' }, + 'recipestartingpage' => { 544 => 'recipeStartingPage' }, + 'recipetitle' => { 544 => 'recipeTitle' }, 'recognizedface1age' => { 347 => 0x20 }, 'recognizedface1name' => { 347 => 0x4 }, 'recognizedface1position' => { 347 => 0x18 }, @@ -6017,7 +6020,7 @@ my %tagLookup = ( 'recognizedface3name' => { 347 => 0x64 }, 'recognizedface3position' => { 347 => 0x78 }, 'recognizedfaceflags' => { 354 => 0x63 }, - 'recommendedexposureindex' => { 125 => 0x8832, 528 => 'RecommendedExposureIndex' }, + 'recommendedexposureindex' => { 125 => 0x8832, 530 => 'RecommendedExposureIndex' }, 'record' => { 124 => 'Record' }, 'recordbasisofrecord' => { 124 => [\'Record','RecordBasisOfRecord'] }, 'recordcollectioncode' => { 124 => [\'Record','RecordCollectionCode'] }, @@ -6029,38 +6032,38 @@ my %tagLookup = ( 'recorddynamicproperties' => { 124 => [\'Record','RecordDynamicProperties'] }, 'recordid' => { 103 => 0x1804 }, 'recordinformationwithheld' => { 124 => [\'Record','RecordInformationWithheld'] }, - 'recordingcopyright' => { 415 => "\xa9phg" }, - 'recordingformat' => { 422 => 0x1000 }, + 'recordingcopyright' => { 416 => "\xa9phg" }, + 'recordingformat' => { 424 => 0x1000 }, 'recordingmode' => { 118 => 0x1, 397 => 0x1 }, 'recordinstitutioncode' => { 124 => [\'Record','RecordInstitutionCode'] }, 'recordinstitutionid' => { 124 => [\'Record','RecordInstitutionID'] }, - 'recordlabelname' => { 415 => "\xa9lab" }, - 'recordlabelurl' => { 415 => "\xa9lal" }, + 'recordlabelname' => { 416 => "\xa9lab" }, + 'recordlabelurl' => { 416 => "\xa9lal" }, 'recordlocationdata' => { 251 => 0x660, 252 => 0x690, 253 => 0x6f8 }, 'recordmode' => { 37 => 0x9, 119 => 0x3000 }, 'recordownerinstitutioncode' => { 124 => [\'Record','RecordOwnerInstitutionCode'] }, - 'recordshutterrelease' => { 431 => 0x217 }, + 'recordshutterrelease' => { 433 => 0x217 }, 'redbalance' => { 335 => 0x1017, 359 => 0x11, 390 => 0x1c }, 'redcurvelimits' => { 114 => 0x18a }, 'redcurvepoints' => { 113 => 0x2d, 114 => 0x160 }, 'redeyecorrection' => { 306 => 0x0 }, - 'redeyeinfo' => { 521 => 'RedEyeInfo', 523 => 'RedEyeInfo' }, - 'redeyereduction' => { 191 => 0x41, 442 => 0x6a, 444 => 0x28 }, + 'redeyeinfo' => { 523 => 'RedEyeInfo', 525 => 'RedEyeInfo' }, + 'redeyereduction' => { 191 => 0x41, 444 => 0x6a, 446 => 0x28 }, 'redeyeremoval' => { 354 => 0xb9 }, 'redhsl' => { 109 => 0x20910 }, - 'redhue' => { 521 => 'RedHue', 523 => 'RedHue' }, - 'redsaturation' => { 521 => 'RedSaturation', 523 => 'RedSaturation' }, + 'redhue' => { 523 => 'RedHue', 525 => 'RedHue' }, + 'redsaturation' => { 523 => 'RedSaturation', 525 => 'RedSaturation' }, 'reductionmatrix1' => { 125 => 0xc625 }, 'reductionmatrix2' => { 125 => 0xc626 }, 'reductionmatrix3' => { 125 => 0xcd3a }, - 'reelname' => { 125 => 0xc789, 415 => 'reel' }, - 'reference1' => { 533 => [\'TagStructure','TagStructureReference'] }, - 'reference2' => { 533 => [\'TagStructure','TagStructureSubLabelsReference'] }, - 'reference3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsReference'] }, - 'reference4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsReference'] }, - 'reference5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, - 'reference6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, - 'referenceblackwhite' => { 125 => 0x214, 546 => 'ReferenceBlackWhite' }, + 'reelname' => { 125 => 0xc789, 416 => 'reel' }, + 'reference1' => { 535 => [\'TagStructure','TagStructureReference'] }, + 'reference2' => { 535 => [\'TagStructure','TagStructureSubLabelsReference'] }, + 'reference3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsReference'] }, + 'reference4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsReference'] }, + 'reference5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, + 'reference6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, + 'referenceblackwhite' => { 125 => 0x214, 548 => 'ReferenceBlackWhite' }, 'referencedate' => { 138 => 0x2f }, 'referencenumber' => { 138 => 0x32 }, 'references' => { 164 => 'References' }, @@ -6082,7 +6085,7 @@ my %tagLookup = ( 'regionextensions' => { 179 => [\'Regions','RegionsRegionListExtensions'] }, 'regionfocususage' => { 179 => [\'Regions','RegionsRegionListFocusUsage'] }, 'regioninfo' => { 179 => 'Regions' }, - 'regioninfoacdsee' => { 494 => 'Regions' }, + 'regioninfoacdsee' => { 496 => 'Regions' }, 'regioninfodateregionsvalid' => { 182 => [\'RegionInfo','RegionInfoDateRegionsValid'] }, 'regioninfomp' => { 182 => 'RegionInfo' }, 'regioninforegions' => { 182 => [\'RegionInfo','RegionInfoRegions'] }, @@ -6096,10 +6099,10 @@ my %tagLookup = ( 'regionrotation' => { 179 => [\'Regions','RegionsRegionListRotation'] }, 'regionseealso' => { 179 => [\'Regions','RegionsRegionListSeeAlso'] }, 'regiontype' => { 179 => [\'Regions','RegionsRegionListType'] }, - 'registryentryrole' => { 535 => [\'RegistryId','RegistryIdRegEntryRole'] }, - 'registryid' => { 535 => 'RegistryId' }, - 'registryitemid' => { 535 => [\'RegistryId','RegistryIdRegItemId'] }, - 'registryorganisationid' => { 535 => [\'RegistryId','RegistryIdRegOrgId'] }, + 'registryentryrole' => { 537 => [\'RegistryId','RegistryIdRegEntryRole'] }, + 'registryid' => { 537 => 'RegistryId' }, + 'registryitemid' => { 537 => [\'RegistryId','RegistryIdRegItemId'] }, + 'registryorganisationid' => { 537 => [\'RegistryId','RegistryIdRegOrgId'] }, 'relatedaudiofile' => { 162 => 'data' }, 'relatedaudiofilename' => { 162 => '1Name' }, 'relatedaudiofiletype' => { 162 => '0Type' }, @@ -6107,56 +6110,56 @@ my %tagLookup = ( 'relatedimageheight' => { 125 => 0x1002 }, 'relatedimagewidth' => { 125 => 0x1001 }, 'relatedresourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelatedResourceID'] }, - 'relatedsoundfile' => { 125 => 0xa004, 527 => 'RelatedSoundFile' }, + 'relatedsoundfile' => { 125 => 0xa004, 529 => 'RelatedSoundFile' }, 'relatedvideofile' => { 176 => 'data' }, 'relatedvideofilename' => { 176 => '1Name' }, 'relatedvideofiletype' => { 176 => '0Type' }, - 'relation' => { 524 => 'relation' }, + 'relation' => { 526 => 'relation' }, 'relationshipaccordingto' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipAccordingTo'] }, 'relationshipestablisheddate' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipEstablishedDate'] }, 'relationshipofresource' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipOfResource'] }, 'relationshipofresourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipOfResourceID'] }, 'relationshipremarks' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipRemarks'] }, 'relativealtitude' => { 122 => 'RelativeAltitude' }, - 'relativepeakaudiofilepath' => { 550 => 'relativePeakAudioFilePath' }, - 'relativetimestamp' => { 550 => 'relativeTimestamp' }, - 'relativetimestampscale' => { 550 => [\'relativeTimestamp','relativeTimestampScale'] }, - 'relativetimestampvalue' => { 550 => [\'relativeTimestamp','relativeTimestampValue'] }, + 'relativepeakaudiofilepath' => { 552 => 'relativePeakAudioFilePath' }, + 'relativetimestamp' => { 552 => 'relativeTimestamp' }, + 'relativetimestampscale' => { 552 => [\'relativeTimestamp','relativeTimestampScale'] }, + 'relativetimestampvalue' => { 552 => [\'relativeTimestamp','relativeTimestampValue'] }, 'releasebuttontousedial' => { 309 => '17.8', 310 => '18.5', 312 => '18.4', 313 => '18.4', 318 => '33.8', 319 => '17.6', 322 => '18.5', 323 => '18.4' }, - 'releasedate' => { 138 => 0x1e, 407 => 'rldt', 515 => 'ReleaseDate', 550 => 'releaseDate' }, - 'releasemode' => { 119 => 0x3001, 248 => 0x5c, 282 => 0x184d, 456 => 0xb049 }, - 'releasemode2' => { 465 => 0x112c, 466 => [0x112c,0x8], 467 => [0x1108,0x8], 468 => [0x1184,0x8], 469 => [0x1160,0x8], 470 => [0x4,0x1018], 471 => [0x4,0x210], 472 => [0x4,0x210], 473 => [0x4,0x208], 475 => [0x67,0x3f], 476 => [0x6b,0x6d,0x73,0x4b], 477 => [0x6b,0x4b], 478 => 0x1f, 479 => 0x10, 480 => 0x10, 481 => 0x9, 488 => 0x34 }, - 'releasemode3' => { 465 => 0x1128, 466 => 0x1128, 467 => 0x1104, 468 => 0x1180, 469 => 0x115c, 470 => 0x1014, 471 => 0x20c, 472 => 0x20c, 473 => 0x204 }, - 'releaseready' => { 535 => 'ReleaseReady' }, + 'releasedate' => { 138 => 0x1e, 408 => 'rldt', 517 => 'ReleaseDate', 552 => 'releaseDate' }, + 'releasemode' => { 119 => 0x3001, 248 => 0x5c, 282 => 0x184d, 458 => 0xb049 }, + 'releasemode2' => { 467 => 0x112c, 468 => [0x112c,0x8], 469 => [0x1108,0x8], 470 => [0x1184,0x8], 471 => [0x1160,0x8], 472 => [0x4,0x1018], 473 => [0x4,0x210], 474 => [0x4,0x210], 475 => [0x4,0x208], 477 => [0x67,0x3f], 478 => [0x6b,0x6d,0x73,0x4b], 479 => [0x6b,0x4b], 480 => 0x1f, 481 => 0x10, 482 => 0x10, 483 => 0x9, 490 => 0x34 }, + 'releasemode3' => { 467 => 0x1128, 468 => 0x1128, 469 => 0x1104, 470 => 0x1180, 471 => 0x115c, 472 => 0x1014, 473 => 0x20c, 474 => 0x20c, 475 => 0x204 }, + 'releaseready' => { 537 => 'ReleaseReady' }, 'releasesetting' => { 103 => 0x1016 }, - 'releasetime' => { 138 => 0x23, 515 => 'ReleaseTime' }, + 'releasetime' => { 138 => 0x23, 517 => 'ReleaseTime' }, 'remoteonduration' => { 311 => '3.4', 314 => '17.2', 315 => '18.2', 316 => '18.2', 317 => '18.2', 319 => '18.2', 320 => '4.3', 324 => '19.2' }, - 'renditionclass' => { 551 => 'RenditionClass' }, - 'renditionof' => { 551 => 'RenditionOf' }, - 'renditionofalternatepaths' => { 551 => [\'RenditionOf','RenditionOfAlternatePaths'] }, - 'renditionofdocumentid' => { 551 => [\'RenditionOf','RenditionOfDocumentID'] }, - 'renditionoffilepath' => { 551 => [\'RenditionOf','RenditionOfFilePath'] }, - 'renditionoffrompart' => { 551 => [\'RenditionOf','RenditionOfFromPart'] }, - 'renditionofinstanceid' => { 551 => [\'RenditionOf','RenditionOfInstanceID'] }, - 'renditionoflastmodifydate' => { 551 => [\'RenditionOf','RenditionOfLastModifyDate'] }, - 'renditionoflasturl' => { 551 => [\'RenditionOf','RenditionOfLastURL'] }, - 'renditionoflinkcategory' => { 551 => [\'RenditionOf','RenditionOfLinkCategory'] }, - 'renditionoflinkform' => { 551 => [\'RenditionOf','RenditionOfLinkForm'] }, - 'renditionofmanager' => { 551 => [\'RenditionOf','RenditionOfManager'] }, - 'renditionofmanagervariant' => { 551 => [\'RenditionOf','RenditionOfManagerVariant'] }, - 'renditionofmanageto' => { 551 => [\'RenditionOf','RenditionOfManageTo'] }, - 'renditionofmanageui' => { 551 => [\'RenditionOf','RenditionOfManageUI'] }, - 'renditionofmaskmarkers' => { 551 => [\'RenditionOf','RenditionOfMaskMarkers'] }, - 'renditionoforiginaldocumentid' => { 551 => [\'RenditionOf','RenditionOfOriginalDocumentID'] }, - 'renditionofpartmapping' => { 551 => [\'RenditionOf','RenditionOfPartMapping'] }, - 'renditionofplacedresolutionunit' => { 551 => [\'RenditionOf','RenditionOfPlacedResolutionUnit'] }, - 'renditionofplacedxresolution' => { 551 => [\'RenditionOf','RenditionOfPlacedXResolution'] }, - 'renditionofplacedyresolution' => { 551 => [\'RenditionOf','RenditionOfPlacedYResolution'] }, - 'renditionofrenditionclass' => { 551 => [\'RenditionOf','RenditionOfRenditionClass'] }, - 'renditionofrenditionparams' => { 551 => [\'RenditionOf','RenditionOfRenditionParams'] }, - 'renditionoftopart' => { 551 => [\'RenditionOf','RenditionOfToPart'] }, - 'renditionofversionid' => { 551 => [\'RenditionOf','RenditionOfVersionID'] }, - 'renditionparams' => { 551 => 'RenditionParams' }, + 'renditionclass' => { 553 => 'RenditionClass' }, + 'renditionof' => { 553 => 'RenditionOf' }, + 'renditionofalternatepaths' => { 553 => [\'RenditionOf','RenditionOfAlternatePaths'] }, + 'renditionofdocumentid' => { 553 => [\'RenditionOf','RenditionOfDocumentID'] }, + 'renditionoffilepath' => { 553 => [\'RenditionOf','RenditionOfFilePath'] }, + 'renditionoffrompart' => { 553 => [\'RenditionOf','RenditionOfFromPart'] }, + 'renditionofinstanceid' => { 553 => [\'RenditionOf','RenditionOfInstanceID'] }, + 'renditionoflastmodifydate' => { 553 => [\'RenditionOf','RenditionOfLastModifyDate'] }, + 'renditionoflasturl' => { 553 => [\'RenditionOf','RenditionOfLastURL'] }, + 'renditionoflinkcategory' => { 553 => [\'RenditionOf','RenditionOfLinkCategory'] }, + 'renditionoflinkform' => { 553 => [\'RenditionOf','RenditionOfLinkForm'] }, + 'renditionofmanager' => { 553 => [\'RenditionOf','RenditionOfManager'] }, + 'renditionofmanagervariant' => { 553 => [\'RenditionOf','RenditionOfManagerVariant'] }, + 'renditionofmanageto' => { 553 => [\'RenditionOf','RenditionOfManageTo'] }, + 'renditionofmanageui' => { 553 => [\'RenditionOf','RenditionOfManageUI'] }, + 'renditionofmaskmarkers' => { 553 => [\'RenditionOf','RenditionOfMaskMarkers'] }, + 'renditionoforiginaldocumentid' => { 553 => [\'RenditionOf','RenditionOfOriginalDocumentID'] }, + 'renditionofpartmapping' => { 553 => [\'RenditionOf','RenditionOfPartMapping'] }, + 'renditionofplacedresolutionunit' => { 553 => [\'RenditionOf','RenditionOfPlacedResolutionUnit'] }, + 'renditionofplacedxresolution' => { 553 => [\'RenditionOf','RenditionOfPlacedXResolution'] }, + 'renditionofplacedyresolution' => { 553 => [\'RenditionOf','RenditionOfPlacedYResolution'] }, + 'renditionofrenditionclass' => { 553 => [\'RenditionOf','RenditionOfRenditionClass'] }, + 'renditionofrenditionparams' => { 553 => [\'RenditionOf','RenditionOfRenditionParams'] }, + 'renditionoftopart' => { 553 => [\'RenditionOf','RenditionOfToPart'] }, + 'renditionofversionid' => { 553 => [\'RenditionOf','RenditionOfVersionID'] }, + 'renditionparams' => { 553 => 'RenditionParams' }, 'repeatingflashcount' => { 221 => 0xd, 222 => 0xe, 223 => 0xe, 224 => 0xe, 225 => 0xe, 226 => 0xe, 318 => '17.2', 319 => '24.2', 320 => '9.2', 321 => '24.2', 324 => '25.2' }, 'repeatingflashcountbuilt-in' => { 289 => 0x4db }, 'repeatingflashcountexternal' => { 289 => 0x4c3 }, @@ -6165,166 +6168,166 @@ my %tagLookup = ( 'repeatingflashrate' => { 221 => 0xc, 222 => 0xd, 223 => 0xd, 224 => 0xd, 225 => 0xd, 226 => 0xd, 318 => '18.1', 319 => '25.1', 320 => '10.1', 321 => '25.1', 324 => '26.1' }, 'repeatingflashratebuilt-in' => { 289 => 0x4da }, 'repeatingflashrateexternal' => { 289 => 0x4c2 }, - 'requirements' => { 415 => "\xa9req" }, - 'requires' => { 519 => 'requires' }, - 'resampleparams' => { 550 => 'resampleParams' }, - 'resampleparamsquality' => { 550 => [\'resampleParams','resampleParamsQuality'] }, + 'requirements' => { 416 => "\xa9req" }, + 'requires' => { 521 => 'requires' }, + 'resampleparams' => { 552 => 'resampleParams' }, + 'resampleparamsquality' => { 552 => [\'resampleParams','resampleParamsQuality'] }, 'resamplingkerneldenominators050' => { 145 => 0xe50 }, 'resamplingkerneldenominators067' => { 145 => 0xe4f }, 'resamplingkerneldenominators100' => { 145 => 0xe51 }, - 'resaved' => { 431 => 0x21e }, + 'resaved' => { 433 => 0x21e }, 'resetblacksegrows' => { 145 => 0x181a }, 'resolution' => { 169 => 'Resolution' }, - 'resolutionmode' => { 432 => [0x87,0x4] }, - 'resolutionunit' => { 125 => 0x128, 141 => 0x2, 546 => 'ResolutionUnit' }, + 'resolutionmode' => { 434 => [0x87,0x4] }, + 'resolutionunit' => { 125 => 0x128, 141 => 0x2, 548 => 'ResolutionUnit' }, 'resourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipResourceID'] }, 'resourcerelationship' => { 124 => 'ResourceRelationship' }, 'resourcerelationshipid' => { 124 => [\'ResourceRelationship','ResourceRelationshipResourceRelationshipID'] }, 'restrictdrivemodes' => { 90 => 0x612 }, - 'restrictions' => { 543 => 'restrictions' }, - 'retouchareafeather' => { 521 => [\'RetouchAreas','RetouchAreasFeather'], 523 => [\'RetouchAreas','RetouchAreasFeather'] }, - 'retouchareamaskalpha' => { 521 => [\'RetouchAreas','RetouchAreasMasksAlpha'], 523 => [\'RetouchAreas','RetouchAreasMasksAlpha'] }, - 'retouchareamaskangle' => { 521 => [\'RetouchAreas','RetouchAreasMasksAngle'], 523 => [\'RetouchAreas','RetouchAreasMasksAngle'] }, - 'retouchareamaskbottom' => { 521 => [\'RetouchAreas','RetouchAreasMasksBottom'], 523 => [\'RetouchAreas','RetouchAreasMasksBottom'] }, - 'retouchareamaskcentervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksCenterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksCenterValue'] }, - 'retouchareamaskcenterweight' => { 521 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'], 523 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'] }, - 'retouchareamaskdabs' => { 521 => [\'RetouchAreas','RetouchAreasMasksDabs'], 523 => [\'RetouchAreas','RetouchAreasMasksDabs'] }, - 'retouchareamaskfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksFeather'] }, - 'retouchareamaskflipped' => { 521 => [\'RetouchAreas','RetouchAreasMasksFlipped'], 523 => [\'RetouchAreas','RetouchAreasMasksFlipped'] }, - 'retouchareamaskflow' => { 521 => [\'RetouchAreas','RetouchAreasMasksFlow'], 523 => [\'RetouchAreas','RetouchAreasMasksFlow'] }, - 'retouchareamaskfullx' => { 521 => [\'RetouchAreas','RetouchAreasMasksFullX'], 523 => [\'RetouchAreas','RetouchAreasMasksFullX'] }, - 'retouchareamaskfully' => { 521 => [\'RetouchAreas','RetouchAreasMasksFullY'], 523 => [\'RetouchAreas','RetouchAreasMasksFullY'] }, - 'retouchareamaskinputdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksInputDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksInputDigest'] }, - 'retouchareamaskleft' => { 521 => [\'RetouchAreas','RetouchAreasMasksLeft'], 523 => [\'RetouchAreas','RetouchAreasMasksLeft'] }, - 'retouchareamaskmaskactive' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskActive'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskActive'] }, - 'retouchareamaskmaskblendmode' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'] }, - 'retouchareamaskmaskdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'] }, - 'retouchareamaskmaskinverted' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'] }, - 'retouchareamaskmaskname' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskName'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskName'] }, - 'retouchareamaskmasks' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasks'], 523 => [\'RetouchAreas','RetouchAreasMasksMasks'] }, - 'retouchareamaskmasksalpha' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'] }, - 'retouchareamaskmasksangle' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'] }, - 'retouchareamaskmasksbottom' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'] }, - 'retouchareamaskmaskscentervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'] }, - 'retouchareamaskmaskscenterweight' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'] }, - 'retouchareamaskmasksdabs' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'] }, - 'retouchareamaskmasksfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'] }, - 'retouchareamaskmasksflipped' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'] }, - 'retouchareamaskmasksflow' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'] }, - 'retouchareamaskmasksfullx' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'] }, - 'retouchareamaskmasksfully' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'] }, - 'retouchareamaskmasksinputdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'] }, - 'retouchareamaskmasksleft' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'] }, - 'retouchareamaskmasksmaskactive' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'] }, - 'retouchareamaskmasksmaskblendmode' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'] }, - 'retouchareamaskmasksmaskdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'] }, - 'retouchareamaskmasksmaskinverted' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'] }, - 'retouchareamaskmasksmaskname' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'] }, - 'retouchareamaskmasksmasksubtype' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'] }, - 'retouchareamaskmasksmasksyncid' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'] }, - 'retouchareamaskmasksmaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'] }, - 'retouchareamaskmasksmidpoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'] }, - 'retouchareamaskmasksorigin' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'] }, - 'retouchareamaskmasksperimetervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'] }, - 'retouchareamaskmasksradius' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'] }, - 'retouchareamaskmasksreferencepoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'] }, - 'retouchareamaskmasksright' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRight'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRight'] }, - 'retouchareamaskmasksroundness' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'] }, - 'retouchareamaskmaskssizex' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'] }, - 'retouchareamaskmaskssizey' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'] }, - 'retouchareamaskmaskstop' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksTop'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksTop'] }, - 'retouchareamaskmasksubtype' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'] }, - 'retouchareamaskmasksvalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'] }, - 'retouchareamaskmasksversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'] }, - 'retouchareamaskmaskswhat' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'] }, - 'retouchareamaskmaskswholeimagearea' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'] }, - 'retouchareamaskmasksx' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksX'] }, - 'retouchareamaskmasksy' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksY'] }, - 'retouchareamaskmasksyncid' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'] }, - 'retouchareamaskmaskszerox' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'] }, - 'retouchareamaskmaskszeroy' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'] }, - 'retouchareamaskmaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'] }, - 'retouchareamaskmidpoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMidpoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMidpoint'] }, - 'retouchareamaskorigin' => { 521 => [\'RetouchAreas','RetouchAreasMasksOrigin'], 523 => [\'RetouchAreas','RetouchAreasMasksOrigin'] }, - 'retouchareamaskperimetervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'] }, - 'retouchareamaskradius' => { 521 => [\'RetouchAreas','RetouchAreasMasksRadius'], 523 => [\'RetouchAreas','RetouchAreasMasksRadius'] }, - 'retouchareamaskrange' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'] }, - 'retouchareamaskrangeareamodels' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'] }, - 'retouchareamaskrangeareamodelscolorsampleinfo' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'retouchareamaskrangeareamodelscomponents' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'retouchareamaskrangecoloramount' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'] }, - 'retouchareamaskrangedepthfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'] }, - 'retouchareamaskrangedepthmax' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'] }, - 'retouchareamaskrangedepthmin' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'] }, - 'retouchareamaskrangeinvert' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'] }, - 'retouchareamaskrangelumfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'] }, - 'retouchareamaskrangeluminancedepthsampleinfo' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'retouchareamaskrangelummax' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'] }, - 'retouchareamaskrangelummin' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'] }, - 'retouchareamaskrangelumrange' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'] }, - 'retouchareamaskrangesampletype' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'] }, - 'retouchareamaskrangetype' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'] }, - 'retouchareamaskrangeversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'] }, - 'retouchareamaskreferencepoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'], 523 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'] }, - 'retouchareamaskright' => { 521 => [\'RetouchAreas','RetouchAreasMasksRight'], 523 => [\'RetouchAreas','RetouchAreasMasksRight'] }, - 'retouchareamaskroundness' => { 521 => [\'RetouchAreas','RetouchAreasMasksRoundness'], 523 => [\'RetouchAreas','RetouchAreasMasksRoundness'] }, - 'retouchareamasks' => { 521 => [\'RetouchAreas','RetouchAreasMasks'], 523 => [\'RetouchAreas','RetouchAreasMasks'] }, - 'retouchareamasksizex' => { 521 => [\'RetouchAreas','RetouchAreasMasksSizeX'], 523 => [\'RetouchAreas','RetouchAreasMasksSizeX'] }, - 'retouchareamasksizey' => { 521 => [\'RetouchAreas','RetouchAreasMasksSizeY'], 523 => [\'RetouchAreas','RetouchAreasMasksSizeY'] }, - 'retouchareamasktop' => { 521 => [\'RetouchAreas','RetouchAreasMasksTop'], 523 => [\'RetouchAreas','RetouchAreasMasksTop'] }, - 'retouchareamaskvalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskValue'] }, - 'retouchareamaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksVersion'] }, - 'retouchareamaskwhat' => { 521 => [\'RetouchAreas','RetouchAreasMasksWhat'], 523 => [\'RetouchAreas','RetouchAreasMasksWhat'] }, - 'retouchareamaskwholeimagearea' => { 521 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'], 523 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'] }, - 'retouchareamaskx' => { 521 => [\'RetouchAreas','RetouchAreasMasksX'], 523 => [\'RetouchAreas','RetouchAreasMasksX'] }, - 'retouchareamasky' => { 521 => [\'RetouchAreas','RetouchAreasMasksY'], 523 => [\'RetouchAreas','RetouchAreasMasksY'] }, - 'retouchareamaskzerox' => { 521 => [\'RetouchAreas','RetouchAreasMasksZeroX'], 523 => [\'RetouchAreas','RetouchAreasMasksZeroX'] }, - 'retouchareamaskzeroy' => { 521 => [\'RetouchAreas','RetouchAreasMasksZeroY'], 523 => [\'RetouchAreas','RetouchAreasMasksZeroY'] }, - 'retouchareamethod' => { 521 => [\'RetouchAreas','RetouchAreasMethod'], 523 => [\'RetouchAreas','RetouchAreasMethod'] }, - 'retouchareaoffsety' => { 521 => [\'RetouchAreas','RetouchAreasOffsetY'], 523 => [\'RetouchAreas','RetouchAreasOffsetY'] }, - 'retouchareaopacity' => { 521 => [\'RetouchAreas','RetouchAreasOpacity'], 523 => [\'RetouchAreas','RetouchAreasOpacity'] }, - 'retouchareas' => { 521 => 'RetouchAreas', 523 => 'RetouchAreas' }, - 'retouchareaseed' => { 521 => [\'RetouchAreas','RetouchAreasSeed'], 523 => [\'RetouchAreas','RetouchAreasSeed'] }, - 'retouchareasourcestate' => { 521 => [\'RetouchAreas','RetouchAreasSourceState'], 523 => [\'RetouchAreas','RetouchAreasSourceState'] }, - 'retouchareasourcex' => { 521 => [\'RetouchAreas','RetouchAreasSourceX'], 523 => [\'RetouchAreas','RetouchAreasSourceX'] }, - 'retouchareaspottype' => { 521 => [\'RetouchAreas','RetouchAreasSpotType'], 523 => [\'RetouchAreas','RetouchAreasSpotType'] }, + 'restrictions' => { 545 => 'restrictions' }, + 'retouchareafeather' => { 523 => [\'RetouchAreas','RetouchAreasFeather'], 525 => [\'RetouchAreas','RetouchAreasFeather'] }, + 'retouchareamaskalpha' => { 523 => [\'RetouchAreas','RetouchAreasMasksAlpha'], 525 => [\'RetouchAreas','RetouchAreasMasksAlpha'] }, + 'retouchareamaskangle' => { 523 => [\'RetouchAreas','RetouchAreasMasksAngle'], 525 => [\'RetouchAreas','RetouchAreasMasksAngle'] }, + 'retouchareamaskbottom' => { 523 => [\'RetouchAreas','RetouchAreasMasksBottom'], 525 => [\'RetouchAreas','RetouchAreasMasksBottom'] }, + 'retouchareamaskcentervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksCenterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksCenterValue'] }, + 'retouchareamaskcenterweight' => { 523 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'], 525 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'] }, + 'retouchareamaskdabs' => { 523 => [\'RetouchAreas','RetouchAreasMasksDabs'], 525 => [\'RetouchAreas','RetouchAreasMasksDabs'] }, + 'retouchareamaskfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksFeather'] }, + 'retouchareamaskflipped' => { 523 => [\'RetouchAreas','RetouchAreasMasksFlipped'], 525 => [\'RetouchAreas','RetouchAreasMasksFlipped'] }, + 'retouchareamaskflow' => { 523 => [\'RetouchAreas','RetouchAreasMasksFlow'], 525 => [\'RetouchAreas','RetouchAreasMasksFlow'] }, + 'retouchareamaskfullx' => { 523 => [\'RetouchAreas','RetouchAreasMasksFullX'], 525 => [\'RetouchAreas','RetouchAreasMasksFullX'] }, + 'retouchareamaskfully' => { 523 => [\'RetouchAreas','RetouchAreasMasksFullY'], 525 => [\'RetouchAreas','RetouchAreasMasksFullY'] }, + 'retouchareamaskinputdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksInputDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksInputDigest'] }, + 'retouchareamaskleft' => { 523 => [\'RetouchAreas','RetouchAreasMasksLeft'], 525 => [\'RetouchAreas','RetouchAreasMasksLeft'] }, + 'retouchareamaskmaskactive' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskActive'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskActive'] }, + 'retouchareamaskmaskblendmode' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'] }, + 'retouchareamaskmaskdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'] }, + 'retouchareamaskmaskinverted' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'] }, + 'retouchareamaskmaskname' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskName'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskName'] }, + 'retouchareamaskmasks' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasks'], 525 => [\'RetouchAreas','RetouchAreasMasksMasks'] }, + 'retouchareamaskmasksalpha' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'] }, + 'retouchareamaskmasksangle' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'] }, + 'retouchareamaskmasksbottom' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'] }, + 'retouchareamaskmaskscentervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'] }, + 'retouchareamaskmaskscenterweight' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'] }, + 'retouchareamaskmasksdabs' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'] }, + 'retouchareamaskmasksfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'] }, + 'retouchareamaskmasksflipped' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'] }, + 'retouchareamaskmasksflow' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'] }, + 'retouchareamaskmasksfullx' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'] }, + 'retouchareamaskmasksfully' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'] }, + 'retouchareamaskmasksinputdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'] }, + 'retouchareamaskmasksleft' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'] }, + 'retouchareamaskmasksmaskactive' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'] }, + 'retouchareamaskmasksmaskblendmode' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'] }, + 'retouchareamaskmasksmaskdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'] }, + 'retouchareamaskmasksmaskinverted' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'] }, + 'retouchareamaskmasksmaskname' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'] }, + 'retouchareamaskmasksmasksubtype' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'] }, + 'retouchareamaskmasksmasksyncid' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'] }, + 'retouchareamaskmasksmaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'] }, + 'retouchareamaskmasksmidpoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'] }, + 'retouchareamaskmasksorigin' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'] }, + 'retouchareamaskmasksperimetervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'] }, + 'retouchareamaskmasksradius' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'] }, + 'retouchareamaskmasksreferencepoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'] }, + 'retouchareamaskmasksright' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRight'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRight'] }, + 'retouchareamaskmasksroundness' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'] }, + 'retouchareamaskmaskssizex' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'] }, + 'retouchareamaskmaskssizey' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'] }, + 'retouchareamaskmaskstop' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksTop'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksTop'] }, + 'retouchareamaskmasksubtype' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'] }, + 'retouchareamaskmasksvalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'] }, + 'retouchareamaskmasksversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'] }, + 'retouchareamaskmaskswhat' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'] }, + 'retouchareamaskmaskswholeimagearea' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'] }, + 'retouchareamaskmasksx' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksX'] }, + 'retouchareamaskmasksy' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksY'] }, + 'retouchareamaskmasksyncid' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'] }, + 'retouchareamaskmaskszerox' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'] }, + 'retouchareamaskmaskszeroy' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'] }, + 'retouchareamaskmaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'] }, + 'retouchareamaskmidpoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMidpoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMidpoint'] }, + 'retouchareamaskorigin' => { 523 => [\'RetouchAreas','RetouchAreasMasksOrigin'], 525 => [\'RetouchAreas','RetouchAreasMasksOrigin'] }, + 'retouchareamaskperimetervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'] }, + 'retouchareamaskradius' => { 523 => [\'RetouchAreas','RetouchAreasMasksRadius'], 525 => [\'RetouchAreas','RetouchAreasMasksRadius'] }, + 'retouchareamaskrange' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'] }, + 'retouchareamaskrangeareamodels' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'] }, + 'retouchareamaskrangeareamodelscolorsampleinfo' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'retouchareamaskrangeareamodelscomponents' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'retouchareamaskrangecoloramount' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'] }, + 'retouchareamaskrangedepthfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'] }, + 'retouchareamaskrangedepthmax' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'] }, + 'retouchareamaskrangedepthmin' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'] }, + 'retouchareamaskrangeinvert' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'] }, + 'retouchareamaskrangelumfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'] }, + 'retouchareamaskrangeluminancedepthsampleinfo' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'retouchareamaskrangelummax' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'] }, + 'retouchareamaskrangelummin' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'] }, + 'retouchareamaskrangelumrange' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'] }, + 'retouchareamaskrangesampletype' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'] }, + 'retouchareamaskrangetype' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'] }, + 'retouchareamaskrangeversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'] }, + 'retouchareamaskreferencepoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'], 525 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'] }, + 'retouchareamaskright' => { 523 => [\'RetouchAreas','RetouchAreasMasksRight'], 525 => [\'RetouchAreas','RetouchAreasMasksRight'] }, + 'retouchareamaskroundness' => { 523 => [\'RetouchAreas','RetouchAreasMasksRoundness'], 525 => [\'RetouchAreas','RetouchAreasMasksRoundness'] }, + 'retouchareamasks' => { 523 => [\'RetouchAreas','RetouchAreasMasks'], 525 => [\'RetouchAreas','RetouchAreasMasks'] }, + 'retouchareamasksizex' => { 523 => [\'RetouchAreas','RetouchAreasMasksSizeX'], 525 => [\'RetouchAreas','RetouchAreasMasksSizeX'] }, + 'retouchareamasksizey' => { 523 => [\'RetouchAreas','RetouchAreasMasksSizeY'], 525 => [\'RetouchAreas','RetouchAreasMasksSizeY'] }, + 'retouchareamasktop' => { 523 => [\'RetouchAreas','RetouchAreasMasksTop'], 525 => [\'RetouchAreas','RetouchAreasMasksTop'] }, + 'retouchareamaskvalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskValue'] }, + 'retouchareamaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksVersion'] }, + 'retouchareamaskwhat' => { 523 => [\'RetouchAreas','RetouchAreasMasksWhat'], 525 => [\'RetouchAreas','RetouchAreasMasksWhat'] }, + 'retouchareamaskwholeimagearea' => { 523 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'], 525 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'] }, + 'retouchareamaskx' => { 523 => [\'RetouchAreas','RetouchAreasMasksX'], 525 => [\'RetouchAreas','RetouchAreasMasksX'] }, + 'retouchareamasky' => { 523 => [\'RetouchAreas','RetouchAreasMasksY'], 525 => [\'RetouchAreas','RetouchAreasMasksY'] }, + 'retouchareamaskzerox' => { 523 => [\'RetouchAreas','RetouchAreasMasksZeroX'], 525 => [\'RetouchAreas','RetouchAreasMasksZeroX'] }, + 'retouchareamaskzeroy' => { 523 => [\'RetouchAreas','RetouchAreasMasksZeroY'], 525 => [\'RetouchAreas','RetouchAreasMasksZeroY'] }, + 'retouchareamethod' => { 523 => [\'RetouchAreas','RetouchAreasMethod'], 525 => [\'RetouchAreas','RetouchAreasMethod'] }, + 'retouchareaoffsety' => { 523 => [\'RetouchAreas','RetouchAreasOffsetY'], 525 => [\'RetouchAreas','RetouchAreasOffsetY'] }, + 'retouchareaopacity' => { 523 => [\'RetouchAreas','RetouchAreasOpacity'], 525 => [\'RetouchAreas','RetouchAreasOpacity'] }, + 'retouchareas' => { 523 => 'RetouchAreas', 525 => 'RetouchAreas' }, + 'retouchareaseed' => { 523 => [\'RetouchAreas','RetouchAreasSeed'], 525 => [\'RetouchAreas','RetouchAreasSeed'] }, + 'retouchareasourcestate' => { 523 => [\'RetouchAreas','RetouchAreasSourceState'], 525 => [\'RetouchAreas','RetouchAreasSourceState'] }, + 'retouchareasourcex' => { 523 => [\'RetouchAreas','RetouchAreasSourceX'], 525 => [\'RetouchAreas','RetouchAreasSourceX'] }, + 'retouchareaspottype' => { 523 => [\'RetouchAreas','RetouchAreasSpotType'], 525 => [\'RetouchAreas','RetouchAreasSpotType'] }, 'retouchhistory' => { 243 => 0x9e }, - 'retouchinfo' => { 521 => 'RetouchInfo', 523 => 'RetouchInfo' }, + 'retouchinfo' => { 523 => 'RetouchInfo', 525 => 'RetouchInfo' }, 'retouchnefprocessing' => { 266 => 0x5 }, 'retractlensonpoweroff' => { 90 => 0x814 }, 'reuse' => { 340 => 'Reuse' }, - 'reuseallowed' => { 553 => 'ReuseAllowed' }, - 'reuseprohibited' => { 543 => 'reuseProhibited' }, + 'reuseallowed' => { 555 => 'ReuseAllowed' }, + 'reuseprohibited' => { 545 => 'reuseProhibited' }, 'reverseexposurecompdial' => { 316 => '5.2' }, 'reversefocusring' => { 326 => 0x163, 327 => 0x163, 328 => 0x17b }, 'reverseindicators' => { 309 => '12.1', 310 => '6.1', 312 => '6.1', 313 => '6.1', 314 => '4.3', 315 => '5.2', 316 => '5.4', 318 => '33.5', 319 => '5.1', 322 => '6.1', 323 => '6.1', 324 => '6.2', 325 => 0xc5, 326 => 0xc1, 327 => 0xc1, 328 => 0xc1 }, 'reverseshutterspeedaperture' => { 316 => '5.3' }, - 'revision' => { 525 => 'revision' }, + 'revision' => { 527 => 'revision' }, 'rflensmffocusringsensitivity' => { 90 => 0x714 }, 'rflenstype' => { 61 => 0x3d }, 'rgbcurvelimits' => { 114 => 0x238 }, 'rgbcurvepoints' => { 113 => 0x7, 114 => 0x20e }, 'rgbtables' => { 125 => 0xcd3f }, - 'richtextcomment' => { 530 => 'RichTextComment' }, - 'ricohdate' => { 421 => 0x6 }, - 'ricohimageheight' => { 421 => 0x2 }, - 'ricohimagewidth' => { 421 => 0x0 }, - 'rightalbedo' => { 511 => 'RightAlbedo' }, + 'richtextcomment' => { 532 => 'RichTextComment' }, + 'ricohdate' => { 423 => 0x6 }, + 'ricohimageheight' => { 423 => 0x2 }, + 'ricohimagewidth' => { 423 => 0x0 }, + 'rightalbedo' => { 513 => 'RightAlbedo' }, 'rightascension' => { 172 => 'RightAscension' }, - 'rights' => { 524 => 'rights' }, - 'rightsagent' => { 543 => 'rightsAgent' }, - 'rightsowner' => { 543 => 'rightsOwner' }, - 'roll' => { 121 => 0x8, 415 => ['roll',"\xa9frl"] }, - 'rollangle' => { 66 => 0x4, 133 => 0x144d, 258 => 0x0, 330 => 0x903, 344 => 'RollAngle', 354 => 0x90, 388 => 0x1, 389 => 0x3, 427 => 0x2 }, + 'rights' => { 526 => 'rights' }, + 'rightsagent' => { 545 => 'rightsAgent' }, + 'rightsowner' => { 545 => 'rightsOwner' }, + 'roll' => { 121 => 0x8, 416 => ['roll',"\xa9frl"] }, + 'rollangle' => { 66 => 0x4, 133 => 0x144d, 258 => 0x0, 330 => 0x903, 344 => 'RollAngle', 354 => 0x90, 388 => 0x1, 389 => 0x3, 429 => 0x2 }, 'romoperationmode' => { 103 => 0x80d }, - 'rotation' => { 31 => 0x17, 32 => 0x18, 102 => 0x3, 109 => 0x10002, 114 => 0x26e, 120 => 'QuickTime-Rotation', 129 => 0x4, 172 => 'Rotation', 189 => [0x65,0x50], 190 => 0x46, 191 => 0x5a, 194 => 0x10, 267 => 0x1a, 282 => 0x3693, 288 => '590.1', 302 => 0x76a43207, 354 => 0x30, 370 => '17.2', 401 => 0xd8, 408 => 'irot', 442 => 0x3f, 443 => 0x3f, 453 => 0x10 }, - 'routedto' => { 529 => 'RoutedTo' }, + 'rotation' => { 31 => 0x17, 32 => 0x18, 102 => 0x3, 109 => 0x10002, 114 => 0x26e, 120 => 'QuickTime-Rotation', 129 => 0x4, 172 => 'Rotation', 189 => [0x65,0x50], 190 => 0x46, 191 => 0x5a, 194 => 0x10, 267 => 0x1a, 282 => 0x3693, 288 => '590.1', 302 => 0x76a43207, 354 => 0x30, 370 => '17.2', 401 => 0xd8, 409 => 'irot', 444 => 0x3f, 445 => 0x3f, 455 => 0x10 }, + 'routedto' => { 531 => 'RoutedTo' }, 'routing' => { 406 => 'Routing' }, - 'routingdestinations' => { 509 => 'RoutingDestinations' }, - 'routingexclusions' => { 509 => 'RoutingExclusions' }, - 'routingnotes' => { 529 => 'RoutingNotes' }, + 'routingdestinations' => { 511 => 'RoutingDestinations' }, + 'routingexclusions' => { 511 => 'RoutingExclusions' }, + 'routingnotes' => { 531 => 'RoutingNotes' }, 'rowsperstrip' => { 125 => 0x116 }, - 'rpp' => { 515 => 'rpp' }, + 'rpp' => { 517 => 'rpp' }, 'rtkflag' => { 122 => 'RtkFlag' }, 'rtkstdhgt' => { 122 => 'RtkStdHgt' }, 'rtkstdlat' => { 122 => 'RtkStdLat' }, @@ -6333,36 +6336,36 @@ my %tagLookup = ( 'safetyshiftinavortv' => { 88 => 0x10, 89 => 0x10, 91 => 0xf, 92 => 0x10, 95 => 0x10 }, 'sameexposurefornewaperture' => { 90 => 0x112 }, 'samplebits' => { 162 => 'SampleBits' }, - 'samplepagerange' => { 540 => 'samplePageRange' }, + 'samplepagerange' => { 542 => 'samplePageRange' }, 'samplerate' => { 162 => 'SampleRate' }, - 'samplesperpixel' => { 125 => 0x115, 359 => 0x8, 546 => 'SamplesPerPixel' }, + 'samplesperpixel' => { 125 => 0x115, 359 => 0x8, 548 => 'SamplesPerPixel' }, 'samplestructure' => { 140 => 0x5a }, - 'samsungmodelid' => { 429 => 0x3 }, - 'sanyoquality' => { 431 => 0x201 }, - 'sanyothumbnail' => { 431 => 0x100 }, - 'saturation' => { 10 => 0x6e, 12 => 0x76, 37 => 0xe, 55 => 0x1, 68 => 0x7, 118 => 0xd, 119 => [0x3013,0x1f], 125 => [0xa409,0xfe55], 133 => 0x1003, 163 => 'Saturation', 188 => 0x1f, 189 => 0x32, 190 => 0x28, 191 => 0x1a, 196 => 0x1, 243 => 0xaa, 260 => 0x35, 261 => 0x3b, 262 => 0x43, 354 => 0x40, 356 => 0x300d, 390 => 0x1f, 397 => 0xd, 416 => 0x27, 418 => 0x58, 421 => 0x28, 422 => 0x1013, 432 => 0x10, 442 => 0x1e, 443 => 0x1b, 456 => 0x2005, 521 => 'Saturation', 523 => 'Saturation', 527 => 'Saturation' }, - 'saturationadj' => { 109 => 0x20901, 114 => 0x116, 243 => 0x94, 301 => 0x1, 305 => 0x2e, 493 => 0x8016 }, - 'saturationadjustmentaqua' => { 521 => 'SaturationAdjustmentAqua', 523 => 'SaturationAdjustmentAqua' }, - 'saturationadjustmentblue' => { 521 => 'SaturationAdjustmentBlue', 523 => 'SaturationAdjustmentBlue' }, - 'saturationadjustmentgreen' => { 521 => 'SaturationAdjustmentGreen', 523 => 'SaturationAdjustmentGreen' }, - 'saturationadjustmentmagenta' => { 521 => 'SaturationAdjustmentMagenta', 523 => 'SaturationAdjustmentMagenta' }, - 'saturationadjustmentorange' => { 521 => 'SaturationAdjustmentOrange', 523 => 'SaturationAdjustmentOrange' }, - 'saturationadjustmentpurple' => { 521 => 'SaturationAdjustmentPurple', 523 => 'SaturationAdjustmentPurple' }, - 'saturationadjustmentred' => { 521 => 'SaturationAdjustmentRed', 523 => 'SaturationAdjustmentRed' }, - 'saturationadjustmentyellow' => { 521 => 'SaturationAdjustmentYellow', 523 => 'SaturationAdjustmentYellow' }, + 'samsungmodelid' => { 431 => 0x3 }, + 'sanyoquality' => { 433 => 0x201 }, + 'sanyothumbnail' => { 433 => 0x100 }, + 'saturation' => { 10 => 0x6e, 12 => 0x76, 37 => 0xe, 55 => 0x1, 68 => 0x7, 118 => 0xd, 119 => [0x3013,0x1f], 125 => [0xa409,0xfe55], 133 => 0x1003, 163 => 'Saturation', 188 => 0x1f, 189 => 0x32, 190 => 0x28, 191 => 0x1a, 196 => 0x1, 243 => 0xaa, 260 => 0x35, 261 => 0x3b, 262 => 0x43, 354 => 0x40, 356 => 0x300d, 390 => 0x1f, 397 => 0xd, 418 => 0x27, 420 => 0x58, 423 => 0x28, 424 => 0x1013, 434 => 0x10, 444 => 0x1e, 445 => 0x1b, 458 => 0x2005, 523 => 'Saturation', 525 => 'Saturation', 529 => 'Saturation' }, + 'saturationadj' => { 109 => 0x20901, 114 => 0x116, 243 => 0x94, 301 => 0x1, 305 => 0x2e, 495 => 0x8016 }, + 'saturationadjustmentaqua' => { 523 => 'SaturationAdjustmentAqua', 525 => 'SaturationAdjustmentAqua' }, + 'saturationadjustmentblue' => { 523 => 'SaturationAdjustmentBlue', 525 => 'SaturationAdjustmentBlue' }, + 'saturationadjustmentgreen' => { 523 => 'SaturationAdjustmentGreen', 525 => 'SaturationAdjustmentGreen' }, + 'saturationadjustmentmagenta' => { 523 => 'SaturationAdjustmentMagenta', 525 => 'SaturationAdjustmentMagenta' }, + 'saturationadjustmentorange' => { 523 => 'SaturationAdjustmentOrange', 525 => 'SaturationAdjustmentOrange' }, + 'saturationadjustmentpurple' => { 523 => 'SaturationAdjustmentPurple', 525 => 'SaturationAdjustmentPurple' }, + 'saturationadjustmentred' => { 523 => 'SaturationAdjustmentRed', 525 => 'SaturationAdjustmentRed' }, + 'saturationadjustmentyellow' => { 523 => 'SaturationAdjustmentYellow', 525 => 'SaturationAdjustmentYellow' }, 'saturationauto' => { 76 => 0x98 }, 'saturationfaithful' => { 19 => 0xfe, 75 => 0x68, 76 => 0x68 }, 'saturationlandscape' => { 19 => 0xfc, 75 => 0x38, 76 => 0x38 }, 'saturationmonochrome' => { 75 => 0x80, 76 => 0x80 }, 'saturationneutral' => { 19 => 0xfd, 75 => 0x50, 76 => 0x50 }, 'saturationportrait' => { 19 => 0xfb, 75 => 0x20, 76 => 0x20 }, - 'saturationsetting' => { 338 => 0x1010, 444 => 0x11, 461 => 0x9 }, + 'saturationsetting' => { 338 => 0x1010, 446 => 0x11, 463 => 0x9 }, 'saturationstandard' => { 19 => 0xfa, 75 => 0x8, 76 => 0x8 }, 'saturationuserdef1' => { 19 => 0x100, 75 => 0x98, 76 => 0xb0 }, 'saturationuserdef2' => { 19 => 0x101, 75 => 0xb0, 76 => 0xc8 }, 'saturationuserdef3' => { 19 => 0x102, 75 => 0xc8, 76 => 0xe0 }, 'savefocusposition' => { 247 => 0x9b0 }, - 'saveid' => { 551 => 'SaveID' }, + 'saveid' => { 553 => 'SaveID' }, 'sbaanalysiscomplete' => { 145 => 0xc35 }, 'sbablack' => { 145 => 0xc25 }, 'sbagmoffset' => { 145 => 0xc4a }, @@ -6374,70 +6377,70 @@ my %tagLookup = ( 'sbalowgray' => { 145 => 0xc47 }, 'sbaneutralbal' => { 145 => 0xc32 }, 'sbawhite' => { 145 => 0xc27 }, - 'scaletype' => { 550 => 'scaleType' }, + 'scaletype' => { 552 => 'scaleType' }, 'scalingfactorheight' => { 344 => 'ScalingFactorHeight' }, 'scanimageenhancer' => { 268 => 0x60 }, 'scanningdirection' => { 140 => 0x64 }, - 'scene' => { 415 => 'scen', 534 => 'Scene', 550 => 'scene' }, + 'scene' => { 416 => 'scen', 536 => 'Scene', 552 => 'scene' }, 'scenearea' => { 333 => 0x211, 335 => 0x1031 }, 'sceneassist' => { 243 => 0x9c }, - 'scenecapturetype' => { 125 => 0xa406, 527 => 'SceneCaptureType' }, + 'scenecapturetype' => { 125 => 0xa406, 529 => 'SceneCaptureType' }, 'scenedetect' => { 333 => 0x210, 335 => 0x1030 }, 'scenedetectdata' => { 333 => 0x212, 335 => 0x1033 }, 'sceneflags' => { 1 => 0x25 }, - 'scenemode' => { 149 => 0xfa02, 193 => 0x100, 243 => 0x8f, 330 => 0x509, 335 => 0x403, 354 => 0x8001, 363 => 0xf, 456 => 0xb023 }, + 'scenemode' => { 149 => 0xfa02, 193 => 0x100, 243 => 0x8f, 330 => 0x509, 335 => 0x403, 354 => 0x8001, 363 => 0xf, 458 => 0xb023 }, 'scenemodeused' => { 151 => [0x6002,0xf002] }, 'scenerecognition' => { 133 => 0x1425 }, - 'scenereferred' => { 531 => 'scene_referred' }, - 'sceneselect' => { 431 => 0x21f }, - 'scenetype' => { 125 => 0xa301, 527 => 'SceneType' }, + 'scenereferred' => { 533 => 'scene_referred' }, + 'sceneselect' => { 433 => 0x21f }, + 'scenetype' => { 125 => 0xa301, 529 => 'SceneType' }, 'screentips' => { 309 => '12.7', 310 => '5.3', 318 => '13.1', 319 => '4.4', 322 => '5.4', 324 => '5.1' }, 'scriptversion' => { 145 => 0x1770 }, - 'sdrblend' => { 521 => 'SDRBlend', 523 => 'SDRBlend' }, - 'sdrbrightness' => { 521 => 'SDRBrightness', 523 => 'SDRBrightness' }, - 'sdrcontrast' => { 521 => 'SDRContrast', 523 => 'SDRContrast' }, - 'sdrhighlights' => { 521 => 'SDRHighlights', 523 => 'SDRHighlights' }, - 'sdrshadows' => { 521 => 'SDRShadows', 523 => 'SDRShadows' }, - 'sdrwhites' => { 521 => 'SDRWhites', 523 => 'SDRWhites' }, + 'sdrblend' => { 523 => 'SDRBlend', 525 => 'SDRBlend' }, + 'sdrbrightness' => { 523 => 'SDRBrightness', 525 => 'SDRBrightness' }, + 'sdrcontrast' => { 523 => 'SDRContrast', 525 => 'SDRContrast' }, + 'sdrhighlights' => { 523 => 'SDRHighlights', 525 => 'SDRHighlights' }, + 'sdrshadows' => { 523 => 'SDRShadows', 525 => 'SDRShadows' }, + 'sdrwhites' => { 523 => 'SDRWhites', 525 => 'SDRWhites' }, 'seal' => { 125 => 0xcea1 }, - 'season' => { 535 => 'Season', 539 => 'season' }, - 'seasonidentifier' => { 535 => [\'Season','SeasonIdentifier'] }, - 'seasonname' => { 535 => [\'Season','SeasonName'] }, - 'seasonnumber' => { 535 => [\'Season','SeasonNumber'] }, - 'secondaryftp' => { 509 => 'SecondaryFTP' }, + 'season' => { 537 => 'Season', 541 => 'season' }, + 'seasonidentifier' => { 537 => [\'Season','SeasonIdentifier'] }, + 'seasonname' => { 537 => [\'Season','SeasonName'] }, + 'seasonnumber' => { 537 => [\'Season','SeasonNumber'] }, + 'secondaryftp' => { 511 => 'SecondaryFTP' }, 'secondaryslotfunction' => { 247 => 0x35a, 249 => 0x240, 250 => 0x240, 251 => 0x22c, 252 => 0x240, 253 => 0x240, 271 => 0x13c, 282 => 0x1d0 }, - 'section' => { 540 => 'section' }, + 'section' => { 542 => 'section' }, 'securityclassification' => { 125 => 0x9212 }, 'selectableafpoint' => { 90 => 0x509 }, 'selectafareaselectionmode' => { 2 => 0xc }, 'selectafareaselectmode' => { 90 => 0x512 }, 'selfdata' => { 122 => 'SelfData' }, - 'selftimer' => { 37 => 0x2, 354 => 0x2e, 431 => 0x214, 465 => 0x1134, 466 => 0x1134, 467 => 0x1110, 468 => 0x118c, 469 => 0x1168, 470 => 0x1020, 471 => 0x218, 472 => 0x218, 473 => 0x210 }, + 'selftimer' => { 37 => 0x2, 354 => 0x2e, 433 => 0x214, 467 => 0x1134, 468 => 0x1134, 469 => 0x1110, 470 => 0x118c, 471 => 0x1168, 472 => 0x1020, 473 => 0x218, 474 => 0x218, 475 => 0x210 }, 'selftimer2' => { 82 => 0x1d }, 'selftimerinterval' => { 319 => '19.2' }, 'selftimermode' => { 125 => 0x882b }, 'selftimershotcount' => { 310 => '20.2', 312 => '20.3', 313 => '20.3', 314 => '18.2', 315 => '19.2', 316 => '19.2', 317 => '19.3', 319 => '19.3', 322 => '20.3', 323 => '20.3', 324 => '20.2', 325 => 0x31, 326 => 0x2d, 327 => 0x2d, 328 => 0x2d }, 'selftimershotinterval' => { 310 => '20.3', 312 => '20.2', 313 => '20.2', 317 => '19.2', 322 => '20.2', 323 => '20.2', 325 => 0x35, 326 => 0x31, 327 => 0x31, 328 => 0x31 }, 'selftimertime' => { 103 => 0x1806, 191 => 0x1f, 309 => '18.1', 310 => '20.1', 311 => '3.3', 312 => '20.1', 313 => '20.1', 314 => '18.1', 315 => '19.1', 316 => '19.1', 317 => '19.1', 318 => '7.2', 319 => '19.1', 320 => '3.3', 322 => '20.1', 323 => '20.1', 324 => '20.1', 325 => 0x2d, 326 => 0x2b, 327 => 0x2b, 328 => 0x2b }, - 'sellingagency' => { 540 => 'sellingAgency' }, + 'sellingagency' => { 542 => 'sellingAgency' }, 'semanticstyle' => { 1 => 0x40 }, 'semanticstylepreset' => { 1 => 0x42 }, 'semanticstylerenderingver' => { 1 => 0x41 }, 'seminfo' => { 125 => 0x8546 }, - 'sensingmethod' => { 125 => 0xa217, 527 => 'SensingMethod' }, + 'sensingmethod' => { 125 => 0xa217, 529 => 'SensingMethod' }, 'sensitivityadjust' => { 390 => 0x40 }, 'sensitivitysteps' => { 370 => ['14.3','17.4'], 372 => 0x1 }, - 'sensitivitytype' => { 125 => 0x8830, 528 => 'SensitivityType' }, + 'sensitivitytype' => { 125 => 0x8830, 530 => 'SensitivityType' }, 'sensor' => { 198 => 0x665e }, 'sensorarea' => { 335 => 0x400 }, - 'sensorareas' => { 429 => 0xa010 }, + 'sensorareas' => { 431 => 0xa010 }, 'sensorbitdepth' => { 356 => 0x312d }, 'sensorbluelevel' => { 79 => 0x5 }, 'sensorcalibration' => { 334 => 0x805 }, 'sensorcleaning' => { 96 => 0xd }, 'sensorfullheight' => { 144 => 0xf904 }, 'sensorfullwidth' => { 144 => 0xf903 }, - 'sensorheight' => { 144 => 0xf901, 149 => 0xfa21, 195 => 0x8, 356 => 0x312c, 399 => 0x109, 422 => 0x1602 }, + 'sensorheight' => { 144 => 0xf901, 149 => 0xfa21, 195 => 0x8, 356 => 0x312c, 399 => 0x109, 424 => 0x1602 }, 'sensorimageheight' => { 145 => 0x3ee }, 'sensorimagewidth' => { 145 => 0x3ed }, 'sensorleftborder' => { 145 => 0x3eb }, @@ -6447,61 +6450,61 @@ my %tagLookup = ( 'sensorserialnumber' => { 145 => 0x9ce }, 'sensorshield' => { 249 => 0x76b, 250 => 0x77b, 251 => 0x66d, 252 => 0x69d, 253 => 0x705 }, 'sensorsize' => { 163 => 'SensorSize', 390 => 0x35 }, - 'sensortemperature' => { 333 => 0x1500, 335 => 0x1007, 395 => 0xc, 399 => 0x210, 432 => [0x39,0x55] }, + 'sensortemperature' => { 333 => 0x1500, 335 => 0x1007, 395 => 0xc, 399 => 0x210, 434 => [0x39,0x55] }, 'sensortemperature2' => { 395 => 0xe, 399 => 0x211 }, 'sensortopborder' => { 145 => 0x3ec }, 'sensortopmargin' => { 399 => 0x10b }, 'sensortype' => { 354 => 0xca }, - 'sensorwidth' => { 144 => 0xf900, 149 => 0xfa20, 195 => 0xa, 356 => 0x312b, 399 => 0x108, 422 => 0x1601 }, - 'sequence' => { 416 => 0x7, 417 => 0x35, 418 => 0x36 }, - 'sequencefilenumber' => { 466 => 0x4, 467 => 0x4, 468 => 0x4, 469 => 0x4, 479 => 0xc, 480 => 0xc, 481 => 0x1a }, - 'sequenceimagenumber' => { 466 => 0x0, 467 => 0x0, 468 => 0x0, 469 => 0x0, 479 => 0x8, 480 => 0x8, 481 => 0x12, 488 => 0x24 }, - 'sequencelength' => { 479 => 0x22, 480 => 0x1e, 481 => [0x16,0x1e] }, - 'sequencename' => { 539 => 'sequenceName' }, - 'sequencenumber' => { 82 => 0x9, 119 => 0x301c, 133 => 0x1101, 147 => 0x1d, 289 => 0x51c, 354 => 0x2b, 444 => [0x10c,0x30c], 456 => 0xb04a, 539 => 'sequenceNumber' }, - 'sequenceshotinterval' => { 431 => 0x224 }, - 'sequencetotalnumber' => { 539 => 'sequenceTotalNumber' }, - 'sequentialshot' => { 431 => 0x20e }, - 'serialnumber' => { 69 => 0xc, 103 => 0x180b, 125 => [0xa431,0xfde9], 144 => 0xfa04, 146 => 0xfa00, 148 => 0xc354, 149 => 0xfa19, 160 => 0x0, 163 => 'SerialNumber', 198 => 0x5501, 243 => [0xa0,0x1d], 331 => 0x101, 335 => [0x404,0x101a], 349 => 0x303, 351 => 0x305, 356 => 0x3103, 390 => 0x229, 399 => 0x102, 400 => 0x407, 415 => ['SNum','slno'], 416 => 0x15, 417 => 0x4b, 418 => 0x7e, 422 => 0x5, 429 => 0xa002, 432 => 0x2, 456 => 0x2031, 518 => 'SerialNumber', 528 => 'BodySerialNumber' }, + 'sensorwidth' => { 144 => 0xf900, 149 => 0xfa20, 195 => 0xa, 356 => 0x312b, 399 => 0x108, 424 => 0x1601 }, + 'sequence' => { 418 => 0x7, 419 => 0x35, 420 => 0x36 }, + 'sequencefilenumber' => { 468 => 0x4, 469 => 0x4, 470 => 0x4, 471 => 0x4, 481 => 0xc, 482 => 0xc, 483 => 0x1a }, + 'sequenceimagenumber' => { 468 => 0x0, 469 => 0x0, 470 => 0x0, 471 => 0x0, 481 => 0x8, 482 => 0x8, 483 => 0x12, 490 => 0x24 }, + 'sequencelength' => { 481 => 0x22, 482 => 0x1e, 483 => [0x16,0x1e] }, + 'sequencename' => { 541 => 'sequenceName' }, + 'sequencenumber' => { 82 => 0x9, 119 => 0x301c, 133 => 0x1101, 147 => 0x1d, 289 => 0x51c, 354 => 0x2b, 446 => [0x10c,0x30c], 458 => 0xb04a, 541 => 'sequenceNumber' }, + 'sequenceshotinterval' => { 433 => 0x224 }, + 'sequencetotalnumber' => { 541 => 'sequenceTotalNumber' }, + 'sequentialshot' => { 433 => 0x20e }, + 'serialnumber' => { 69 => 0xc, 103 => 0x180b, 125 => [0xa431,0xfde9], 144 => 0xfa04, 146 => 0xfa00, 148 => 0xc354, 149 => 0xfa19, 160 => 0x0, 163 => 'SerialNumber', 198 => 0x5501, 243 => [0xa0,0x1d], 331 => 0x101, 335 => [0x404,0x101a], 349 => 0x303, 351 => 0x305, 356 => 0x3103, 390 => 0x229, 399 => 0x102, 400 => 0x407, 416 => ['SNum','slno'], 418 => 0x15, 419 => 0x4b, 420 => 0x7e, 424 => 0x5, 431 => 0xa002, 434 => 0x2, 458 => 0x2031, 520 => 'SerialNumber', 530 => 'BodySerialNumber' }, 'serialnumberformat' => { 69 => 0x15, 103 => 0x183b }, - 'serialnumberhash' => { 415 => 'CAME' }, - 'series' => { 535 => 'Series' }, - 'seriesdatetime' => { 496 => 'SeriesDateTime' }, - 'seriesdescription' => { 496 => 'SeriesDescription' }, - 'seriesidentifier' => { 535 => [\'Series','SeriesIdentifier'] }, - 'seriesmodality' => { 496 => 'SeriesModality' }, - 'seriesname' => { 535 => [\'Series','SeriesName'] }, - 'seriesnumber' => { 496 => 'SeriesNumber', 540 => 'seriesNumber' }, - 'seriestitle' => { 540 => 'seriesTitle' }, + 'serialnumberhash' => { 416 => 'CAME' }, + 'series' => { 537 => 'Series' }, + 'seriesdatetime' => { 498 => 'SeriesDateTime' }, + 'seriesdescription' => { 498 => 'SeriesDescription' }, + 'seriesidentifier' => { 537 => [\'Series','SeriesIdentifier'] }, + 'seriesmodality' => { 498 => 'SeriesModality' }, + 'seriesname' => { 537 => [\'Series','SeriesName'] }, + 'seriesnumber' => { 498 => 'SeriesNumber', 542 => 'seriesNumber' }, + 'seriestitle' => { 542 => 'seriesTitle' }, 'serviceidentifier' => { 139 => 0x1e }, - 'servingsize' => { 542 => 'servingSize' }, + 'servingsize' => { 544 => 'servingSize' }, 'setbuttoncrosskeysfunc' => { 93 => 0x0, 94 => 0x0 }, 'setbuttonwhenshooting' => { 88 => 0x1, 90 => 0x704, 96 => 0xc }, 'setclockfromlocationdata' => { 251 => 0x61d, 252 => 0x64d, 253 => 0x6b5 }, 'setfunctionwhenshooting' => { 91 => 0x0, 92 => 0x1, 95 => 0x1 }, - 'setting' => { 539 => 'setting' }, + 'setting' => { 541 => 'setting' }, 'shadingcompensation' => { 330 => 0x50c, 354 => 0x8a }, 'shadingcompensation2' => { 334 => 0x1012 }, - 'shadow' => { 432 => 0xe }, + 'shadow' => { 434 => 0xe }, 'shadowadj' => { 109 => 0x2030b }, 'shadowcorrection' => { 390 => 0x79 }, 'shadowprotection' => { 301 => 0x0 }, - 'shadows' => { 125 => 0xfe52, 456 => 0x2032, 514 => 'Shadows', 521 => 'Shadows', 523 => 'Shadows' }, - 'shadows2012' => { 521 => 'Shadows2012', 523 => 'Shadows2012' }, - 'shadowsadj' => { 493 => 0x901a }, + 'shadows' => { 125 => 0xfe52, 458 => 0x2032, 516 => 'Shadows', 523 => 'Shadows', 525 => 'Shadows' }, + 'shadows2012' => { 523 => 'Shadows2012', 525 => 'Shadows2012' }, + 'shadowsadj' => { 495 => 0x901a }, 'shadowscale' => { 125 => 0xc633 }, - 'shadowtint' => { 521 => 'ShadowTint', 523 => 'ShadowTint' }, + 'shadowtint' => { 523 => 'ShadowTint', 525 => 'ShadowTint' }, 'shadowtone' => { 133 => 0x1040 }, 'shakereduction' => { 392 => 0x1, 393 => 0x1 }, 'shareduserrating' => { 186 => 'WM/SharedUserRating' }, - 'sharpendetail' => { 521 => 'SharpenDetail', 523 => 'SharpenDetail' }, - 'sharpenedgemasking' => { 521 => 'SharpenEdgeMasking', 523 => 'SharpenEdgeMasking' }, + 'sharpendetail' => { 523 => 'SharpenDetail', 525 => 'SharpenDetail' }, + 'sharpenedgemasking' => { 523 => 'SharpenEdgeMasking', 525 => 'SharpenEdgeMasking' }, 'sharpening' => { 356 => 0x300b }, 'sharpeningadj' => { 305 => 0x2b }, 'sharpeningkernel' => { 145 => 0x92f }, - 'sharpenradius' => { 521 => 'SharpenRadius', 523 => 'SharpenRadius' }, - 'sharpness' => { 8 => [0x42,0x48], 10 => 0x72, 12 => 0x74, 37 => 0xf, 68 => 0x6, 79 => 0x2, 118 => 0xb, 119 => [0x3011,0x21], 125 => [0xa40a,0xfe56], 133 => 0x1001, 147 => 0x6b, 156 => 0x37, 163 => 'Sharpness', 188 => 0x21, 189 => 0x30, 190 => 0x26, 191 => 0x18, 196 => 0x3, 243 => 0x6, 260 => 0x32, 261 => 0x33, 262 => 0x39, 335 => 0x100f, 354 => 0x41, 390 => 0x21, 397 => 0xb, 416 => 0x26, 418 => 0x56, 421 => 0x22, 422 => [0x1003,0x1014], 432 => 0x11, 442 => 0x1c, 443 => 0x19, 456 => 0x2006, 488 => 0x52, 521 => 'Sharpness', 523 => 'Sharpness', 527 => 'Sharpness' }, - 'sharpnessadj' => { 109 => 0x20310, 114 => 0x25a, 493 => 0x801a }, + 'sharpenradius' => { 523 => 'SharpenRadius', 525 => 'SharpenRadius' }, + 'sharpness' => { 8 => [0x42,0x48], 10 => 0x72, 12 => 0x74, 37 => 0xf, 68 => 0x6, 79 => 0x2, 118 => 0xb, 119 => [0x3011,0x21], 125 => [0xa40a,0xfe56], 133 => 0x1001, 147 => 0x6b, 156 => 0x37, 163 => 'Sharpness', 188 => 0x21, 189 => 0x30, 190 => 0x26, 191 => 0x18, 196 => 0x3, 243 => 0x6, 260 => 0x32, 261 => 0x33, 262 => 0x39, 335 => 0x100f, 354 => 0x41, 390 => 0x21, 397 => 0xb, 418 => 0x26, 420 => 0x56, 423 => 0x22, 424 => [0x1003,0x1014], 434 => 0x11, 444 => 0x1c, 445 => 0x19, 458 => 0x2006, 490 => 0x52, 523 => 'Sharpness', 525 => 'Sharpness', 529 => 'Sharpness' }, + 'sharpnessadj' => { 109 => 0x20310, 114 => 0x25a, 495 => 0x801a }, 'sharpnessadjon' => { 109 => '0x20310.0' }, 'sharpnessauto' => { 76 => 0x94 }, 'sharpnessfactor' => { 335 => 0x102a }, @@ -6510,51 +6513,51 @@ my %tagLookup = ( 'sharpnesslandscape' => { 19 => 0xf3, 75 => 0x34, 76 => 0x34 }, 'sharpnessmonochrome' => { 19 => 0xf6, 75 => 0x7c, 76 => 0x7c }, 'sharpnessneutral' => { 19 => 0xf4, 75 => 0x4c, 76 => 0x4c }, - 'sharpnessovershoot' => { 493 => 0x801b }, + 'sharpnessovershoot' => { 495 => 0x801b }, 'sharpnessportrait' => { 19 => 0xf2, 75 => 0x1c, 76 => 0x1c }, - 'sharpnessrange' => { 456 => 0x2035 }, - 'sharpnesssetting' => { 330 => 0x506, 338 => 0x1013, 444 => 0x12, 461 => 0xa }, + 'sharpnessrange' => { 458 => 0x2035 }, + 'sharpnesssetting' => { 330 => 0x506, 338 => 0x1013, 446 => 0x12, 463 => 0xa }, 'sharpnessstandard' => { 19 => 0xf1, 75 => 0x4, 76 => 0x4 }, 'sharpnessstrength' => { 109 => 0x20311 }, - 'sharpnessthreshold' => { 493 => 0x801d }, - 'sharpnessundershoot' => { 493 => 0x801c }, + 'sharpnessthreshold' => { 495 => 0x801d }, + 'sharpnessundershoot' => { 495 => 0x801c }, 'sharpnessuserdef1' => { 19 => 0xf7, 75 => 0x94, 76 => 0xac }, 'sharpnessuserdef2' => { 19 => 0xf8, 75 => 0xac, 76 => 0xc4 }, 'sharpnessuserdef3' => { 19 => 0xf9, 75 => 0xc4, 76 => 0xdc }, 'shiftcols' => { 145 => 0xc70 }, - 'shootid' => { 539 => 'shootID' }, + 'shootid' => { 541 => 'shootID' }, 'shootingdistance' => { 109 => 0x20701 }, 'shootinginfodisplay' => { 309 => '13.2', 310 => '5.1', 318 => '10.2', 319 => '4.1', 322 => '5.1', 324 => '5.3' }, 'shootinginfomonitorofftime' => { 309 => '26.2', 310 => '22.2', 312 => '22.2', 313 => '22.2', 317 => '21.2', 318 => '9.1', 319 => '21.2', 322 => '22.2', 323 => '22.2', 324 => '22.2', 325 => 0x3d, 326 => 0x37, 327 => 0x37, 328 => 0x37 }, 'shootingmode' => { 163 => 'ShootingMode', 243 => 0x89, 354 => 0x1f }, 'shootingmodesetting' => { 311 => '5.1' }, - 'shortdescription' => { 525 => 'shortdescription' }, + 'shortdescription' => { 527 => 'shortdescription' }, 'shortdocumentid' => { 138 => 0xba }, - 'shortname' => { 521 => 'ShortName', 523 => 'ShortName' }, + 'shortname' => { 523 => 'ShortName', 525 => 'ShortName' }, 'shortownername' => { 19 => 0xac }, 'shortreleasetimelag' => { 90 => 0x80d }, - 'shorttitle' => { 407 => '@sti' }, - 'shotdate' => { 550 => 'shotDate' }, - 'shotday' => { 550 => 'shotDay' }, - 'shotlocation' => { 550 => 'shotLocation' }, - 'shotlogdata' => { 501 => 'shot_log_data' }, - 'shotname' => { 415 => 'shot', 550 => 'shotName' }, - 'shotnumber' => { 550 => 'shotNumber' }, - 'shotnumbersincepowerup' => { 460 => 0x44e, 479 => 0x1a, 480 => 0x16, 481 => 0xa }, - 'shotnumbersincepowerup2' => { 444 => 0x200 }, - 'shotsize' => { 550 => 'shotSize' }, + 'shorttitle' => { 408 => '@sti' }, + 'shotdate' => { 552 => 'shotDate' }, + 'shotday' => { 552 => 'shotDay' }, + 'shotlocation' => { 552 => 'shotLocation' }, + 'shotlogdata' => { 503 => 'shot_log_data' }, + 'shotname' => { 416 => 'shot', 552 => 'shotName' }, + 'shotnumber' => { 552 => 'shotNumber' }, + 'shotnumbersincepowerup' => { 462 => 0x44e, 481 => 0x1a, 482 => 0x16, 483 => 0xa }, + 'shotnumbersincepowerup2' => { 446 => 0x200 }, + 'shotsize' => { 552 => 'shotSize' }, 'shotsperinterval' => { 232 => 0x180, 247 => 0x1f0, 248 => 0xb4, 249 => 0xcc, 250 => 0xcc, 251 => 0xc0, 252 => 0xd0, 253 => 0xd0 }, - 'showmovement' => { 407 => 'shwm' }, - 'shownevent' => { 535 => 'EventExt' }, - 'showneventidentifier' => { 535 => [\'EventExt','EventExtIdentifier'] }, - 'showneventname' => { 535 => [\'EventExt','EventExtName'] }, - 'shutter' => { 475 => 0x20, 476 => 0x26, 477 => 0x26 }, + 'showmovement' => { 408 => 'shwm' }, + 'shownevent' => { 537 => 'EventExt' }, + 'showneventidentifier' => { 537 => [\'EventExt','EventExtIdentifier'] }, + 'showneventname' => { 537 => [\'EventExt','EventExtName'] }, + 'shutter' => { 477 => 0x20, 478 => 0x26, 479 => 0x26 }, 'shutter-aelock' => { 88 => 0x4, 90 => 0x701, 91 => 0x3, 92 => 0x4, 93 => 0x3, 94 => 0x3, 95 => 0x4, 96 => 0x2 }, 'shutteraelbutton' => { 89 => 0x4 }, 'shutterbuttonafonbutton' => { 90 => 0x701 }, - 'shuttercount' => { 11 => 0x176, 30 => [0xa95,0x293], 33 => 0xaf1, 34 => 0xd29, 61 => 0x1, 243 => 0xa7, 273 => [0x6a,0x157,0x24d], 274 => 0x286, 275 => 0x279, 276 => 0x284, 277 => 0x242, 278 => 0x280, 279 => 0x276, 280 => [0x27d,0x27f], 281 => 0x246, 283 => 0x2d6, 284 => 0x321, 285 => 0xbd8, 286 => 0x287, 287 => 0x320, 288 => 0x24a, 289 => 0x5fb, 290 => 0x2d5, 390 => 0x5d, 453 => 0x846, 459 => [0x125,0x14a], 475 => 0x32, 476 => 0x3a, 477 => 0x3a, 478 => 0xa }, - 'shuttercount2' => { 475 => 0x4c, 476 => [0x50,0x52,0x58], 477 => 0x50 }, - 'shuttercount3' => { 475 => [0x1a0,0x1aa,0x1bd], 476 => [0x19f,0x1cb,0x1cd] }, + 'shuttercount' => { 11 => 0x176, 30 => [0xa95,0x293], 33 => 0xaf1, 34 => 0xd29, 61 => 0x1, 243 => 0xa7, 273 => [0x6a,0x157,0x24d], 274 => 0x286, 275 => 0x279, 276 => 0x284, 277 => 0x242, 278 => 0x280, 279 => 0x276, 280 => [0x27d,0x27f], 281 => 0x246, 283 => 0x2d6, 284 => 0x321, 285 => 0xbd8, 286 => 0x287, 287 => 0x320, 288 => 0x24a, 289 => 0x5fb, 290 => 0x2d5, 390 => 0x5d, 455 => 0x846, 461 => [0x125,0x14a], 477 => 0x32, 478 => 0x3a, 479 => 0x3a, 480 => 0xa }, + 'shuttercount2' => { 477 => 0x4c, 478 => [0x50,0x52,0x58], 479 => 0x50 }, + 'shuttercount3' => { 477 => [0x1a0,0x1aa,0x1bd], 478 => [0x19f,0x1cb,0x1cd] }, 'shuttercurtainsync' => { 88 => 0xf, 89 => 0xf, 90 => 0x305, 91 => 0xe, 92 => 0xf, 93 => 0x8, 94 => 0x8, 95 => 0xf, 96 => 0x8 }, 'shuttermode' => { 61 => 0x17, 147 => 0x1b, 243 => 0x34 }, 'shutterreleasebuttonae-l' => { 309 => '17.7', 310 => '18.4', 312 => '78.4', 313 => '78.4', 314 => '16.1', 315 => '17.1', 316 => '17.1', 317 => '17.1', 318 => '7.1', 319 => '17.5', 322 => '18.4', 323 => '78.4', 324 => '18.2', 325 => 0x2b, 326 => 0x29, 327 => 0x29, 328 => 0x29 }, @@ -6564,10 +6567,10 @@ my %tagLookup = ( 'shutterreleasewithoutlens' => { 90 => 0x711 }, 'shutterspeedlock' => { 310 => '38.1', 312 => '38.1', 313 => '38.1', 322 => '38.1', 323 => '38.1', 325 => 0xbb, 326 => 0xb7, 327 => 0xb7, 328 => 0xb7 }, 'shutterspeedrange' => { 90 => 0x10c }, - 'shutterspeedsetting' => { 191 => 0x6, 442 => 0x2f, 443 => 0x28, 444 => 0x0 }, - 'shutterspeedvalue' => { 99 => 0x1, 125 => 0x9201, 335 => 0x1000, 399 => 0x400, 527 => 'ShutterSpeedValue' }, - 'shuttertype' => { 133 => 0x1050, 354 => 0x9f, 390 => 0x87, 481 => [0x133,0x139,0x13f] }, - 'sidecarforextension' => { 538 => 'SidecarForExtension' }, + 'shutterspeedsetting' => { 191 => 0x6, 444 => 0x2f, 445 => 0x28, 446 => 0x0 }, + 'shutterspeedvalue' => { 99 => 0x1, 125 => 0x9201, 335 => 0x1000, 399 => 0x400, 529 => 'ShutterSpeedValue' }, + 'shuttertype' => { 133 => 0x1050, 354 => 0x9f, 390 => 0x87, 483 => [0x133,0x139,0x13f] }, + 'sidecarforextension' => { 540 => 'SidecarForExtension' }, 'sigmaimpulseparameters' => { 145 => 0xe0d }, 'sigmascalingfactorcamera' => { 145 => 0xe0c }, 'sigmascalingfactorlowres' => { 145 => 0xe0b }, @@ -6577,100 +6580,100 @@ my %tagLookup = ( 'silentphotography' => { 243 => 0xbf, 247 => 0x9b7 }, 'similarityindex' => { 138 => 0xe4 }, 'singleframebracketing' => { 191 => 0x21 }, - 'skilllevel' => { 542 => 'skillLevel' }, + 'skilllevel' => { 544 => 'skillLevel' }, 'skintonecorrection' => { 390 => 0x95 }, 'skiplinetime' => { 145 => 0x184e }, 'slaveflashmeteringsegments' => { 390 => 0x20b }, - 'slideshowname' => { 539 => 'slideshowName' }, - 'slideshownumber' => { 539 => 'slideshowNumber' }, - 'slideshowtotalnumber' => { 539 => 'slideshowTotalNumber' }, + 'slideshowname' => { 541 => 'slideshowName' }, + 'slideshownumber' => { 541 => 'slideshowNumber' }, + 'slideshowtotalnumber' => { 541 => 'slideshowTotalNumber' }, 'slot2jpgsize' => { 247 => 0x364, 249 => 0x24a, 250 => 0x24a, 253 => 0x24a }, 'slowshutter' => { 82 => 0x8 }, 'slowsync' => { 133 => 0x1030 }, - 'smartalbumcolor' => { 429 => 0x20 }, - 'smartrange' => { 429 => 0xa012 }, - 'smileshutter' => { 444 => 0x31 }, - 'smileshuttermode' => { 444 => 0x27 }, - 'smoothness' => { 125 => 0xfe57, 521 => 'Smoothness', 523 => 'Smoothness' }, - 'snapshot' => { 535 => 'SnapshotLink' }, - 'snapshotformat' => { 535 => [\'SnapshotLink','SnapshotLinkFormat'] }, - 'snapshotheightpixels' => { 535 => [\'SnapshotLink','SnapshotLinkHeightPixels'] }, - 'snapshotimagerole' => { 535 => [\'SnapshotLink','SnapshotLinkImageRole'] }, - 'snapshotlink' => { 535 => [\'SnapshotLink','SnapshotLinkLink'] }, - 'snapshotlinkqualifier' => { 535 => [\'SnapshotLink','SnapshotLinkLinkQualifier'] }, - 'snapshots' => { 515 => 'Snapshots' }, - 'snapshotusedvideoframe' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrame'] }, - 'snapshotusedvideoframetimeformat' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeFormat'] }, - 'snapshotusedvideoframetimevalue' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeValue'] }, - 'snapshotusedvideoframevalue' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameValue'] }, - 'snapshotwidthpixels' => { 535 => [\'SnapshotLink','SnapshotLinkWidthPixels'] }, - 'softskineffect' => { 456 => 0x200f }, - 'software' => { 125 => 0x131, 164 => 'Software', 343 => 'Software', 399 => 0x203, 409 => 'software', 432 => 0x18, 504 => 'Software', 546 => 'Software' }, - 'softwareversion' => { 415 => ['@swr',"\xa9swr"], 431 => 0x207 }, - 'soloist' => { 407 => "\xa9sol" }, - 'songwriter' => { 415 => "\xa9swf" }, - 'songwriterkeywords' => { 415 => "\xa9swk" }, + 'smartalbumcolor' => { 431 => 0x20 }, + 'smartrange' => { 431 => 0xa012 }, + 'smileshutter' => { 446 => 0x31 }, + 'smileshuttermode' => { 446 => 0x27 }, + 'smoothness' => { 125 => 0xfe57, 523 => 'Smoothness', 525 => 'Smoothness' }, + 'snapshot' => { 537 => 'SnapshotLink' }, + 'snapshotformat' => { 537 => [\'SnapshotLink','SnapshotLinkFormat'] }, + 'snapshotheightpixels' => { 537 => [\'SnapshotLink','SnapshotLinkHeightPixels'] }, + 'snapshotimagerole' => { 537 => [\'SnapshotLink','SnapshotLinkImageRole'] }, + 'snapshotlink' => { 537 => [\'SnapshotLink','SnapshotLinkLink'] }, + 'snapshotlinkqualifier' => { 537 => [\'SnapshotLink','SnapshotLinkLinkQualifier'] }, + 'snapshots' => { 517 => 'Snapshots' }, + 'snapshotusedvideoframe' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrame'] }, + 'snapshotusedvideoframetimeformat' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeFormat'] }, + 'snapshotusedvideoframetimevalue' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeValue'] }, + 'snapshotusedvideoframevalue' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameValue'] }, + 'snapshotwidthpixels' => { 537 => [\'SnapshotLink','SnapshotLinkWidthPixels'] }, + 'softskineffect' => { 458 => 0x200f }, + 'software' => { 125 => 0x131, 164 => 'Software', 343 => 'Software', 399 => 0x203, 410 => 'software', 434 => 0x18, 506 => 'Software', 548 => 'Software' }, + 'softwareversion' => { 416 => ['@swr',"\xa9swr"], 433 => 0x207 }, + 'soloist' => { 408 => "\xa9sol" }, + 'songwriter' => { 416 => "\xa9swf" }, + 'songwriterkeywords' => { 416 => "\xa9swk" }, 'sonycropsize' => { 125 => 0x74c8 }, 'sonycroptopleft' => { 125 => 0x74c7 }, - 'sonydatetime' => { 464 => 0x6, 466 => 0x1b6, 467 => 0x210, 468 => 0x1fe, 469 => 0x22c }, - 'sonydatetime2' => { 475 => 0x51 }, - 'sonyexposuretime' => { 475 => 0x3a, 476 => 0x46, 477 => [0x66,0x46], 478 => 0x1a }, - 'sonyexposuretime2' => { 488 => 0xe }, - 'sonyfnumber' => { 475 => 0x3c, 476 => 0x48, 477 => [0x68,0x48], 478 => 0x1c, 488 => 0x14 }, - 'sonyimageheight' => { 464 => 0x1a, 479 => 0x44, 480 => 0x3f }, - 'sonyimageheightmax' => { 488 => 0x40 }, - 'sonyimagesize' => { 191 => 0x3b, 442 => 0x54, 443 => 0x54, 444 => 0x9 }, - 'sonyimagewidth' => { 464 => 0x1c }, - 'sonyimagewidthmax' => { 488 => 0x3e }, - 'sonyiso' => { 466 => 0x1218, 467 => 0x11f4, 468 => 0x1270, 469 => [0x1254,0x1258,0x1280], 470 => 0x113c, 471 => 0x344, 472 => 0x346, 473 => 0x320, 488 => 0x4 }, - 'sonymaxaperture' => { 475 => 0x0, 476 => 0x0 }, - 'sonymaxaperturevalue' => { 488 => 0x16 }, - 'sonyminaperture' => { 475 => 0x1, 476 => 0x1 }, - 'sonymodelid' => { 456 => 0xb001 }, + 'sonydatetime' => { 466 => 0x6, 468 => 0x1b6, 469 => 0x210, 470 => 0x1fe, 471 => 0x22c }, + 'sonydatetime2' => { 477 => 0x51 }, + 'sonyexposuretime' => { 477 => 0x3a, 478 => 0x46, 479 => [0x66,0x46], 480 => 0x1a }, + 'sonyexposuretime2' => { 490 => 0xe }, + 'sonyfnumber' => { 477 => 0x3c, 478 => 0x48, 479 => [0x68,0x48], 480 => 0x1c, 490 => 0x14 }, + 'sonyimageheight' => { 466 => 0x1a, 481 => 0x44, 482 => 0x3f }, + 'sonyimageheightmax' => { 490 => 0x40 }, + 'sonyimagesize' => { 191 => 0x3b, 444 => 0x54, 445 => 0x54, 446 => 0x9 }, + 'sonyimagewidth' => { 466 => 0x1c }, + 'sonyimagewidthmax' => { 490 => 0x3e }, + 'sonyiso' => { 468 => 0x1218, 469 => 0x11f4, 470 => 0x1270, 471 => [0x1254,0x1258,0x1280], 472 => 0x113c, 473 => 0x344, 474 => 0x346, 475 => 0x320, 490 => 0x4 }, + 'sonymaxaperture' => { 477 => 0x0, 478 => 0x0 }, + 'sonymaxaperturevalue' => { 490 => 0x16 }, + 'sonyminaperture' => { 477 => 0x1, 478 => 0x1 }, + 'sonymodelid' => { 458 => 0xb001 }, 'sonyquality' => { 191 => 0x3c }, 'sonyrawimagesize' => { 125 => 0x7038 }, - 'sonytimeminsec' => { 476 => 0x61 }, - 'sortalbum' => { 407 => 'soal' }, - 'sortalbumartist' => { 407 => 'soaa' }, - 'sortartist' => { 407 => 'soar' }, - 'sortcomposer' => { 407 => 'soco' }, - 'sortname' => { 407 => 'sonm', 521 => 'SortName', 523 => 'SortName' }, - 'sortshow' => { 407 => 'sosn' }, - 'soundengineer' => { 407 => "\xa9sne" }, - 'source' => { 138 => 0x73, 343 => 'Source', 524 => 'source', 525 => 'source', 538 => 'Source' }, - 'sourcecount' => { 508 => 'SourceCount' }, - 'sourcecredits' => { 415 => "\xa9src" }, + 'sonytimeminsec' => { 478 => 0x61 }, + 'sortalbum' => { 408 => 'soal' }, + 'sortalbumartist' => { 408 => 'soaa' }, + 'sortartist' => { 408 => 'soar' }, + 'sortcomposer' => { 408 => 'soco' }, + 'sortname' => { 408 => 'sonm', 523 => 'SortName', 525 => 'SortName' }, + 'sortshow' => { 408 => 'sosn' }, + 'soundengineer' => { 408 => "\xa9sne" }, + 'source' => { 138 => 0x73, 343 => 'Source', 526 => 'source', 527 => 'source', 540 => 'Source' }, + 'sourcecount' => { 510 => 'SourceCount' }, + 'sourcecredits' => { 416 => "\xa9src" }, 'sourcedirectoryindex' => { 376 => 0x0 }, 'sourcefileindex' => { 376 => 0x2 }, - 'sourcephotoscount' => { 507 => 'SourcePhotosCount' }, + 'sourcephotoscount' => { 509 => 'SourcePhotosCount' }, 'sourceprofileprefix' => { 145 => 0x1390 }, - 'spatialfrequencyresponse' => { 527 => 'SpatialFrequencyResponse' }, - 'spatialfrequencyresponsecolumns' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseColumns'] }, - 'spatialfrequencyresponsenames' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseNames'] }, - 'spatialfrequencyresponserows' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseRows'] }, - 'spatialfrequencyresponsevalues' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseValues'] }, - 'speakerplacement' => { 550 => 'speakerPlacement' }, + 'spatialfrequencyresponse' => { 529 => 'SpatialFrequencyResponse' }, + 'spatialfrequencyresponsecolumns' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseColumns'] }, + 'spatialfrequencyresponsenames' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseNames'] }, + 'spatialfrequencyresponserows' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseRows'] }, + 'spatialfrequencyresponsevalues' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseValues'] }, + 'speakerplacement' => { 552 => 'speakerPlacement' }, 'specialeffectlevel' => { 119 => 0x3030 }, 'specialeffectmode' => { 119 => 0x2076 }, 'specialeffectsetting' => { 119 => 0x3031 }, 'specialinstructions' => { 138 => 0x28 }, - 'specialmode' => { 335 => 0x200, 431 => 0x200 }, - 'specialoccasion' => { 542 => 'specialOccasion' }, - 'specialtypeid' => { 501 => 'SpecialTypeID' }, - 'spectralsensitivity' => { 125 => 0x8824, 527 => 'SpectralSensitivity' }, + 'specialmode' => { 335 => 0x200, 433 => 0x200 }, + 'specialoccasion' => { 544 => 'specialOccasion' }, + 'specialtypeid' => { 503 => 'SpecialTypeID' }, + 'spectralsensitivity' => { 125 => 0x8824, 529 => 'SpectralSensitivity' }, 'specularwhitelevel' => { 44 => 0x32b, 45 => 0x281, 46 => 0x295, 49 => [0x2b9,0x2d0,0x2d4], 50 => [0x56a,0x296], 51 => 0x1e4, 52 => [0x1fd,0x2dd], 53 => [0x231,0x30f], 54 => 0x31d }, - 'speedx' => { 121 => 0x3, 415 => "\xa9xsp" }, - 'speedy' => { 121 => 0x4, 415 => "\xa9ysp" }, - 'speedz' => { 121 => 0x5, 415 => "\xa9zsp" }, - 'spherical' => { 508 => 'Spherical' }, + 'speedx' => { 121 => 0x3, 416 => "\xa9xsp" }, + 'speedy' => { 121 => 0x4, 416 => "\xa9ysp" }, + 'speedz' => { 121 => 0x5, 416 => "\xa9zsp" }, + 'spherical' => { 510 => 'Spherical' }, 'sphericalvideoxml' => { 126 => 'SphericalVideoXML' }, 'splitcolumn' => { 399 => 0x222 }, - 'splittoningbalance' => { 521 => 'SplitToningBalance', 523 => 'SplitToningBalance' }, - 'splittoninghighlighthue' => { 521 => 'SplitToningHighlightHue', 523 => 'SplitToningHighlightHue' }, - 'splittoninghighlightsaturation' => { 521 => 'SplitToningHighlightSaturation', 523 => 'SplitToningHighlightSaturation' }, - 'splittoningshadowhue' => { 521 => 'SplitToningShadowHue', 523 => 'SplitToningShadowHue' }, - 'splittoningshadowsaturation' => { 521 => 'SplitToningShadowSaturation', 523 => 'SplitToningShadowSaturation' }, - 'sport' => { 540 => 'sport' }, + 'splittoningbalance' => { 523 => 'SplitToningBalance', 525 => 'SplitToningBalance' }, + 'splittoninghighlighthue' => { 523 => 'SplitToningHighlightHue', 525 => 'SplitToningHighlightHue' }, + 'splittoninghighlightsaturation' => { 523 => 'SplitToningHighlightSaturation', 525 => 'SplitToningHighlightSaturation' }, + 'splittoningshadowhue' => { 523 => 'SplitToningShadowHue', 525 => 'SplitToningShadowHue' }, + 'splittoningshadowsaturation' => { 523 => 'SplitToningShadowSaturation', 525 => 'SplitToningShadowSaturation' }, + 'sport' => { 542 => 'sport' }, 'spotfocuspointx' => { 188 => 0x2d }, 'spotfocuspointy' => { 188 => 0x2e }, 'spotmeteringmode' => { 37 => 0x27 }, @@ -6688,7 +6691,7 @@ my %tagLookup = ( 'standardmatrixfluorescent' => { 145 => 0x7d2 }, 'standardmatrixtungsten' => { 145 => 0x7d1 }, 'standardoutputhighlightpoint' => { 115 => 0x14 }, - 'standardoutputsensitivity' => { 125 => 0x8831, 528 => 'StandardOutputSensitivity' }, + 'standardoutputsensitivity' => { 125 => 0x8831, 530 => 'StandardOutputSensitivity' }, 'standardoutputshadowpoint' => { 115 => 0x15 }, 'standardrawcolortone' => { 115 => 0xd }, 'standardrawcontrast' => { 115 => 0xf }, @@ -6709,34 +6712,34 @@ my %tagLookup = ( 'standardwhitetungsten' => { 145 => 0x835 }, 'standbytimer' => { 310 => '19.1', 312 => '19.1', 313 => '19.1', 316 => '18.1', 317 => '18.1', 322 => '19.1', 323 => '19.1' }, 'starlightview' => { 326 => 0x249, 327 => 0x249, 328 => 0x261 }, - 'startingpage' => { 540 => 'startingPage' }, + 'startingpage' => { 542 => 'startingPage' }, 'startmovieshooting' => { 90 => 0x70d }, - 'starttimecode' => { 415 => "\xa9TIM", 550 => 'startTimecode' }, - 'starttimecodetimeformat' => { 550 => [\'startTimecode','startTimecodeTimeFormat'] }, - 'starttimecodetimevalue' => { 550 => [\'startTimecode','startTimecodeTimeValue'] }, - 'starttimecodevalue' => { 550 => [\'startTimecode','startTimecodeValue'] }, - 'starttimesamplesize' => { 415 => "\xa9TSZ", 550 => 'startTimeSampleSize' }, - 'starttimescale' => { 415 => "\xa9TSC", 550 => 'startTimeScale' }, - 'state' => { 168 => 'State', 354 => 0x6b, 538 => 'State' }, - 'status' => { 499 => 'Status', 513 => 'Status' }, - 'stereomode' => { 508 => 'StereoMode' }, - 'stitched' => { 508 => 'Stitched' }, - 'stitchingsoftware' => { 507 => 'StitchingSoftware', 508 => 'StitchingSoftware' }, - 'stopsabovebaseiso' => { 465 => 0x113e, 466 => 0x113e, 467 => 0x111a, 468 => 0x1196, 469 => 0x1172, 470 => 0x102a, 471 => 0x222, 472 => 0x222, 473 => 0x217, 488 => 0xa }, + 'starttimecode' => { 416 => "\xa9TIM", 552 => 'startTimecode' }, + 'starttimecodetimeformat' => { 552 => [\'startTimecode','startTimecodeTimeFormat'] }, + 'starttimecodetimevalue' => { 552 => [\'startTimecode','startTimecodeTimeValue'] }, + 'starttimecodevalue' => { 552 => [\'startTimecode','startTimecodeValue'] }, + 'starttimesamplesize' => { 416 => "\xa9TSZ", 552 => 'startTimeSampleSize' }, + 'starttimescale' => { 416 => "\xa9TSC", 552 => 'startTimeScale' }, + 'state' => { 168 => 'State', 354 => 0x6b, 540 => 'State' }, + 'status' => { 501 => 'Status', 515 => 'Status' }, + 'stereomode' => { 510 => 'StereoMode' }, + 'stitched' => { 510 => 'Stitched' }, + 'stitchingsoftware' => { 509 => 'StitchingSoftware', 510 => 'StitchingSoftware' }, + 'stopsabovebaseiso' => { 467 => 0x113e, 468 => 0x113e, 469 => 0x111a, 470 => 0x1196, 471 => 0x1172, 472 => 0x102a, 473 => 0x222, 474 => 0x222, 475 => 0x217, 490 => 0xa }, 'storagemethod' => { 195 => 0x12 }, 'storebyorientation' => { 310 => '46.3', 312 => '47.3', 313 => '47.3', 322 => '47.3', 323 => '47.3', 325 => 0xd, 326 => 0xd, 327 => 0xd, 328 => 0xd }, - 'storedescription' => { 407 => 'sdes' }, - 'storedformat' => { 516 => 'StoredFormat' }, - 'storylineidentifier' => { 535 => 'StorylineIdentifier' }, + 'storedescription' => { 408 => 'sdes' }, + 'storedformat' => { 518 => 'StoredFormat' }, + 'storylineidentifier' => { 537 => 'StorylineIdentifier' }, 'straightenangle' => { 302 => 0x2fc08431 }, - 'streamready' => { 535 => 'StreamReady' }, + 'streamready' => { 537 => 'StreamReady' }, 'streamtype' => { 183 => 'StreamType' }, - 'stretchmode' => { 550 => 'stretchMode' }, - 'studydatetime' => { 496 => 'StudyDateTime' }, - 'studydescription' => { 496 => 'StudyDescription' }, - 'studyid' => { 496 => 'StudyID' }, - 'studyphysician' => { 496 => 'StudyPhysician' }, - 'styleperiod' => { 535 => 'StylePeriod' }, + 'stretchmode' => { 552 => 'stretchMode' }, + 'studydatetime' => { 498 => 'StudyDateTime' }, + 'studydescription' => { 498 => 'StudyDescription' }, + 'studyid' => { 498 => 'StudyID' }, + 'studyphysician' => { 498 => 'StudyPhysician' }, + 'styleperiod' => { 537 => 'StylePeriod' }, 'sub-location' => { 138 => 0x5c }, 'subcommanddialframeadvancezoom' => { 253 => 0x806 }, 'subcommanddialplaybackmode' => { 326 => 0x1cf, 327 => 0x1cf, 328 => 0x1e7 }, @@ -6747,91 +6750,91 @@ my %tagLookup = ( 'subfilename' => { 171 => '1Name' }, 'subfileresource' => { 171 => 'rsrc' }, 'subfiletype' => { 125 => 0xfe, 171 => '0Type' }, - 'subject' => { 339 => 'Subject', 406 => 'Subject', 524 => 'subject', 537 => 'Subject', 551 => 'subject' }, - 'subjectarea' => { 125 => 0x9214, 527 => 'SubjectArea' }, - 'subjectcode' => { 534 => 'SubjectCode' }, + 'subject' => { 339 => 'Subject', 406 => 'Subject', 526 => 'subject', 539 => 'Subject', 553 => 'subject' }, + 'subjectarea' => { 125 => 0x9214, 529 => 'SubjectArea' }, + 'subjectcode' => { 536 => 'SubjectCode' }, 'subjectdetection' => { 247 => 0x36e, 249 => 0x252, 250 => 0x252, 251 => 0x23e, 252 => 0x252, 253 => 0x252 }, 'subjectdetectionareamf' => { 247 => 0x3ea }, - 'subjectdistance' => { 125 => 0x9206, 147 => 0x3e, 527 => 'SubjectDistance' }, - 'subjectdistancerange' => { 125 => 0xa40c, 527 => 'SubjectDistanceRange' }, - 'subjectlocation' => { 125 => 0xa214, 527 => 'SubjectLocation' }, + 'subjectdistance' => { 125 => 0x9206, 147 => 0x3e, 529 => 'SubjectDistance' }, + 'subjectdistancerange' => { 125 => 0xa40c, 529 => 'SubjectDistanceRange' }, + 'subjectlocation' => { 125 => 0xa214, 529 => 'SubjectLocation' }, 'subjectmotion' => { 312 => '78.2', 313 => '78.2', 323 => '78.2', 326 => 0x103, 327 => 0x103, 328 => 0x119 }, 'subjectprogram' => { 188 => 0x22 }, 'subjectreference' => { 138 => 0xc }, 'subjecttodetect' => { 2 => 0x14 }, - 'sublabels1' => { 533 => [\'TagStructure','TagStructureSubLabels'] }, - 'sublabels2' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabels'] }, - 'sublabels3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabels'] }, - 'sublabels4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabels'] }, - 'sublabels5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabels'] }, + 'sublabels1' => { 535 => [\'TagStructure','TagStructureSubLabels'] }, + 'sublabels2' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabels'] }, + 'sublabels3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabels'] }, + 'sublabels4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabels'] }, + 'sublabels5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabels'] }, 'subseccreatedate' => { 120 => 'Exif-SubSecCreateDate' }, 'subsecdatetimeoriginal' => { 120 => 'Exif-SubSecDateTimeOriginal' }, 'subsecmodifydate' => { 120 => 'Exif-SubSecModifyDate' }, 'subsectime' => { 125 => 0x9290 }, 'subsectimedigitized' => { 125 => 0x9292 }, 'subsectimeoriginal' => { 125 => 0x9291 }, - 'subsection1' => { 540 => 'subsection1' }, - 'subsection2' => { 540 => 'subsection2' }, - 'subsection3' => { 540 => 'subsection3' }, - 'subsection4' => { 540 => 'subsection4' }, + 'subsection1' => { 542 => 'subsection1' }, + 'subsection2' => { 542 => 'subsection2' }, + 'subsection3' => { 542 => 'subsection3' }, + 'subsection4' => { 542 => 'subsection4' }, 'subselector' => { 310 => '49.1', 312 => '71.1', 313 => '71.1', 323 => '71.1', 325 => 0x93, 326 => 0x8f, 327 => 0x8f, 328 => 0x8f }, 'subselectorassignment' => { 310 => '48.1' }, 'subselectorcenter' => { 312 => '72.1', 313 => '72.1', 323 => '72.1' }, 'subselectorplusdials' => { 310 => '49.2', 312 => '73.1', 313 => '73.1', 323 => '73.1' }, - 'subtitle' => { 186 => 'WM/SubTitle', 407 => "\xa9st3", 415 => "\xa9snm", 540 => 'subtitle' }, - 'subtitlekeywords' => { 415 => "\xa9snk" }, - 'subversionfilename' => { 533 => [\'SubVersions','SubVersionsFileName'] }, - 'subversionreference' => { 533 => [\'SubVersions','SubVersionsVersRef'] }, - 'subversions' => { 533 => 'SubVersions' }, + 'subtitle' => { 186 => 'WM/SubTitle', 408 => "\xa9st3", 416 => "\xa9snm", 542 => 'subtitle' }, + 'subtitlekeywords' => { 416 => "\xa9snk" }, + 'subversionfilename' => { 535 => [\'SubVersions','SubVersionsFileName'] }, + 'subversionreference' => { 535 => [\'SubVersions','SubVersionsVersRef'] }, + 'subversions' => { 535 => 'SubVersions' }, 'superimposeddisplay' => { 88 => 0xa, 90 => 0x510, 91 => 0x9, 92 => 0xa, 95 => 0xa, 96 => 0xe }, 'supermacro' => { 69 => 0x1a }, - 'supplementalcategories' => { 138 => 0x14, 538 => 'SupplementalCategories' }, + 'supplementalcategories' => { 138 => 0x14, 540 => 'SupplementalCategories' }, 'supplementaltype' => { 140 => 0x37 }, - 'supplementdisplayid' => { 540 => 'supplementDisplayID' }, - 'supplementstartingpage' => { 540 => 'supplementStartingPage' }, - 'supplementtitle' => { 540 => 'supplementTitle' }, - 'supplychainsource' => { 535 => 'SupplyChainSource' }, - 'supplychainsourceidentifier' => { 535 => [\'SupplyChainSource','SupplyChainSourceIdentifier'] }, - 'supplychainsourcename' => { 535 => [\'SupplyChainSource','SupplyChainSourceName'] }, - 'supportsamount' => { 521 => 'SupportsAmount', 523 => 'SupportsAmount' }, - 'supportscolor' => { 521 => 'SupportsColor', 523 => 'SupportsColor' }, - 'supportshighdynamicrange' => { 521 => 'SupportsHighDynamicRange', 523 => 'SupportsHighDynamicRange' }, - 'supportsmonochrome' => { 521 => 'SupportsMonochrome', 523 => 'SupportsMonochrome' }, - 'supportsnormaldynamicrange' => { 521 => 'SupportsNormalDynamicRange', 523 => 'SupportsNormalDynamicRange' }, - 'supportsoutputreferred' => { 521 => 'SupportsOutputReferred', 523 => 'SupportsOutputReferred' }, - 'supportsscenereferred' => { 521 => 'SupportsSceneReferred', 523 => 'SupportsSceneReferred' }, + 'supplementdisplayid' => { 542 => 'supplementDisplayID' }, + 'supplementstartingpage' => { 542 => 'supplementStartingPage' }, + 'supplementtitle' => { 542 => 'supplementTitle' }, + 'supplychainsource' => { 537 => 'SupplyChainSource' }, + 'supplychainsourceidentifier' => { 537 => [\'SupplyChainSource','SupplyChainSourceIdentifier'] }, + 'supplychainsourcename' => { 537 => [\'SupplyChainSource','SupplyChainSourceName'] }, + 'supportsamount' => { 523 => 'SupportsAmount', 525 => 'SupportsAmount' }, + 'supportscolor' => { 523 => 'SupportsColor', 525 => 'SupportsColor' }, + 'supportshighdynamicrange' => { 523 => 'SupportsHighDynamicRange', 525 => 'SupportsHighDynamicRange' }, + 'supportsmonochrome' => { 523 => 'SupportsMonochrome', 525 => 'SupportsMonochrome' }, + 'supportsnormaldynamicrange' => { 523 => 'SupportsNormalDynamicRange', 525 => 'SupportsNormalDynamicRange' }, + 'supportsoutputreferred' => { 523 => 'SupportsOutputReferred', 525 => 'SupportsOutputReferred' }, + 'supportsscenereferred' => { 523 => 'SupportsSceneReferred', 525 => 'SupportsSceneReferred' }, 'svisosetting' => { 370 => 0x14 }, - 'swatchcoloranta' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsA'] }, - 'swatchcolorantb' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsB'] }, - 'swatchcolorantblack' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsBlack'] }, - 'swatchcolorantblue' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsBlue'] }, - 'swatchcolorantcyan' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsCyan'] }, - 'swatchcolorantgray' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsGray'] }, - 'swatchcolorantgreen' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsGreen'] }, - 'swatchcolorantl' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsL'] }, - 'swatchcolorantmagenta' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsMagenta'] }, - 'swatchcolorantmode' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsMode'] }, - 'swatchcolorantred' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsRed'] }, - 'swatchcolorantswatchname' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsSwatchName'] }, - 'swatchcoloranttint' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsTint'] }, - 'swatchcoloranttype' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsType'] }, - 'swatchcolorantyellow' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsYellow'] }, - 'swatchgroupname' => { 555 => [\'SwatchGroups','SwatchGroupsGroupName'] }, - 'swatchgroups' => { 555 => 'SwatchGroups' }, - 'swatchgroupscolorants' => { 555 => [\'SwatchGroups','SwatchGroupsColorants'] }, - 'swatchgrouptype' => { 555 => [\'SwatchGroups','SwatchGroupsGroupType'] }, - 'sweeppanoramadirection' => { 354 => 0x93, 444 => 0x33 }, + 'swatchcoloranta' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsA'] }, + 'swatchcolorantb' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsB'] }, + 'swatchcolorantblack' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsBlack'] }, + 'swatchcolorantblue' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsBlue'] }, + 'swatchcolorantcyan' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsCyan'] }, + 'swatchcolorantgray' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsGray'] }, + 'swatchcolorantgreen' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsGreen'] }, + 'swatchcolorantl' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsL'] }, + 'swatchcolorantmagenta' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsMagenta'] }, + 'swatchcolorantmode' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsMode'] }, + 'swatchcolorantred' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsRed'] }, + 'swatchcolorantswatchname' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsSwatchName'] }, + 'swatchcoloranttint' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsTint'] }, + 'swatchcoloranttype' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsType'] }, + 'swatchcolorantyellow' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsYellow'] }, + 'swatchgroupname' => { 557 => [\'SwatchGroups','SwatchGroupsGroupName'] }, + 'swatchgroups' => { 557 => 'SwatchGroups' }, + 'swatchgroupscolorants' => { 557 => [\'SwatchGroups','SwatchGroupsColorants'] }, + 'swatchgrouptype' => { 557 => [\'SwatchGroups','SwatchGroupsGroupType'] }, + 'sweeppanoramadirection' => { 354 => 0x93, 446 => 0x33 }, 'sweeppanoramafieldofview' => { 354 => 0x94 }, - 'sweeppanoramasize' => { 444 => 0x32 }, + 'sweeppanoramasize' => { 446 => 0x32 }, 'switchtoregisteredafpoint' => { 89 => 0x12, 90 => 0x50a }, 'symlink' => { 126 => 'SymLink' }, 'syncreleasemode' => { 312 => '77.1', 313 => '77.1', 323 => '77.1', 325 => 0x45, 326 => 0x41, 327 => 0x41, 328 => 0x41 }, 'system' => { 399 => 0x204 }, - 'tagged' => { 401 => 0xdd, 402 => 'Tagged', 515 => 'tagged' }, - 'tagslist' => { 526 => 'TagsList' }, - 'tagstructure' => { 533 => 'TagStructure' }, - 'takenumber' => { 550 => 'takeNumber' }, - 'tapename' => { 550 => 'tapeName' }, + 'tagged' => { 401 => 0xdd, 402 => 'Tagged', 517 => 'tagged' }, + 'tagslist' => { 528 => 'TagsList' }, + 'tagstructure' => { 535 => 'TagStructure' }, + 'takenumber' => { 552 => 'takeNumber' }, + 'tapename' => { 552 => 'tapeName' }, 'targetaperture' => { 82 => 0x4 }, 'targetaspectratio' => { 344 => 'TargetAspectRatio' }, 'targetcompressionratio' => { 101 => 0x1 }, @@ -6890,112 +6893,112 @@ my %tagLookup = ( 'tda4edgepolarity' => { 145 => 0x198f }, 'tda4gain' => { 145 => 0x198e }, 'tda4offset' => { 145 => 0x198c }, - 'teaser' => { 540 => 'teaser' }, - 'teleconverter' => { 193 => 0x105, 456 => 0x105 }, + 'teaser' => { 542 => 'teaser' }, + 'teleconverter' => { 193 => 0x105, 458 => 0x105 }, 'tempampgainx100' => { 145 => 0x1914 }, - 'tempo' => { 550 => 'tempo' }, - 'temporalcoverage' => { 535 => 'TemporalCoverage' }, - 'temporalcoveragefrom' => { 535 => [\'TemporalCoverage','TemporalCoverageTempCoverageFrom'] }, - 'temporalcoverageto' => { 535 => [\'TemporalCoverage','TemporalCoverageTempCoverageTo'] }, + 'tempo' => { 552 => 'tempo' }, + 'temporalcoverage' => { 537 => 'TemporalCoverage' }, + 'temporalcoveragefrom' => { 537 => [\'TemporalCoverage','TemporalCoverageTempCoverageFrom'] }, + 'temporalcoverageto' => { 537 => [\'TemporalCoverage','TemporalCoverageTempCoverageTo'] }, 'termsandconditionstext' => { 340 => 'TermsAndConditionsText' }, 'termsandconditionsurl' => { 340 => 'TermsAndConditionsURL' }, 'testname' => { 126 => 'TestName' }, 'textencoding' => { 242 => 0x4 }, - 'textlayername' => { 538 => [\'TextLayers','TextLayersLayerName'] }, - 'textlayers' => { 538 => 'TextLayers' }, - 'textlayertext' => { 538 => [\'TextLayers','TextLayersLayerText'] }, + 'textlayername' => { 540 => [\'TextLayers','TextLayersLayerName'] }, + 'textlayers' => { 540 => 'TextLayers' }, + 'textlayertext' => { 540 => [\'TextLayers','TextLayersLayerText'] }, 'textstamp' => { 354 => [0x8008,0x8009,0x3b,0x3e] }, - 'texture' => { 521 => 'Texture', 523 => 'Texture' }, + 'texture' => { 523 => 'Texture', 525 => 'Texture' }, 'three-dtrackingfacedetection' => { 312 => '1.4', 313 => '1.4', 323 => '1.4' }, 'three-dtrackingwatcharea' => { 312 => '78.1', 313 => '78.1', 323 => '78.1' }, 'thresholding' => { 125 => 0x107 }, 'thumbnailfilename' => { 103 => 0x817 }, - 'thumbnailformat' => { 548 => [\'Thumbnails','ThumbnailsFormat'] }, - 'thumbnailheight' => { 149 => 0xfa55, 548 => [\'Thumbnails','ThumbnailsHeight'] }, - 'thumbnailimage' => { 6 => 'CNDA', 103 => 0x2008, 120 => 'Exif-ThumbnailImage', 128 => 0x3, 174 => 'data', 335 => 0x100, 407 => 'tnal', 415 => 'thmb', 548 => [\'Thumbnails','ThumbnailsImage'] }, + 'thumbnailformat' => { 550 => [\'Thumbnails','ThumbnailsFormat'] }, + 'thumbnailheight' => { 149 => 0xfa55, 550 => [\'Thumbnails','ThumbnailsHeight'] }, + 'thumbnailimage' => { 6 => 'CNDA', 103 => 0x2008, 120 => 'Exif-ThumbnailImage', 128 => 0x3, 174 => 'data', 335 => 0x100, 408 => 'tnal', 416 => 'thmb', 550 => [\'Thumbnails','ThumbnailsImage'] }, 'thumbnailimagename' => { 174 => '1Name' }, 'thumbnailimagesize' => { 174 => 'ImageSize' }, 'thumbnailimagetype' => { 174 => '0Type' }, 'thumbnailimagevalidarea' => { 69 => 0x13 }, 'thumbnaillength' => { 125 => 0x202 }, 'thumbnailoffset' => { 125 => 0x201 }, - 'thumbnailpng' => { 415 => 'thmb' }, - 'thumbnails' => { 548 => 'Thumbnails' }, - 'thumbnailwidth' => { 149 => 0xfa54, 548 => [\'Thumbnails','ThumbnailsWidth'] }, - 'ticker' => { 540 => 'ticker' }, - 'tiffhandling' => { 521 => 'TIFFHandling', 523 => 'TIFFHandling' }, - 'tiffmeteringimage' => { 194 => 0x104c, 453 => 0x1110 }, + 'thumbnailpng' => { 416 => 'thmb' }, + 'thumbnails' => { 550 => 'Thumbnails' }, + 'thumbnailwidth' => { 149 => 0xfa54, 550 => [\'Thumbnails','ThumbnailsWidth'] }, + 'ticker' => { 542 => 'ticker' }, + 'tiffhandling' => { 523 => 'TIFFHandling', 525 => 'TIFFHandling' }, + 'tiffmeteringimage' => { 194 => 0x104c, 455 => 0x1110 }, 'tilelength' => { 125 => 0x143 }, 'tilewidth' => { 125 => 0x142 }, 'time' => { 145 => 0x401, 390 => 0x7 }, 'timecodes' => { 125 => 0xc763 }, 'timecreated' => { 138 => 0x3c, 147 => 0x14, 156 => 0x10, 402 => 'TimeCreated' }, 'timelapseshotnumber' => { 357 => 0x10 }, - 'timeperiod' => { 540 => 'timePeriod' }, + 'timeperiod' => { 542 => 'timePeriod' }, 'timerfunctionbutton' => { 311 => '5.2', 314 => '12.1', 315 => '13.1' }, 'timerlength' => { 90 => 0x80c }, 'timerrecording' => { 354 => 0x96 }, - 'timescaleparams' => { 550 => 'timeScaleParams' }, - 'timescaleparamsframeoverlappingpercentage' => { 550 => [\'timeScaleParams','timeScaleParamsFrameOverlappingPercentage'] }, - 'timescaleparamsframesize' => { 550 => [\'timeScaleParams','timeScaleParamsFrameSize'] }, - 'timescaleparamsquality' => { 550 => [\'timeScaleParams','timeScaleParamsQuality'] }, + 'timescaleparams' => { 552 => 'timeScaleParams' }, + 'timescaleparamsframeoverlappingpercentage' => { 552 => [\'timeScaleParams','timeScaleParamsFrameOverlappingPercentage'] }, + 'timescaleparamsframesize' => { 552 => [\'timeScaleParams','timeScaleParamsFrameSize'] }, + 'timescaleparamsquality' => { 552 => [\'timeScaleParams','timeScaleParamsQuality'] }, 'timesent' => { 139 => 0x50 }, - 'timeshot' => { 509 => 'TimeShot' }, - 'timesignature' => { 550 => 'timeSignature' }, + 'timeshot' => { 511 => 'TimeShot' }, + 'timesignature' => { 552 => 'timeSignature' }, 'timesincepoweron' => { 354 => 0x29 }, - 'timestamp' => { 11 => 0x45e, 19 => 0x11c, 329 => 0x8, 343 => 'TimeStamp', 354 => 0xaf, 508 => 'Timestamp', 517 => 'Timestamp', 533 => 'TimeStamp' }, + 'timestamp' => { 11 => 0x45e, 19 => 0x11c, 329 => 0x8, 343 => 'TimeStamp', 354 => 0xaf, 510 => 'Timestamp', 519 => 'Timestamp', 535 => 'TimeStamp' }, 'timestamp1' => { 11 => 0x45a }, - 'timezone' => { 83 => 0x1, 247 => 0x8fe, 249 => 0x694, 250 => 0x6a4, 251 => 0x594, 252 => 0x5c4, 253 => 0x5dc, 294 => 0x0, 425 => 0xa }, + 'timezone' => { 83 => 0x1, 247 => 0x8fe, 249 => 0x694, 250 => 0x6a4, 251 => 0x594, 252 => 0x5c4, 253 => 0x5dc, 294 => 0x0, 427 => 0xa }, 'timezonecity' => { 83 => 0x2 }, 'timezonecode' => { 106 => 0x1 }, 'timezoneinfo' => { 106 => 0x2 }, 'timezoneoffset' => { 125 => 0x882a }, - 'tint' => { 409 => 'player.movie.visual.tint', 521 => 'Tint', 523 => 'Tint' }, - 'title' => { 164 => 'Title', 339 => 'Title', 343 => 'Title', 354 => 0x65, 406 => 'Title', 407 => ['titl',"\xa9nam"], 409 => 'title', 415 => ['titl',"\xa9nam"], 524 => 'title', 537 => 'Title', 548 => 'Title' }, - 'togglestyleamount' => { 521 => 'ToggleStyleAmount', 523 => 'ToggleStyleAmount' }, - 'togglestyledigest' => { 521 => 'ToggleStyleDigest', 523 => 'ToggleStyleDigest' }, + 'tint' => { 410 => 'player.movie.visual.tint', 523 => 'Tint', 525 => 'Tint' }, + 'title' => { 164 => 'Title', 339 => 'Title', 343 => 'Title', 354 => 0x65, 406 => 'Title', 408 => ['titl',"\xa9nam"], 410 => 'title', 416 => ['titl',"\xa9nam"], 526 => 'title', 539 => 'Title', 550 => 'Title' }, + 'togglestyleamount' => { 523 => 'ToggleStyleAmount', 525 => 'ToggleStyleAmount' }, + 'togglestyledigest' => { 523 => 'ToggleStyleDigest', 525 => 'ToggleStyleDigest' }, 'tonecomp' => { 243 => 0x81 }, - 'tonecurve' => { 79 => 0x1, 390 => 0x402, 521 => 'ToneCurve', 523 => 'ToneCurve' }, + 'tonecurve' => { 79 => 0x1, 390 => 0x402, 523 => 'ToneCurve', 525 => 'ToneCurve' }, 'tonecurveactive' => { 114 => 0x110 }, - 'tonecurveadobergb' => { 429 => 0xa043 }, - 'tonecurveadobergbdefault' => { 429 => 0xa041 }, - 'tonecurveblue' => { 521 => 'ToneCurveBlue', 523 => 'ToneCurveBlue' }, - 'tonecurvebluex' => { 493 => 0x9003 }, - 'tonecurvebluey' => { 493 => 0x9007 }, + 'tonecurveadobergb' => { 431 => 0xa043 }, + 'tonecurveadobergbdefault' => { 431 => 0xa041 }, + 'tonecurveblue' => { 523 => 'ToneCurveBlue', 525 => 'ToneCurveBlue' }, + 'tonecurvebluex' => { 495 => 0x9003 }, + 'tonecurvebluey' => { 495 => 0x9007 }, 'tonecurvebrightness' => { 109 => 0x20410 }, - 'tonecurvebrightnessx' => { 493 => 0x9000 }, - 'tonecurvebrightnessy' => { 493 => 0x9004 }, + 'tonecurvebrightnessx' => { 495 => 0x9000 }, + 'tonecurvebrightnessy' => { 495 => 0x9004 }, 'tonecurvecolorspace' => { 113 => 0x0 }, 'tonecurvecontrast' => { 109 => 0x20411 }, - 'tonecurvegreen' => { 521 => 'ToneCurveGreen', 523 => 'ToneCurveGreen' }, - 'tonecurvegreenx' => { 493 => 0x9002 }, - 'tonecurvegreeny' => { 493 => 0x9006 }, + 'tonecurvegreen' => { 523 => 'ToneCurveGreen', 525 => 'ToneCurveGreen' }, + 'tonecurvegreenx' => { 495 => 0x9002 }, + 'tonecurvegreeny' => { 495 => 0x9006 }, 'tonecurveinputrange' => { 113 => 0x3 }, 'tonecurveinterpolation' => { 114 => 0x159 }, 'tonecurvemode' => { 114 => 0x113 }, - 'tonecurvename' => { 521 => 'ToneCurveName', 523 => 'ToneCurveName' }, - 'tonecurvename2012' => { 521 => 'ToneCurveName2012', 523 => 'ToneCurveName2012' }, + 'tonecurvename' => { 523 => 'ToneCurveName', 525 => 'ToneCurveName' }, + 'tonecurvename2012' => { 523 => 'ToneCurveName2012', 525 => 'ToneCurveName2012' }, 'tonecurveoriginal' => { 109 => '0x20400.1' }, 'tonecurveoutputrange' => { 113 => 0x5 }, 'tonecurveprofilename' => { 145 => 0x1391 }, 'tonecurveproperty' => { 114 => 0x3c }, - 'tonecurvepv2012' => { 521 => 'ToneCurvePV2012', 523 => 'ToneCurvePV2012' }, - 'tonecurvepv2012blue' => { 521 => 'ToneCurvePV2012Blue', 523 => 'ToneCurvePV2012Blue' }, - 'tonecurvepv2012green' => { 521 => 'ToneCurvePV2012Green', 523 => 'ToneCurvePV2012Green' }, - 'tonecurvepv2012red' => { 521 => 'ToneCurvePV2012Red', 523 => 'ToneCurvePV2012Red' }, - 'tonecurvered' => { 521 => 'ToneCurveRed', 523 => 'ToneCurveRed' }, - 'tonecurveredx' => { 493 => 0x9001 }, - 'tonecurveredy' => { 493 => 0x9005 }, + 'tonecurvepv2012' => { 523 => 'ToneCurvePV2012', 525 => 'ToneCurvePV2012' }, + 'tonecurvepv2012blue' => { 523 => 'ToneCurvePV2012Blue', 525 => 'ToneCurvePV2012Blue' }, + 'tonecurvepv2012green' => { 523 => 'ToneCurvePV2012Green', 525 => 'ToneCurvePV2012Green' }, + 'tonecurvepv2012red' => { 523 => 'ToneCurvePV2012Red', 525 => 'ToneCurvePV2012Red' }, + 'tonecurvered' => { 523 => 'ToneCurveRed', 525 => 'ToneCurveRed' }, + 'tonecurveredx' => { 495 => 0x9001 }, + 'tonecurveredy' => { 495 => 0x9005 }, 'tonecurves' => { 390 => 0x403 }, 'tonecurveshape' => { 113 => 0x1 }, - 'tonecurvesrgb' => { 429 => 0xa042 }, - 'tonecurvesrgbdefault' => { 429 => 0xa040 }, + 'tonecurvesrgb' => { 431 => 0xa042 }, + 'tonecurvesrgbdefault' => { 431 => 0xa040 }, 'tonecurvex' => { 113 => 0xa }, 'tonecurvey' => { 113 => 0xb }, 'tonelevel' => { 330 => 0x52e }, 'tonemap' => { 247 => 0x374, 249 => 0x26a, 250 => 0x26a }, - 'tonemapstrength' => { 521 => 'ToneMapStrength', 523 => 'ToneMapStrength' }, - 'toningeffect' => { 61 => 0xf, 243 => 0xb3, 260 => 0x38, 261 => 0x40, 262 => 0x48, 422 => 0x1015 }, + 'tonemapstrength' => { 523 => 'ToneMapStrength', 525 => 'ToneMapStrength' }, + 'toningeffect' => { 61 => 0xf, 243 => 0xb3, 260 => 0x38, 261 => 0x40, 262 => 0x48, 424 => 0x1015 }, 'toningeffectauto' => { 76 => 0xa4 }, 'toningeffectfaithful' => { 75 => 0x74, 76 => 0x74 }, 'toningeffectlandscape' => { 75 => 0x44, 76 => 0x44 }, @@ -7013,59 +7016,59 @@ my %tagLookup = ( 'touchfnareatall' => { 325 => 0x15b }, 'touchfnareawide' => { 325 => 0x159 }, 'touchfnrole' => { 325 => 0x155 }, - 'track' => { 407 => "\xa9trk", 415 => "\xa9trk" }, - 'trackcreatedate' => { 414 => 0x1 }, - 'trackmodifydate' => { 414 => 0x2 }, - 'tracknumber' => { 407 => 'trkn', 550 => 'trackNumber' }, - 'tracks' => { 550 => 'Tracks' }, - 'tracksframerate' => { 550 => [\'Tracks','TracksFrameRate'] }, - 'tracksmarkers' => { 550 => [\'Tracks','TracksMarkers'] }, - 'tracksmarkerscomment' => { 550 => [\'Tracks','TracksMarkersComment'] }, - 'tracksmarkerscuepointparams' => { 550 => [\'Tracks','TracksMarkersCuePointParams'] }, - 'tracksmarkerscuepointparamskey' => { 550 => [\'Tracks','TracksMarkersCuePointParamsKey'] }, - 'tracksmarkerscuepointparamsvalue' => { 550 => [\'Tracks','TracksMarkersCuePointParamsValue'] }, - 'tracksmarkerscuepointtype' => { 550 => [\'Tracks','TracksMarkersCuePointType'] }, - 'tracksmarkersduration' => { 550 => [\'Tracks','TracksMarkersDuration'] }, - 'tracksmarkerslocation' => { 550 => [\'Tracks','TracksMarkersLocation'] }, - 'tracksmarkersname' => { 550 => [\'Tracks','TracksMarkersName'] }, - 'tracksmarkersprobability' => { 550 => [\'Tracks','TracksMarkersProbability'] }, - 'tracksmarkersspeaker' => { 550 => [\'Tracks','TracksMarkersSpeaker'] }, - 'tracksmarkersstarttime' => { 550 => [\'Tracks','TracksMarkersStartTime'] }, - 'tracksmarkerstarget' => { 550 => [\'Tracks','TracksMarkersTarget'] }, - 'tracksmarkerstype' => { 550 => [\'Tracks','TracksMarkersType'] }, - 'trackstrackname' => { 550 => [\'Tracks','TracksTrackName'] }, - 'trackstracktype' => { 550 => [\'Tracks','TracksTrackType'] }, - 'tracktype' => { 415 => 'kgtt' }, + 'track' => { 408 => "\xa9trk", 416 => "\xa9trk" }, + 'trackcreatedate' => { 415 => 0x1 }, + 'trackmodifydate' => { 415 => 0x2 }, + 'tracknumber' => { 408 => 'trkn', 552 => 'trackNumber' }, + 'tracks' => { 552 => 'Tracks' }, + 'tracksframerate' => { 552 => [\'Tracks','TracksFrameRate'] }, + 'tracksmarkers' => { 552 => [\'Tracks','TracksMarkers'] }, + 'tracksmarkerscomment' => { 552 => [\'Tracks','TracksMarkersComment'] }, + 'tracksmarkerscuepointparams' => { 552 => [\'Tracks','TracksMarkersCuePointParams'] }, + 'tracksmarkerscuepointparamskey' => { 552 => [\'Tracks','TracksMarkersCuePointParamsKey'] }, + 'tracksmarkerscuepointparamsvalue' => { 552 => [\'Tracks','TracksMarkersCuePointParamsValue'] }, + 'tracksmarkerscuepointtype' => { 552 => [\'Tracks','TracksMarkersCuePointType'] }, + 'tracksmarkersduration' => { 552 => [\'Tracks','TracksMarkersDuration'] }, + 'tracksmarkerslocation' => { 552 => [\'Tracks','TracksMarkersLocation'] }, + 'tracksmarkersname' => { 552 => [\'Tracks','TracksMarkersName'] }, + 'tracksmarkersprobability' => { 552 => [\'Tracks','TracksMarkersProbability'] }, + 'tracksmarkersspeaker' => { 552 => [\'Tracks','TracksMarkersSpeaker'] }, + 'tracksmarkersstarttime' => { 552 => [\'Tracks','TracksMarkersStartTime'] }, + 'tracksmarkerstarget' => { 552 => [\'Tracks','TracksMarkersTarget'] }, + 'tracksmarkerstype' => { 552 => [\'Tracks','TracksMarkersType'] }, + 'trackstrackname' => { 552 => [\'Tracks','TracksTrackName'] }, + 'trackstracktype' => { 552 => [\'Tracks','TracksTrackType'] }, + 'tracktype' => { 416 => 'kgtt' }, 'trailer' => { 126 => 'Trailer' }, 'trailersignature' => { 171 => 'zmie' }, - 'transcript' => { 535 => 'Transcript' }, - 'transcriptlink' => { 535 => 'TranscriptLink' }, - 'transcriptlinklink' => { 535 => [\'TranscriptLink','TranscriptLinkLink'] }, - 'transcriptlinklinkqualifier' => { 535 => [\'TranscriptLink','TranscriptLinkLinkQualifier'] }, - 'transferfunction' => { 125 => 0x12d, 546 => 'TransferFunction' }, + 'transcript' => { 537 => 'Transcript' }, + 'transcriptlink' => { 537 => 'TranscriptLink' }, + 'transcriptlinklink' => { 537 => [\'TranscriptLink','TranscriptLinkLink'] }, + 'transcriptlinklinkqualifier' => { 537 => [\'TranscriptLink','TranscriptLinkLinkQualifier'] }, + 'transferfunction' => { 125 => 0x12d, 548 => 'TransferFunction' }, 'transfertimenormal' => { 145 => 0x1888 }, 'transfertimetest' => { 145 => 0x1889 }, 'transform' => { 354 => [0x8012,0x59] }, - 'transformation' => { 536 => 'Transformation' }, - 'transmissionreference' => { 538 => 'TransmissionReference' }, - 'trapped' => { 339 => 'Trapped', 537 => 'Trapped' }, + 'transformation' => { 538 => 'Transformation' }, + 'transmissionreference' => { 540 => 'TransmissionReference' }, + 'trapped' => { 339 => 'Trapped', 539 => 'Trapped' }, 'trashbuttonfunction' => { 90 => 0x710 }, 'travelday' => { 354 => 0x36 }, - 'treble' => { 409 => 'player.movie.audio.treble' }, - 'triggermode' => { 416 => 0x6, 417 => 0x34, 418 => 0x34 }, + 'treble' => { 407 => 'player.movie.audio.treble', 410 => 'player.movie.audio.treble' }, + 'triggermode' => { 418 => 0x6, 419 => 0x34, 420 => 0x34 }, 'tstop' => { 125 => 0xc772 }, 'ttl_da_adown' => { 377 => 0x5 }, 'ttl_da_aup' => { 377 => 0x4 }, 'ttl_da_bdown' => { 377 => 0x7 }, 'ttl_da_bup' => { 377 => 0x6 }, 'tungstenawb' => { 367 => 0x1 }, - 'tvepisode' => { 407 => 'tves' }, - 'tvepisodeid' => { 407 => 'tven' }, + 'tvepisode' => { 408 => 'tves' }, + 'tvepisodeid' => { 408 => 'tven' }, 'tvexposuretimesetting' => { 370 => 0x12 }, - 'tvnetworkname' => { 407 => 'tvnn' }, - 'tvseason' => { 407 => 'tvsn' }, - 'tvshow' => { 407 => 'tvsh' }, - 'type' => { 503 => 'Type', 524 => 'type', 545 => 'type' }, + 'tvnetworkname' => { 408 => 'tvnn' }, + 'tvseason' => { 408 => 'tvsn' }, + 'tvshow' => { 408 => 'tvsh' }, + 'type' => { 505 => 'Type', 526 => 'type', 547 => 'type' }, 'typestatus' => { 124 => [\'Identification','IdentificationTypeStatus'] }, 'uniquecameramodel' => { 125 => 0xc614 }, 'uniquedocumentid' => { 138 => 0xbb }, @@ -7076,10 +7079,10 @@ my %tagLookup = ( 'uniquematrixfluorescent' => { 145 => 0x7e6 }, 'uniquematrixtungsten' => { 145 => 0x7e5 }, 'uniqueobjectname' => { 139 => 0x64 }, - 'units' => { 504 => 'Units' }, - 'unknown_aacr' => { 407 => 'AACR' }, - 'unknown_cdek' => { 407 => 'CDEK' }, - 'unknown_cdet' => { 407 => 'CDET' }, + 'units' => { 506 => 'Units' }, + 'unknown_aacr' => { 408 => 'AACR' }, + 'unknown_cdek' => { 408 => 'CDEK' }, + 'unknown_cdet' => { 408 => 'CDET' }, 'unknownblock' => { 390 => 0x405 }, 'unknownblock1' => { 334 => 0x635 }, 'unknownblock2' => { 334 => 0x636 }, @@ -7097,9 +7100,9 @@ my %tagLookup = ( 'unknownrawshadow' => { 115 => 0x84 }, 'unknownrawshadowpoint' => { 115 => 0x49 }, 'unknownsharpness' => { 115 => 0x47 }, - 'unknowntags' => { 415 => 'TAGS' }, + 'unknowntags' => { 416 => 'TAGS' }, 'unknowntemperature' => { 127 => 0x4 }, - 'unknownthumbnail' => { 415 => 'thmb' }, + 'unknownthumbnail' => { 416 => 'thmb' }, 'unsharp1color' => { 307 => 0x13 }, 'unsharp1halowidth' => { 307 => 0x19 }, 'unsharp1intensity' => { 307 => 0x17 }, @@ -7121,88 +7124,88 @@ my %tagLookup = ( 'unsharpmaskfineness' => { 79 => 0xe, 109 => 0x20309 }, 'unsharpmaskstrength' => { 109 => 0x20308 }, 'unsharpmaskthreshold' => { 79 => 0xf, 109 => 0x2030a }, - 'uprightcentermode' => { 521 => 'UprightCenterMode', 523 => 'UprightCenterMode' }, - 'uprightcenternormx' => { 521 => 'UprightCenterNormX', 523 => 'UprightCenterNormX' }, - 'uprightcenternormy' => { 521 => 'UprightCenterNormY', 523 => 'UprightCenterNormY' }, - 'uprightdependentdigest' => { 521 => 'UprightDependentDigest', 523 => 'UprightDependentDigest' }, - 'uprightfocallength35mm' => { 521 => 'UprightFocalLength35mm', 523 => 'UprightFocalLength35mm' }, - 'uprightfocalmode' => { 521 => 'UprightFocalMode', 523 => 'UprightFocalMode' }, - 'uprightfoursegments_0' => { 521 => 'UprightFourSegments_0', 523 => 'UprightFourSegments_0' }, - 'uprightfoursegments_1' => { 521 => 'UprightFourSegments_1', 523 => 'UprightFourSegments_1' }, - 'uprightfoursegments_2' => { 521 => 'UprightFourSegments_2', 523 => 'UprightFourSegments_2' }, - 'uprightfoursegments_3' => { 521 => 'UprightFourSegments_3', 523 => 'UprightFourSegments_3' }, - 'uprightfoursegmentscount' => { 521 => 'UprightFourSegmentsCount', 523 => 'UprightFourSegmentsCount' }, - 'uprightguideddependentdigest' => { 521 => 'UprightGuidedDependentDigest', 523 => 'UprightGuidedDependentDigest' }, - 'uprightpreview' => { 521 => 'UprightPreview', 523 => 'UprightPreview' }, - 'uprighttransform_0' => { 521 => 'UprightTransform_0', 523 => 'UprightTransform_0' }, - 'uprighttransform_1' => { 521 => 'UprightTransform_1', 523 => 'UprightTransform_1' }, - 'uprighttransform_2' => { 521 => 'UprightTransform_2', 523 => 'UprightTransform_2' }, - 'uprighttransform_3' => { 521 => 'UprightTransform_3', 523 => 'UprightTransform_3' }, - 'uprighttransform_4' => { 521 => 'UprightTransform_4', 523 => 'UprightTransform_4' }, - 'uprighttransform_5' => { 521 => 'UprightTransform_5', 523 => 'UprightTransform_5' }, - 'uprighttransformcount' => { 521 => 'UprightTransformCount', 523 => 'UprightTransformCount' }, - 'uprightversion' => { 521 => 'UprightVersion', 523 => 'UprightVersion' }, - 'urgency' => { 138 => 0xa, 538 => 'Urgency' }, - 'url' => { 164 => 'URL', 343 => 'URL', 404 => 0x40b, 540 => 'url' }, + 'uprightcentermode' => { 523 => 'UprightCenterMode', 525 => 'UprightCenterMode' }, + 'uprightcenternormx' => { 523 => 'UprightCenterNormX', 525 => 'UprightCenterNormX' }, + 'uprightcenternormy' => { 523 => 'UprightCenterNormY', 525 => 'UprightCenterNormY' }, + 'uprightdependentdigest' => { 523 => 'UprightDependentDigest', 525 => 'UprightDependentDigest' }, + 'uprightfocallength35mm' => { 523 => 'UprightFocalLength35mm', 525 => 'UprightFocalLength35mm' }, + 'uprightfocalmode' => { 523 => 'UprightFocalMode', 525 => 'UprightFocalMode' }, + 'uprightfoursegments_0' => { 523 => 'UprightFourSegments_0', 525 => 'UprightFourSegments_0' }, + 'uprightfoursegments_1' => { 523 => 'UprightFourSegments_1', 525 => 'UprightFourSegments_1' }, + 'uprightfoursegments_2' => { 523 => 'UprightFourSegments_2', 525 => 'UprightFourSegments_2' }, + 'uprightfoursegments_3' => { 523 => 'UprightFourSegments_3', 525 => 'UprightFourSegments_3' }, + 'uprightfoursegmentscount' => { 523 => 'UprightFourSegmentsCount', 525 => 'UprightFourSegmentsCount' }, + 'uprightguideddependentdigest' => { 523 => 'UprightGuidedDependentDigest', 525 => 'UprightGuidedDependentDigest' }, + 'uprightpreview' => { 523 => 'UprightPreview', 525 => 'UprightPreview' }, + 'uprighttransform_0' => { 523 => 'UprightTransform_0', 525 => 'UprightTransform_0' }, + 'uprighttransform_1' => { 523 => 'UprightTransform_1', 525 => 'UprightTransform_1' }, + 'uprighttransform_2' => { 523 => 'UprightTransform_2', 525 => 'UprightTransform_2' }, + 'uprighttransform_3' => { 523 => 'UprightTransform_3', 525 => 'UprightTransform_3' }, + 'uprighttransform_4' => { 523 => 'UprightTransform_4', 525 => 'UprightTransform_4' }, + 'uprighttransform_5' => { 523 => 'UprightTransform_5', 525 => 'UprightTransform_5' }, + 'uprighttransformcount' => { 523 => 'UprightTransformCount', 525 => 'UprightTransformCount' }, + 'uprightversion' => { 523 => 'UprightVersion', 525 => 'UprightVersion' }, + 'urgency' => { 138 => 0xa, 540 => 'Urgency' }, + 'url' => { 164 => 'URL', 343 => 'URL', 404 => 0x40b, 542 => 'url' }, 'url_list' => { 404 => 0x41e }, - 'urla-platform' => { 540 => [\'url','urlA-platform'] }, - 'urlurl' => { 540 => [\'url','urlUrl'] }, + 'urla-platform' => { 542 => [\'url','urlA-platform'] }, + 'urlurl' => { 542 => [\'url','urlUrl'] }, 'usablemeteringmodes' => { 90 => 0x10a }, 'usableshootingmodes' => { 90 => 0x109 }, - 'usage' => { 541 => 'usage' }, - 'usageterms' => { 554 => 'UsageTerms' }, + 'usage' => { 543 => 'usage' }, + 'usageterms' => { 556 => 'UsageTerms' }, 'usbpowerdelivery' => { 247 => 0x9ac, 249 => 0x762, 250 => 0x772, 251 => 0x664, 252 => 0x694, 253 => 0x6fc }, 'usedialwithouthold' => { 325 => 0xc3, 326 => 0xbf, 327 => 0xbf, 328 => 0xbf }, - 'useguidelines' => { 519 => 'useGuidelines' }, - 'usepanoramaviewer' => { 507 => 'UsePanoramaViewer' }, - 'usercollection' => { 409 => 'collection.user' }, - 'usercomment' => { 103 => 0x805, 125 => 0x9286, 527 => 'UserComment' }, + 'useguidelines' => { 521 => 'useGuidelines' }, + 'usepanoramaviewer' => { 509 => 'UsePanoramaViewer' }, + 'usercollection' => { 410 => 'collection.user' }, + 'usercomment' => { 103 => 0x805, 125 => 0x9286, 529 => 'UserComment' }, 'userdef1picturestyle' => { 19 => 0x10c, 75 => 0xd8, 76 => 0xf0 }, 'userdef2picturestyle' => { 19 => 0x10e, 75 => 0xda, 76 => 0xf2 }, 'userdef3picturestyle' => { 19 => 0x110, 75 => 0xdc, 76 => 0xf4 }, - 'userfields' => { 513 => 'UserFields' }, - 'userlabel' => { 416 => 0x2b, 417 => 0x5a, 418 => 0x68 }, + 'userfields' => { 515 => 'UserFields' }, + 'userlabel' => { 418 => 0x2b, 419 => 0x5a, 420 => 0x68 }, 'userprofile' => { 349 => 0x302, 353 => 0x34c, 356 => 0x3038 }, - 'userrating' => { 409 => 'rating.user', 415 => 'urat' }, + 'userrating' => { 410 => 'rating.user', 416 => 'urat' }, 'usmlenselectronicmf' => { 2 => 0x7, 89 => 0x7, 90 => 0x501 }, - 'uspsnumber' => { 540 => 'uspsNumber' }, + 'uspsnumber' => { 542 => 'uspsNumber' }, 'utmeasting' => { 175 => 'Easting' }, 'utmmapdatum' => { 175 => 'Datum' }, 'utmnorthing' => { 175 => 'Northing' }, 'utmzone' => { 175 => 'Zone' }, - 'uuid' => { 521 => 'UUID', 523 => 'UUID' }, + 'uuid' => { 523 => 'UUID', 525 => 'UUID' }, 'uv-irfiltercorrection' => { 349 => 0x325 }, 'validbits' => { 334 => 0x611, 335 => 0x102c }, 'validcropcorners' => { 344 => 'ValidCropCorners' }, 'validpixeldepth' => { 338 => 0x611 }, - 'variablelowpassfilter' => { 456 => 0x2028 }, + 'variablelowpassfilter' => { 458 => 0x2028 }, 'variousmodes' => { 147 => 0x26 }, 'variousmodes2' => { 147 => 0x3a }, 'variprogram' => { 243 => 0xab }, 'varraydacnominalvalues' => { 145 => 0x191e }, - 'vendor' => { 415 => 'vndr' }, - 'vendorinfo' => { 497 => 'VendorInfo' }, - 'vendorinfomanufacturer' => { 497 => [\'VendorInfo','VendorInfoManufacturer'] }, - 'vendorinfomodel' => { 497 => [\'VendorInfo','VendorInfoModel'] }, - 'vendorinfonotes' => { 497 => [\'VendorInfo','VendorInfoNotes'] }, + 'vendor' => { 416 => 'vndr' }, + 'vendorinfo' => { 499 => 'VendorInfo' }, + 'vendorinfomanufacturer' => { 499 => [\'VendorInfo','VendorInfoManufacturer'] }, + 'vendorinfomodel' => { 499 => [\'VendorInfo','VendorInfoModel'] }, + 'vendorinfonotes' => { 499 => [\'VendorInfo','VendorInfoNotes'] }, 'verbatimidentification' => { 124 => [\'Identification','IdentificationVerbatimIdentification'] }, - 'version' => { 133 => 0x0, 344 => 'Version', 406 => 'Version', 409 => 'version', 521 => 'Version', 523 => 'Version', 532 => 'Version' }, - 'versioncreatedate' => { 493 => 0xd100 }, - 'versionid' => { 551 => 'VersionID' }, - 'versionidentifier' => { 540 => 'versionIdentifier' }, - 'versionmodifydate' => { 493 => 0xd101 }, - 'versions' => { 551 => 'Versions' }, - 'versionscomments' => { 551 => [\'Versions','VersionsComments'] }, - 'versionsevent' => { 551 => [\'Versions','VersionsEvent'] }, - 'versionseventaction' => { 551 => [\'Versions','VersionsEventAction'] }, - 'versionseventchanged' => { 551 => [\'Versions','VersionsEventChanged'] }, - 'versionseventinstanceid' => { 551 => [\'Versions','VersionsEventInstanceID'] }, - 'versionseventparameters' => { 551 => [\'Versions','VersionsEventParameters'] }, - 'versionseventsoftwareagent' => { 551 => [\'Versions','VersionsEventSoftwareAgent'] }, - 'versionseventwhen' => { 551 => [\'Versions','VersionsEventWhen'] }, - 'versionsmodifier' => { 551 => [\'Versions','VersionsModifier'] }, - 'versionsmodifydate' => { 551 => [\'Versions','VersionsModifyDate'] }, - 'versionsversion' => { 551 => [\'Versions','VersionsVersion'] }, + 'version' => { 133 => 0x0, 344 => 'Version', 406 => 'Version', 410 => 'version', 523 => 'Version', 525 => 'Version', 534 => 'Version' }, + 'versioncreatedate' => { 495 => 0xd100 }, + 'versionid' => { 553 => 'VersionID' }, + 'versionidentifier' => { 542 => 'versionIdentifier' }, + 'versionmodifydate' => { 495 => 0xd101 }, + 'versions' => { 553 => 'Versions' }, + 'versionscomments' => { 553 => [\'Versions','VersionsComments'] }, + 'versionsevent' => { 553 => [\'Versions','VersionsEvent'] }, + 'versionseventaction' => { 553 => [\'Versions','VersionsEventAction'] }, + 'versionseventchanged' => { 553 => [\'Versions','VersionsEventChanged'] }, + 'versionseventinstanceid' => { 553 => [\'Versions','VersionsEventInstanceID'] }, + 'versionseventparameters' => { 553 => [\'Versions','VersionsEventParameters'] }, + 'versionseventsoftwareagent' => { 553 => [\'Versions','VersionsEventSoftwareAgent'] }, + 'versionseventwhen' => { 553 => [\'Versions','VersionsEventWhen'] }, + 'versionsmodifier' => { 553 => [\'Versions','VersionsModifier'] }, + 'versionsmodifydate' => { 553 => [\'Versions','VersionsModifyDate'] }, + 'versionsversion' => { 553 => [\'Versions','VersionsVersion'] }, 'verticalafonbutton' => { 309 => '3.2', 310 => '47.2', 312 => '79.1', 327 => 0x11d, 328 => 0x135 }, 'verticalclockoverlaps' => { 145 => 0x412 }, 'verticalfuncbutton' => { 310 => '42.2', 312 => '67.1', 327 => 0x115, 328 => 0x12d }, @@ -7215,87 +7218,87 @@ my %tagLookup = ( 'verticalmultiselector' => { 310 => '42.1', 312 => '66.1', 313 => '66.1', 323 => '66.1', 327 => 0x18f, 328 => 0x1a7 }, 'verticalmultiselectorplaybackmode' => { 327 => 0x125, 328 => 0x13d }, 'vfdisplayillumination' => { 2 => 0x11, 90 => [0x510,0x51d] }, - 'vibrance' => { 514 => 'Vibrance', 521 => 'Vibrance', 523 => 'Vibrance' }, + 'vibrance' => { 516 => 'Vibrance', 523 => 'Vibrance', 525 => 'Vibrance' }, 'vibrationreduction' => { 273 => [0x75,0x82,0x1ae], 281 => '586.1', 288 => '590.2', 292 => 0x4 }, - 'videoalphamode' => { 550 => 'videoAlphaMode' }, - 'videoalphapremultiplecolor' => { 550 => 'videoAlphaPremultipleColor' }, - 'videoalphapremultiplecolora' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorA'] }, - 'videoalphapremultiplecolorb' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorB'] }, - 'videoalphapremultiplecolorblack' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlack'] }, - 'videoalphapremultiplecolorblue' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlue'] }, - 'videoalphapremultiplecolorcyan' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorCyan'] }, - 'videoalphapremultiplecolorgray' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGray'] }, - 'videoalphapremultiplecolorgreen' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGreen'] }, - 'videoalphapremultiplecolorl' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorL'] }, - 'videoalphapremultiplecolormagenta' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMagenta'] }, - 'videoalphapremultiplecolormode' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMode'] }, - 'videoalphapremultiplecolorred' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorRed'] }, - 'videoalphapremultiplecolorswatchname' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorSwatchName'] }, - 'videoalphapremultiplecolortint' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorTint'] }, - 'videoalphapremultiplecolortype' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorType'] }, - 'videoalphapremultiplecoloryellow' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorYellow'] }, - 'videoalphaunityistransparent' => { 550 => 'videoAlphaUnityIsTransparent' }, - 'videobitrate' => { 535 => 'videoBitRate' }, - 'videobitratemode' => { 535 => 'videoBitRateMode' }, + 'videoalphamode' => { 552 => 'videoAlphaMode' }, + 'videoalphapremultiplecolor' => { 552 => 'videoAlphaPremultipleColor' }, + 'videoalphapremultiplecolora' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorA'] }, + 'videoalphapremultiplecolorb' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorB'] }, + 'videoalphapremultiplecolorblack' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlack'] }, + 'videoalphapremultiplecolorblue' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlue'] }, + 'videoalphapremultiplecolorcyan' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorCyan'] }, + 'videoalphapremultiplecolorgray' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGray'] }, + 'videoalphapremultiplecolorgreen' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGreen'] }, + 'videoalphapremultiplecolorl' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorL'] }, + 'videoalphapremultiplecolormagenta' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMagenta'] }, + 'videoalphapremultiplecolormode' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMode'] }, + 'videoalphapremultiplecolorred' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorRed'] }, + 'videoalphapremultiplecolorswatchname' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorSwatchName'] }, + 'videoalphapremultiplecolortint' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorTint'] }, + 'videoalphapremultiplecolortype' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorType'] }, + 'videoalphapremultiplecoloryellow' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorYellow'] }, + 'videoalphaunityistransparent' => { 552 => 'videoAlphaUnityIsTransparent' }, + 'videobitrate' => { 537 => 'videoBitRate' }, + 'videobitratemode' => { 537 => 'videoBitRateMode' }, 'videoburstmode' => { 354 => 0xbb }, 'videoburstresolution' => { 354 => 0xb3 }, 'videocodec' => { 72 => 0x74 }, - 'videocolorspace' => { 550 => 'videoColorSpace' }, + 'videocolorspace' => { 552 => 'videoColorSpace' }, 'videocompression' => { 133 => 0x3806 }, - 'videocompressor' => { 550 => 'videoCompressor' }, - 'videodisplayaspectratio' => { 535 => 'videoDisplayAspectRatio' }, - 'videoencodingprofile' => { 535 => 'videoEncodingProfile' }, - 'videofieldorder' => { 550 => 'videoFieldOrder' }, - 'videoframerate' => { 354 => 0x27, 550 => 'videoFrameRate' }, - 'videoframesize' => { 550 => 'videoFrameSize' }, - 'videoframesizeh' => { 550 => [\'videoFrameSize','videoFrameSizeH'] }, - 'videoframesizeunit' => { 550 => [\'videoFrameSize','videoFrameSizeUnit'] }, - 'videoframesizew' => { 550 => [\'videoFrameSize','videoFrameSizeW'] }, - 'videomoddate' => { 550 => 'videoModDate' }, - 'videopixelaspectratio' => { 550 => 'videoPixelAspectRatio' }, - 'videopixeldepth' => { 550 => 'videoPixelDepth' }, + 'videocompressor' => { 552 => 'videoCompressor' }, + 'videodisplayaspectratio' => { 537 => 'videoDisplayAspectRatio' }, + 'videoencodingprofile' => { 537 => 'videoEncodingProfile' }, + 'videofieldorder' => { 552 => 'videoFieldOrder' }, + 'videoframerate' => { 354 => 0x27, 552 => 'videoFrameRate' }, + 'videoframesize' => { 552 => 'videoFrameSize' }, + 'videoframesizeh' => { 552 => [\'videoFrameSize','videoFrameSizeH'] }, + 'videoframesizeunit' => { 552 => [\'videoFrameSize','videoFrameSizeUnit'] }, + 'videoframesizew' => { 552 => [\'videoFrameSize','videoFrameSizeW'] }, + 'videomoddate' => { 552 => 'videoModDate' }, + 'videopixelaspectratio' => { 552 => 'videoPixelAspectRatio' }, + 'videopixeldepth' => { 552 => 'videoPixelDepth' }, 'videopreburst' => { 354 => 0xc1 }, 'videoquality' => { 119 => 0x4003 }, 'videorecordingmode' => { 133 => 0x3803 }, - 'videoshottype' => { 535 => 'VideoShotType' }, - 'videoshottypeidentifier' => { 535 => [\'VideoShotType','VideoShotTypeIdentifier'] }, - 'videoshottypename' => { 535 => [\'VideoShotType','VideoShotTypeName'] }, - 'videostreamscount' => { 535 => 'videoStreamsCount' }, + 'videoshottype' => { 537 => 'VideoShotType' }, + 'videoshottypeidentifier' => { 537 => [\'VideoShotType','VideoShotTypeIdentifier'] }, + 'videoshottypename' => { 537 => [\'VideoShotType','VideoShotTypeName'] }, + 'videostreamscount' => { 537 => 'videoStreamsCount' }, 'viewfinder' => { 399 => 0x455 }, 'viewfinderdisplay' => { 309 => '12.4', 310 => '6.3' }, 'viewfinderwarning' => { 309 => '13.4', 319 => '3.5', 320 => '6.2', 324 => '4.4' }, 'viewfinderwarnings' => { 90 => 0x40a }, 'viewinfoduringexposure' => { 90 => 0x407 }, - 'viewingmode' => { 444 => 0x2f, 461 => 0x18 }, - 'viewingmode2' => { 444 => [0x85,0x285] }, + 'viewingmode' => { 446 => 0x2f, 463 => 0x18 }, + 'viewingmode2' => { 446 => [0x85,0x285] }, 'viewmodeshoweffectsofsettings' => { 253 => 0x7d2, 326 => 0x2a9 }, - 'viewpoint' => { 539 => 'viewpoint' }, - 'vignetteamount' => { 521 => 'VignetteAmount', 523 => 'VignetteAmount' }, + 'viewpoint' => { 541 => 'viewpoint' }, + 'vignetteamount' => { 523 => 'VignetteAmount', 525 => 'VignetteAmount' }, 'vignettecoefficient1' => { 293 => 0x24 }, 'vignettecoefficient2' => { 293 => 0x34 }, 'vignettecoefficient3' => { 293 => 0x44 }, 'vignettecontrol' => { 243 => 0x2a, 302 => 0x76a43205 }, 'vignettecontrolintensity' => { 302 => 0xac6bd5c0 }, - 'vignettecorrectionalreadyapplied' => { 518 => 'VignetteCorrectionAlreadyApplied' }, + 'vignettecorrectionalreadyapplied' => { 520 => 'VignetteCorrectionAlreadyApplied' }, 'vignettecorrectionversion' => { 293 => 0x0 }, - 'vignettemidpoint' => { 521 => 'VignetteMidpoint', 523 => 'VignetteMidpoint' }, - 'vignetting' => { 422 => 0x1011, 429 => 0xa052 }, - 'vignettingcorrection' => { 125 => 0x7031, 429 => 0xa053, 456 => 0x2011 }, - 'vignettingcorrparams' => { 125 => 0x7032, 487 => 0x64a, 488 => [0x34a,0x350,0x35c,0x368] }, - 'vignettingsetting' => { 429 => 0xa054 }, - 'virtualfocallength' => { 536 => 'VirtualFocalLength' }, + 'vignettemidpoint' => { 523 => 'VignetteMidpoint', 525 => 'VignetteMidpoint' }, + 'vignetting' => { 424 => 0x1011, 431 => 0xa052 }, + 'vignettingcorrection' => { 125 => 0x7031, 431 => 0xa053, 458 => 0x2011 }, + 'vignettingcorrparams' => { 125 => 0x7032, 489 => 0x64a, 490 => [0x34a,0x350,0x35c,0x368] }, + 'vignettingsetting' => { 431 => 0xa054 }, + 'virtualfocallength' => { 538 => 'VirtualFocalLength' }, 'virtualhorizonstyle' => { 325 => 0x161, 326 => 0x167, 327 => 0x167, 328 => 0x17f }, - 'virtualimagexcenter' => { 536 => 'VirtualImageXCenter' }, - 'virtualimageycenter' => { 536 => 'VirtualImageYCenter' }, - 'visualcolor' => { 535 => 'VisualColour' }, - 'visualtechnique' => { 539 => 'visualTechnique' }, - 'voicememo' => { 431 => 0x216 }, - 'volume' => { 540 => 'volume' }, + 'virtualimagexcenter' => { 538 => 'VirtualImageXCenter' }, + 'virtualimageycenter' => { 538 => 'VirtualImageYCenter' }, + 'visualcolor' => { 537 => 'VisualColour' }, + 'visualtechnique' => { 541 => 'visualTechnique' }, + 'voicememo' => { 433 => 0x216 }, + 'volume' => { 542 => 'volume' }, 'vr_0x66' => { 273 => 0x66 }, 'vrdoffset' => { 69 => 0xd0 }, 'vrmode' => { 247 => 0x342, 249 => 0x226, 250 => 0x226, 251 => 0x212, 252 => 0x226, 253 => 0x226, 292 => 0x6 }, 'vrtype' => { 292 => 0x8 }, - 'waterdepth' => { 125 => 0x9403, 528 => 'WaterDepth' }, + 'waterdepth' => { 125 => 0x9403, 530 => 'WaterDepth' }, 'wb_bluelevel3500k' => { 194 => 0x19a }, 'wb_bluelevel6500k' => { 194 => 0x18a }, 'wb_bluelevelcustom' => { 194 => 0x18e }, @@ -7320,8 +7323,8 @@ my %tagLookup = ( 'wb_glevel6000k' => { 334 => 0x11c }, 'wb_glevel6600k' => { 334 => 0x11d }, 'wb_glevel7500k' => { 334 => 0x11e }, - 'wb_grbglevels' => { 211 => 0x0, 463 => 0x7303 }, - 'wb_grbglevelsauto' => { 86 => 0x2, 463 => 0x7302 }, + 'wb_grbglevels' => { 211 => 0x0, 465 => 0x7303 }, + 'wb_grbglevelsauto' => { 86 => 0x2, 465 => 0x7302 }, 'wb_grbglevelscloudy' => { 86 => 0x12 }, 'wb_grbglevelscustom1' => { 86 => 0x42 }, 'wb_grbglevelscustom2' => { 86 => 0x4a }, @@ -7389,53 +7392,53 @@ my %tagLookup = ( 'wb_redlevelsshade' => { 194 => 0x168 }, 'wb_redlevelstungsten' => { 194 => 0xc0 }, 'wb_rgbglevels' => { 210 => 0x0 }, - 'wb_rgblevels' => { 194 => [0x546,0x96], 350 => 0xd, 351 => 0x413, 356 => 0x3036, 399 => 0x107, 465 => 0x117c, 466 => 0x1180, 467 => 0x115c, 468 => 0x11d8, 469 => 0x11b4, 470 => 0x106c, 471 => 0x264, 472 => 0x264, 473 => 0x252 }, + 'wb_rgblevels' => { 194 => [0x546,0x96], 350 => 0xd, 351 => 0x413, 356 => 0x3036, 399 => 0x107, 467 => 0x117c, 468 => 0x1180, 469 => 0x115c, 470 => 0x11d8, 471 => 0x11b4, 472 => 0x106c, 473 => 0x264, 474 => 0x264, 475 => 0x252 }, 'wb_rgblevels1' => { 361 => 0x2 }, 'wb_rgblevels2' => { 361 => 0x6 }, - 'wb_rgblevels2500k' => { 463 => 0x782d }, + 'wb_rgblevels2500k' => { 465 => 0x782d }, 'wb_rgblevels3' => { 361 => 0xa }, - 'wb_rgblevels3200k' => { 463 => 0x782c }, + 'wb_rgblevels3200k' => { 465 => 0x782c }, 'wb_rgblevels4' => { 361 => 0xe }, - 'wb_rgblevels4500k' => { 463 => [0x7484,0x7824] }, + 'wb_rgblevels4500k' => { 465 => [0x7484,0x7824] }, 'wb_rgblevels5' => { 361 => 0x12 }, 'wb_rgblevels6' => { 361 => 0x16 }, - 'wb_rgblevels6000k' => { 463 => 0x782b }, + 'wb_rgblevels6000k' => { 465 => 0x782b }, 'wb_rgblevels7' => { 361 => 0x1a }, - 'wb_rgblevels8500k' => { 463 => 0x782a }, - 'wb_rgblevelsauto' => { 433 => 0x0 }, - 'wb_rgblevelscloudy' => { 463 => [0x7481,0x7821] }, - 'wb_rgblevelscustom1' => { 433 => 0x15 }, - 'wb_rgblevelscustom2' => { 433 => 0x18 }, - 'wb_rgblevelscustom3' => { 433 => 0x1b }, - 'wb_rgblevelsdaylight' => { 433 => 0x3, 463 => [0x7480,0x7820] }, - 'wb_rgblevelsflash' => { 433 => 0x12, 463 => [0x7483,0x7823] }, - 'wb_rgblevelsfluorescent' => { 433 => 0xf, 463 => [0x7486,0x7826] }, - 'wb_rgblevelsfluorescentm1' => { 463 => 0x7829 }, - 'wb_rgblevelsfluorescentp1' => { 463 => 0x7827 }, - 'wb_rgblevelsfluorescentp2' => { 463 => 0x7828 }, - 'wb_rgblevelsincandescent' => { 433 => 0xc }, - 'wb_rgblevelsovercast' => { 433 => 0x9 }, - 'wb_rgblevelsshade' => { 433 => 0x6, 463 => 0x7825 }, - 'wb_rgblevelstungsten' => { 463 => [0x7482,0x7822] }, - 'wb_rgblevelsunknown0' => { 434 => 0x0 }, - 'wb_rgblevelsunknown1' => { 434 => 0x3 }, - 'wb_rgblevelsunknown2' => { 434 => 0x6 }, - 'wb_rgblevelsunknown3' => { 434 => 0x9 }, - 'wb_rgblevelsunknown4' => { 434 => 0xc }, - 'wb_rgblevelsunknown5' => { 434 => 0xf }, - 'wb_rgblevelsunknown6' => { 434 => 0x12 }, - 'wb_rgblevelsunknown7' => { 434 => 0x15 }, - 'wb_rgblevelsunknown8' => { 434 => 0x18 }, - 'wb_rgblevelsunknown9' => { 434 => 0x1b }, + 'wb_rgblevels8500k' => { 465 => 0x782a }, + 'wb_rgblevelsauto' => { 435 => 0x0 }, + 'wb_rgblevelscloudy' => { 465 => [0x7481,0x7821] }, + 'wb_rgblevelscustom1' => { 435 => 0x15 }, + 'wb_rgblevelscustom2' => { 435 => 0x18 }, + 'wb_rgblevelscustom3' => { 435 => 0x1b }, + 'wb_rgblevelsdaylight' => { 435 => 0x3, 465 => [0x7480,0x7820] }, + 'wb_rgblevelsflash' => { 435 => 0x12, 465 => [0x7483,0x7823] }, + 'wb_rgblevelsfluorescent' => { 435 => 0xf, 465 => [0x7486,0x7826] }, + 'wb_rgblevelsfluorescentm1' => { 465 => 0x7829 }, + 'wb_rgblevelsfluorescentp1' => { 465 => 0x7827 }, + 'wb_rgblevelsfluorescentp2' => { 465 => 0x7828 }, + 'wb_rgblevelsincandescent' => { 435 => 0xc }, + 'wb_rgblevelsovercast' => { 435 => 0x9 }, + 'wb_rgblevelsshade' => { 435 => 0x6, 465 => 0x7825 }, + 'wb_rgblevelstungsten' => { 465 => [0x7482,0x7822] }, + 'wb_rgblevelsunknown0' => { 436 => 0x0 }, + 'wb_rgblevelsunknown1' => { 436 => 0x3 }, + 'wb_rgblevelsunknown2' => { 436 => 0x6 }, + 'wb_rgblevelsunknown3' => { 436 => 0x9 }, + 'wb_rgblevelsunknown4' => { 436 => 0xc }, + 'wb_rgblevelsunknown5' => { 436 => 0xf }, + 'wb_rgblevelsunknown6' => { 436 => 0x12 }, + 'wb_rgblevelsunknown7' => { 436 => 0x15 }, + 'wb_rgblevelsunknown8' => { 436 => 0x18 }, + 'wb_rgblevelsunknown9' => { 436 => 0x1b }, 'wb_rgbmuldaylight' => { 145 => 0x852 }, 'wb_rgbmulflash' => { 145 => 0x855 }, 'wb_rgbmulfluorescent' => { 145 => 0x854 }, 'wb_rgbmultungsten' => { 145 => 0x853 }, 'wb_rggbblacklevels' => { 38 => 0x25 }, - 'wb_rggblevels' => { 125 => 0x7313, 197 => 0x4, 209 => 0x0, 213 => 0x13e8, 214 => 0x38, 463 => 0x7313 }, + 'wb_rggblevels' => { 125 => 0x7313, 197 => 0x4, 209 => 0x0, 213 => 0x13e8, 214 => 0x38, 465 => 0x7313 }, 'wb_rggblevelsasshot' => { 41 => 0x0, 42 => 0x0, 43 => 0x19, 44 => 0x55, 45 => 0x69, 46 => 0x69, 47 => 0x22, 48 => 0x3f, 51 => 0x3f, 52 => 0x3f, 53 => 0x3f, 54 => 0x47 }, - 'wb_rggblevelsauto' => { 38 => 0x1, 41 => 0x5, 42 => 0x8, 43 => 0x1e, 44 => 0x5a, 45 => 0x6e, 47 => 0x18, 48 => 0x44, 51 => 0x44, 52 => 0x44, 53 => 0x44, 54 => 0x4c, 213 => 0x1478, 214 => 0x114, 429 => 0xa022, 463 => 0x7312 }, - 'wb_rggblevelsblack' => { 429 => 0xa028 }, + 'wb_rggblevelsauto' => { 38 => 0x1, 41 => 0x5, 42 => 0x8, 43 => 0x1e, 44 => 0x5a, 45 => 0x6e, 47 => 0x18, 48 => 0x44, 51 => 0x44, 52 => 0x44, 53 => 0x44, 54 => 0x4c, 213 => 0x1478, 214 => 0x114, 431 => 0xa022, 465 => 0x7312 }, + 'wb_rggblevelsblack' => { 431 => 0xa028 }, 'wb_rggblevelscloudy' => { 38 => 0xd, 41 => 0x1e, 42 => 0x30, 43 => 0x2d, 44 => 0xa0, 45 => 0xd7, 46 => 0x78, 47 => 0x31, 48 => 0x58, 51 => 0x71, 52 => 0x8a, 53 => 0x8f, 54 => 0x92, 213 => 0x1408, 214 => 0x60, 390 => 0x20f, 398 => 0x14 }, 'wb_rggblevelscustom' => { 38 => 0x1d, 48 => 0x80, 213 => 0x1468, 214 => 0x100 }, 'wb_rggblevelscustom1' => { 43 => 0x41 }, @@ -7448,8 +7451,8 @@ my %tagLookup = ( 'wb_rggblevelsfluorescentn' => { 214 => 0xb0, 390 => 0x212, 398 => 0x2f }, 'wb_rggblevelsfluorescentw' => { 213 => 0x1438, 214 => 0x9c, 390 => 0x213, 398 => 0x38 }, 'wb_rggblevelshtmercury' => { 214 => 0xd8 }, - 'wb_rggblevelsilluminator1' => { 429 => 0xa023 }, - 'wb_rggblevelsilluminator2' => { 429 => 0xa024 }, + 'wb_rggblevelsilluminator1' => { 431 => 0xa023 }, + 'wb_rggblevelsilluminator2' => { 431 => 0xa024 }, 'wb_rggblevelskelvin' => { 38 => 0x21, 41 => 0x2d, 42 => 0x48, 44 => 0xaf, 45 => 0xe6, 47 => 0x40, 48 => 0x67, 51 => 0x80, 52 => 0x99, 53 => 0x9e, 54 => 0xa1 }, 'wb_rggblevelsmeasured' => { 41 => 0xa, 42 => 0x10, 44 => 0x5f, 45 => 0x73, 48 => 0x49, 51 => 0x49, 52 => 0x49, 53 => 0x49, 54 => 0x51 }, 'wb_rggblevelspc1' => { 47 => 0x90, 48 => 0x71 }, @@ -7457,7 +7460,7 @@ my %tagLookup = ( 'wb_rggblevelspc3' => { 47 => 0x9a, 48 => 0x7b }, 'wb_rggblevelsshade' => { 38 => 0x9, 41 => 0x19, 42 => 0x28, 43 => 0x28, 44 => 0x9b, 45 => 0xd2, 46 => 0x73, 47 => 0x2c, 48 => 0x53, 51 => 0x6c, 52 => 0x85, 53 => 0x8a, 54 => 0x8d, 214 => 0x74, 390 => 0x20e, 398 => 0xb }, 'wb_rggblevelstungsten' => { 38 => 0x11, 41 => 0x23, 42 => 0x38, 43 => 0x32, 44 => 0xa5, 45 => 0xdc, 46 => 0x7d, 47 => 0x36, 48 => 0x5d, 51 => 0x76, 52 => 0x8f, 53 => 0x94, 54 => 0x97, 213 => 0x1428, 214 => 0x88, 390 => 0x210, 398 => 0x1d }, - 'wb_rggblevelsuncorrected' => { 429 => 0xa021 }, + 'wb_rggblevelsuncorrected' => { 431 => 0xa021 }, 'wb_rggblevelsunknown' => { 41 => 0xf, 42 => 0x18, 44 => 0x64, 45 => 0x78, 47 => 0x1d, 51 => 0x4e, 52 => 0x4e, 53 => 0x4e, 54 => 0x56, 398 => 0x53 }, 'wb_rggblevelsunknown10' => { 41 => 0x5f, 42 => 0x98, 44 => 0x91, 45 => 0xa5, 46 => 0xb4, 47 => 0x72, 51 => 0x9e, 52 => 0x7b, 53 => 0x7b, 54 => 0x83 }, 'wb_rggblevelsunknown11' => { 41 => 0x64, 42 => 0xa0, 44 => 0xb9, 45 => [0xaa,0xaf], 46 => 0xb9, 47 => 0x77, 51 => 0xa3, 52 => 0xa3, 53 => 0x80, 54 => 0xab }, @@ -7505,7 +7508,7 @@ my %tagLookup = ( 'wbbluelevel' => { 349 => 0x324, 354 => 0x8006, 359 => 0x26 }, 'wbbracketingsteps' => { 205 => 0x10, 206 => 0x10, 282 => 0x174d }, 'wbbracketmode' => { 61 => 0x9 }, - 'wbbracketshotnumber' => { 194 => 0x2b, 422 => 0x101a }, + 'wbbracketshotnumber' => { 194 => 0x2b, 424 => 0x101a }, 'wbbracketvalueab' => { 61 => 0xc }, 'wbbracketvaluegm' => { 61 => 0xd }, 'wbbutton' => { 250 => 0x806, 253 => 0x80a }, @@ -7519,8 +7522,8 @@ my %tagLookup = ( 'wbredlevel' => { 349 => 0x322, 354 => 0x8004, 359 => 0x24 }, 'wbscale' => { 197 => 0x0 }, 'wbshiftab' => { 79 => 0xc, 354 => 0x46, 371 => 0x10 }, - 'wbshiftab_gm' => { 456 => 0x2014 }, - 'wbshiftab_gm_precise' => { 456 => 0x2026 }, + 'wbshiftab_gm' => { 458 => 0x2014 }, + 'wbshiftab_gm_precise' => { 458 => 0x2026 }, 'wbshiftcreativecontrol' => { 354 => 0x92 }, 'wbshiftgm' => { 79 => 0xd, 354 => 0x47, 371 => 0x11 }, 'wbshiftintelligentauto' => { 354 => 0x8b }, @@ -7531,10 +7534,10 @@ my %tagLookup = ( 'wbtype5' => { 360 => 0xd, 361 => 0x11 }, 'wbtype6' => { 360 => 0x10, 361 => 0x15 }, 'wbtype7' => { 360 => 0x13, 361 => 0x19 }, - 'webstatement' => { 554 => 'WebStatement' }, - 'weightedflatsubject' => { 512 => 'weightedFlatSubject' }, - 'what' => { 521 => 'What', 523 => 'What' }, - 'whitebalance' => { 7 => 0x6f, 8 => [0x44,0x4a], 9 => 0xbc, 10 => 0x36, 11 => 0x5e, 12 => 0x36, 13 => 0x78, 14 => 0x6f, 15 => 0x6f, 16 => 0x73, 17 => 0x6f, 18 => 0x78, 19 => 0x54, 20 => 0x6f, 21 => 0xbc, 22 => 0x7b, 24 => 0xbc, 25 => 0xc2, 27 => 0x131, 28 => 0x77, 79 => 0x8, 82 => 0x7, 118 => 0x7, 119 => [0x19,0x2012], 125 => [0xa403,0xfe4e], 133 => 0x1002, 145 => 0x3fc, 146 => 0xfa0d, 147 => 0x40, 158 => 0x1a, 188 => 0x3, 189 => 0xe, 190 => 0x4, 191 => 0xb, 193 => 0x115, 243 => 0x5, 291 => 0x7, 349 => 0x304, 354 => 0x3, 356 => 0x3033, 390 => 0x19, 397 => 0x7, 421 => 0x26, 422 => 0x1003, 432 => [0x88,0x3c,0x7,0x58], 442 => 0xf, 443 => 0xe, 456 => [0x115,0xb054], 521 => 'WhiteBalance', 523 => 'WhiteBalance', 527 => 'WhiteBalance' }, + 'webstatement' => { 556 => 'WebStatement' }, + 'weightedflatsubject' => { 514 => 'weightedFlatSubject' }, + 'what' => { 523 => 'What', 525 => 'What' }, + 'whitebalance' => { 7 => 0x6f, 8 => [0x44,0x4a], 9 => 0xbc, 10 => 0x36, 11 => 0x5e, 12 => 0x36, 13 => 0x78, 14 => 0x6f, 15 => 0x6f, 16 => 0x73, 17 => 0x6f, 18 => 0x78, 19 => 0x54, 20 => 0x6f, 21 => 0xbc, 22 => 0x7b, 24 => 0xbc, 25 => 0xc2, 27 => 0x131, 28 => 0x77, 79 => 0x8, 82 => 0x7, 118 => 0x7, 119 => [0x19,0x2012], 125 => [0xa403,0xfe4e], 133 => 0x1002, 145 => 0x3fc, 146 => 0xfa0d, 147 => 0x40, 158 => 0x1a, 188 => 0x3, 189 => 0xe, 190 => 0x4, 191 => 0xb, 193 => 0x115, 243 => 0x5, 291 => 0x7, 349 => 0x304, 354 => 0x3, 356 => 0x3033, 390 => 0x19, 397 => 0x7, 423 => 0x26, 424 => 0x1003, 434 => [0x88,0x3c,0x7,0x58], 444 => 0xf, 445 => 0xe, 458 => [0x115,0xb054], 523 => 'WhiteBalance', 525 => 'WhiteBalance', 529 => 'WhiteBalance' }, 'whitebalance0' => { 183 => 'WhiteBalance0' }, 'whitebalance1' => { 183 => 'WhiteBalance1' }, 'whitebalance2' => { 183 => 'WhiteBalance2', 330 => 0x500 }, @@ -7543,81 +7546,81 @@ my %tagLookup = ( 'whitebalancebias' => { 119 => 0x2011, 335 => 0x304, 354 => 0x23 }, 'whitebalanceblue' => { 79 => 0x7 }, 'whitebalancebracket' => { 330 => 0x502, 335 => 0x303 }, - 'whitebalancebracketing' => { 191 => 0x22, 194 => 0x2c, 453 => 0x2c }, + 'whitebalancebracketing' => { 191 => 0x22, 194 => 0x2c, 455 => 0x2c }, 'whitebalancebuttonplaybackmode' => { 327 => 0x1c5, 328 => 0x1dd }, 'whitebalancecomp' => { 338 => 0x1001 }, 'whitebalancedetected' => { 145 => 0x3fb }, - 'whitebalancefinetune' => { 133 => 0x100a, 191 => 0x38, 193 => 0x112, 243 => [0xb,0x3f], 422 => 0x1004, 442 => 0x6, 443 => 0x5, 456 => 0x112 }, + 'whitebalancefinetune' => { 133 => 0x100a, 191 => 0x38, 193 => 0x112, 243 => [0xb,0x3f], 424 => 0x1004, 444 => 0x6, 445 => 0x5, 458 => 0x112 }, 'whitebalancemode' => { 145 => 0x3fa, 390 => 0x1a }, 'whitebalancered' => { 79 => 0x6 }, 'whitebalanceset' => { 370 => 0xa }, - 'whitebalancesetting' => { 191 => 0x23, 442 => 0x5, 443 => 0x4, 444 => 0x16, 461 => 0xd }, - 'whitebalancesetup' => { 429 => 0x41 }, + 'whitebalancesetting' => { 191 => 0x23, 444 => 0x5, 445 => 0x4, 446 => 0x16, 463 => 0xd }, + 'whitebalancesetup' => { 431 => 0x41 }, 'whitebalancetemperature' => { 330 => 0x501 }, 'whiteboard' => { 335 => 0x301 }, - 'whitelevel' => { 125 => 0xc61d, 390 => 0x7e, 463 => 0x787f }, - 'whitepoint' => { 125 => 0x13e, 353 => 0x35d, 390 => 0x201, 546 => 'WhitePoint' }, - 'whites2012' => { 521 => 'Whites2012', 523 => 'Whites2012' }, - 'whitesadj' => { 493 => 0x9017 }, - 'wideadapter' => { 422 => 0x1017 }, + 'whitelevel' => { 125 => 0xc61d, 390 => 0x7e, 465 => 0x787f }, + 'whitepoint' => { 125 => 0x13e, 353 => 0x35d, 390 => 0x201, 548 => 'WhitePoint' }, + 'whites2012' => { 523 => 'Whites2012', 525 => 'Whites2012' }, + 'whitesadj' => { 495 => 0x9017 }, + 'wideadapter' => { 424 => 0x1017 }, 'widefocuszone' => { 188 => 0x2f }, - 'widerange' => { 431 => 0x20f }, + 'widerange' => { 433 => 0x20f }, 'windmode' => { 145 => 0x3f4 }, 'windnoisereduction' => { 249 => 0x352, 250 => 0x352, 251 => 0x2d6, 252 => 0x2fe, 253 => 0x2fe }, - 'windowlocation' => { 415 => 'WLOC' }, - 'windowsatom' => { 522 => 'windowsAtom' }, - 'windowsatomextension' => { 522 => [\'windowsAtom','windowsAtomExtension'] }, - 'windowsatominvocationflags' => { 522 => [\'windowsAtom','windowsAtomInvocationFlags'] }, - 'windowsatomuncprojectpath' => { 522 => [\'windowsAtom','windowsAtomUncProjectPath'] }, - 'wordcount' => { 540 => 'wordCount' }, - 'work' => { 407 => "\xa9wrk" }, + 'windowlocation' => { 416 => 'WLOC' }, + 'windowsatom' => { 524 => 'windowsAtom' }, + 'windowsatomextension' => { 524 => [\'windowsAtom','windowsAtomExtension'] }, + 'windowsatominvocationflags' => { 524 => [\'windowsAtom','windowsAtomInvocationFlags'] }, + 'windowsatomuncprojectpath' => { 524 => [\'windowsAtom','windowsAtomUncProjectPath'] }, + 'wordcount' => { 542 => 'wordCount' }, + 'work' => { 408 => "\xa9wrk" }, 'workcolorspace' => { 109 => 0x10200, 114 => 0x270 }, - 'workflowtag' => { 535 => 'WorkflowTag' }, - 'workflowtagcvid' => { 535 => [\'WorkflowTag','WorkflowTagCvId'] }, - 'workflowtagcvtermid' => { 535 => [\'WorkflowTag','WorkflowTagCvTermId'] }, - 'workflowtagcvtermname' => { 535 => [\'WorkflowTag','WorkflowTagCvTermName'] }, - 'workflowtagcvtermrefinedabout' => { 535 => [\'WorkflowTag','WorkflowTagCvTermRefinedAbout'] }, - 'worktodo' => { 529 => 'WorkToDo' }, + 'workflowtag' => { 537 => 'WorkflowTag' }, + 'workflowtagcvid' => { 537 => [\'WorkflowTag','WorkflowTagCvId'] }, + 'workflowtagcvtermid' => { 537 => [\'WorkflowTag','WorkflowTagCvTermId'] }, + 'workflowtagcvtermname' => { 537 => [\'WorkflowTag','WorkflowTagCvTermName'] }, + 'workflowtagcvtermrefinedabout' => { 537 => [\'WorkflowTag','WorkflowTagCvTermRefinedAbout'] }, + 'worktodo' => { 531 => 'WorkToDo' }, 'worldtimelocation' => { 354 => 0x3a, 390 => 0x22, 396 => '0.1' }, 'writer' => { 186 => 'WM/Writer' }, 'writer-editor' => { 138 => 0x7a }, - 'x3filllight' => { 432 => 0x12 }, + 'x3filllight' => { 434 => 0x12 }, 'xattrmditemwherefroms' => { 181 => 'com.apple.metadata:kMDItemWhereFroms' }, 'xattrquarantine' => { 181 => 'com.apple.quarantine' }, - 'xiaomiexifinfo' => { 409 => 'xiaomi.exifInfo.videoinfo' }, - 'xiaomihdr10' => { 409 => 'com.xiaomi.hdr10' }, + 'xiaomiexifinfo' => { 410 => 'xiaomi.exifInfo.videoinfo' }, + 'xiaomihdr10' => { 410 => 'com.xiaomi.hdr10' }, 'xiaomimodel' => { 125 => 0x9a00 }, - 'xiaomipreviewvideocover' => { 409 => 'com.xiaomi.preview_video_cover' }, + 'xiaomipreviewvideocover' => { 410 => 'com.xiaomi.preview_video_cover' }, 'xiaomisettings' => { 125 => 0x9999 }, 'xilinxversion' => { 145 => 0x414 }, 'xml' => { 143 => 'xml ' }, 'xmp' => { 112 => 0xffff00f6, 126 => 'XMP', 136 => 'XMP Data/XMP' }, - 'xmptoolkit' => { 547 => 'xmptk' }, + 'xmptoolkit' => { 549 => 'xmptk' }, 'xpauthor' => { 125 => 0x9c9d }, 'xpcomment' => { 125 => 0x9c9c }, 'xpkeywords' => { 125 => 0x9c9e }, 'xposition' => { 125 => 0x11e }, 'xpsubject' => { 125 => 0x9c9f }, 'xptitle' => { 125 => 0x9c9b }, - 'xresolution' => { 125 => 0x11a, 141 => 0x3, 405 => 0x0, 546 => 'XResolution' }, + 'xresolution' => { 125 => 0x11a, 141 => 0x3, 405 => 0x0, 548 => 'XResolution' }, 'xyresolution' => { 129 => 0x3 }, - 'yaw' => { 121 => 0x7, 415 => ['_yaw',"\xa9fyw"] }, - 'yawangle' => { 258 => 0x8, 427 => 0x0 }, - 'ycbcrcoefficients' => { 125 => 0x211, 546 => 'YCbCrCoefficients' }, - 'ycbcrpositioning' => { 125 => 0x213, 546 => 'YCbCrPositioning' }, - 'ycbcrsubsampling' => { 125 => 0x212, 546 => 'YCbCrSubSampling' }, - 'year' => { 407 => 'yrrc', 409 => 'year', 415 => 'yrrc' }, + 'yaw' => { 121 => 0x7, 416 => ['_yaw',"\xa9fyw"] }, + 'yawangle' => { 258 => 0x8, 429 => 0x0 }, + 'ycbcrcoefficients' => { 125 => 0x211, 548 => 'YCbCrCoefficients' }, + 'ycbcrpositioning' => { 125 => 0x213, 548 => 'YCbCrPositioning' }, + 'ycbcrsubsampling' => { 125 => 0x212, 548 => 'YCbCrSubSampling' }, + 'year' => { 408 => 'yrrc', 410 => 'year', 416 => 'yrrc' }, 'yearcreated' => { 147 => 0x10, 156 => 0xc }, 'yellowhsl' => { 109 => 0x20912 }, - 'yield' => { 542 => 'yield' }, + 'yield' => { 544 => 'yield' }, 'yposition' => { 125 => 0x11f }, - 'yresolution' => { 125 => 0x11b, 141 => 0x5, 405 => 0x4, 546 => 'YResolution' }, + 'yresolution' => { 125 => 0x11b, 141 => 0x5, 405 => 0x4, 548 => 'YResolution' }, 'zebrapatterntonerange' => { 326 => 0x211, 327 => 0x211, 328 => 0x229 }, 'zoneidentifier' => { 126 => 'ZoneIdentifier' }, - 'zonematching' => { 193 => 0x10a, 196 => [0x3a,0x4a], 456 => 0xb024 }, + 'zonematching' => { 193 => 0x10a, 196 => [0x3a,0x4a], 458 => 0xb024 }, 'zonematchingmode' => { 191 => 0x14 }, 'zonematchingon' => { 190 => 0x75 }, - 'zonematchingvalue' => { 442 => 0x1f }, + 'zonematchingvalue' => { 444 => 0x1f }, 'zoomedpreviewlength' => { 335 => 0xf05 }, 'zoomedpreviewsize' => { 335 => 0xf06 }, 'zoomedpreviewstart' => { 335 => 0xf04 }, @@ -7780,6 +7783,7 @@ my %tagExists = ( 'alphafiltering' => 1, 'alphaidentifiers' => 1, 'alphainterlace' => 1, + 'alphaisused' => 1, 'alphamask' => 1, 'alphaoffset' => 1, 'alphapreprocessing' => 1, @@ -7931,6 +7935,7 @@ my %tagExists = ( 'audioinfo' => 1, 'audioinputbuffersize' => 1, 'audioisinitialized' => 1, + 'audiokeys' => 1, 'audiolayer' => 1, 'audiolevel' => 1, 'audiomaxbitrate' => 1, @@ -8731,6 +8736,7 @@ my %tagExists = ( 'convergencebaseimage' => 1, 'convergencedistance' => 1, 'conversationid' => 1, + 'coordinateunits' => 1, 'coproducer' => 1, 'copyrightfilename' => 1, 'copyrightlen' => 1, @@ -9296,6 +9302,7 @@ my %tagExists = ( 'events' => 1, 'eventstarttime' => 1, 'evstepinfo' => 1, + 'exefilename' => 1, 'exif_profile' => 1, 'exifdata' => 1, 'exifex' => 1, @@ -9871,6 +9878,7 @@ my %tagExists = ( 'hdrgaincurve' => 1, 'hdrgainmap' => 1, 'hdrgm' => 1, + 'hdrimage' => 1, 'hdrinfo' => 1, 'hdrinfo2' => 1, 'hdrinfoversion' => 1, @@ -10257,6 +10265,7 @@ my %tagExists = ( 'jpsseparation' => 1, 'jpstype' => 1, 'jsondata' => 1, + 'jsoninfo' => 1, 'jsonmetadata' => 1, 'jumbf' => 1, 'jumbfbox' => 1, @@ -10547,6 +10556,7 @@ my %tagExists = ( 'magmode' => 1, 'magneticfield' => 1, 'magneticheading' => 1, + 'magneticvariation' => 1, 'magnetometer' => 1, 'magnetometerxyz' => 1, 'magnification' => 1, @@ -11341,6 +11351,10 @@ my %tagExists = ( 'paymenturl' => 1, 'pcscitation' => 1, 'pdahistogram' => 1, + 'pdbage' => 1, + 'pdbcreatedate' => 1, + 'pdbfilename' => 1, + 'pdbmodifydate' => 1, 'pdf' => 1, 'pdfx' => 1, 'pdrversion' => 1, @@ -12141,6 +12155,7 @@ my %tagExists = ( 'sequencenumberrandomoffset' => 1, 'sequenceoffset' => 1, 'serialinfo' => 1, + 'serialnumber2' => 1, 'seriesuid' => 1, 'serviceid' => 1, 'serviceorganizationname' => 1, @@ -12816,8 +12831,6 @@ my %tagExists = ( 'unknown03' => 1, 'unknown_cndb' => 1, 'unknown_grpl' => 1, - 'unknown_h' => 1, - 'unknown_m' => 1, 'unknown_slmt' => 1, 'unknownd30' => 1, 'unknowndata' => 1, @@ -12955,6 +12968,7 @@ my %tagExists = ( 'videofullrangeflag' => 1, 'videoheader' => 1, 'videoheight' => 1, + 'videokeys' => 1, 'videolength' => 1, 'videomaxbitrate' => 1, 'videomaxframerate' => 1, @@ -12992,6 +13006,7 @@ my %tagExists = ( 'visibleoutputs' => 1, 'vistaidlistdata' => 1, 'visualflightruleshud' => 1, + 'vivo' => 1, 'vmaphandling' => 1, 'vmcoldropthresh' => 1, 'vmcolthresh' => 1, @@ -13509,7 +13524,7 @@ Provides a fast, case insensitive lookup for tag names. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagNames.pod b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagNames.pod index f97ccdc..cb83d4d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagNames.pod +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/TagNames.pod @@ -12,7 +12,7 @@ meta information extracted from or written to a file. =head1 TAG TABLES The tables listed below give the names of all tags recognized by ExifTool. -They contain a total of 28224 tags, with 17515 unique tag names. +They contain a total of 28259 tags, with 17525 unique tag names. B<Tag ID>, B<Index#> or B<Sequence> is given in the first column of each table. A B<Tag ID> is the computer-readable equivalent of a tag name, and @@ -171,6 +171,7 @@ L<https://www.w3.org/Graphics/JPEG/jfif3.pdf> for the JPEG specification. PhotoMechanic PhotoMechanic MIE MIE Samsung Samsung Trailer + Vivo Vivo EmbeddedVideo no Insta360 no NikonApp no @@ -7431,6 +7432,7 @@ These tags are used in Panasonic/Leica cameras. 0x00d6 NoiseReductionStrength rational64s 0x00e4 LensTypeModel int16u 0x00e8 MinimumISO int32u + 0x00e9 AFSubjectDetection int16u 0x00ee DynamicRangeBoost int16u 0x0e00 PrintIM PrintIM 0x2003 TimeInfo Panasonic TimeInfo @@ -12971,32 +12973,72 @@ Thermal parameters extracted from APP4 of some DJI RJPEG files. =head3 DJI Protobuf Tags -Tags found in protobuf-format DJI meta djmd and dbgi timed metadata. Only a -few tags are currently known, but unknown djmd tags may be extracted by -setting the Unknown option to 1 (or 2 to also extract unknown dbgi debug -tags). Tag ID's are composed of the corresponding .proto file name combined -with the hierarchical protobuf field numbers. The "dvtm_AVATA2.proto" file -is used by the DJI Avanta 2, and "dvtm_ac203.proto" by the OsmoAction4. +Tags found in protobuf-format DJI djmd and dbgi timed metadata. The known +tags listed below are extracted by default, but unknown djmd tags may be +extracted as well by setting the Unknown option to 1, or 2 to also extract +unknown dbgi debug tags. Tag ID's are composed of the corresponding .proto +file name combined with the hierarchical protobuf field numbers. - Tag ID Tag Name Writable - ------ -------- -------- - 'Protocol' Protocol no - 'dvtm_AVATA2_1-1-10' Model no - 'dvtm_AVATA2_2-2-3-1' SerialNumber no - 'dvtm_AVATA2_2-3-1' FrameWidth no - 'dvtm_AVATA2_2-3-2' FrameHeight no - 'dvtm_AVATA2_2-3-3' FrameRate no - 'dvtm_AVATA2_3-1-2' TimeStamp no - 'dvtm_AVATA2_3-4-4-1-2' GPSLatitude no - 'dvtm_AVATA2_3-4-4-1-3' GPSLongitude no - 'dvtm_ac203_1-1-10' Model no - 'dvtm_ac203_2-3-1' FrameWidth no - 'dvtm_ac203_2-3-2' FrameHeight no - 'dvtm_ac203_2-3-3' FrameRate no - 'dvtm_ac203_3-4-2-1-2' GPSLatitude no - 'dvtm_ac203_3-4-2-1-3' GPSLongitude no - 'dvtm_ac203_3-4-2-2' GPSAltitude no - 'dvtm_ac203_3-4-2-6-1' GPSDateTime no +ExifTool currently extracts timed GPS plus a few other tags from DJI devices +which use the following protocols: dvtm_AVATA2.proto (Avanta 2), +dvtm_ac203.proto (Osmo Action 4), dvtm_ac204.proto (Osmo Action 5) and +dvtm_wm265e.proto (Mavic 3). + +Note that with the protobuf format, numerical tags missing from the output +for a given protocol should be considered to have the default value of 0. + + Tag ID Tag Name Writable + ------ -------- -------- + 'Protocol' Protocol no + 'dvtm_AVATA2_1-1-5' SerialNumber no + 'dvtm_AVATA2_1-1-10' Model no + 'dvtm_AVATA2_2-2-3-1' SerialNumber2 no + 'dvtm_AVATA2_2-3' FrameInfo DJI FrameInfo + 'dvtm_AVATA2_3-1-2' TimeStamp no + 'dvtm_AVATA2_3-4-4-1' GPSInfo DJI GPSInfo + 'dvtm_ac203_1-1-5' SerialNumber no + 'dvtm_ac203_1-1-10' Model no + 'dvtm_ac203_2-3' FrameInfo DJI FrameInfo + 'dvtm_ac203_3-4-2-1' GPSInfo DJI GPSInfo + 'dvtm_ac203_3-4-2-2' GPSAltitude no + 'dvtm_ac203_3-4-2-6-1' GPSDateTime no + 'dvtm_ac204_1-1-5' SerialNumber no + 'dvtm_ac204_1-1-10' Model no + 'dvtm_ac204_2-3' FrameInfo DJI FrameInfo + 'dvtm_ac204_3-4-2-1' GPSInfo DJI GPSInfo + 'dvtm_ac204_3-4-2-2' GPSAltitude no + 'dvtm_ac204_3-4-2-6-1' GPSDateTime no + 'dvtm_wm265e_1-1-5' SerialNumber no + 'dvtm_wm265e_1-1-10' Model no + 'dvtm_wm265e_2-2' FrameInfo DJI FrameInfo + 'dvtm_wm265e_3-2-2-1' ISO no + 'dvtm_wm265e_3-2-3-1' ShutterSpeed no + 'dvtm_wm265e_3-2-6-1' DigitalZoom no + 'dvtm_wm265e_3-3-3-1' DroneRoll no + 'dvtm_wm265e_3-3-3-2' DronePitch no + 'dvtm_wm265e_3-3-3-3' DroneYaw no + 'dvtm_wm265e_3-3-4-1' GPSInfo DJI GPSInfo + 'dvtm_wm265e_3-3-4-2' AbsoluteAltitude no + 'dvtm_wm265e_3-3-5-1' RelativeAltitude no + 'dvtm_wm265e_3-4-3-1' GimbalPitch no + 'dvtm_wm265e_3-4-3-2' GimbalRoll no + 'dvtm_wm265e_3-4-3-3' GimbalYaw no + +=head3 DJI FrameInfo Tags + + Tag ID Tag Name Writable + ------ -------- -------- + 1 FrameWidth no + 2 FrameHeight no + 3 FrameRate no + +=head3 DJI GPSInfo Tags + + Tag ID Tag Name Writable + ------ -------- -------- + 1 CoordinateUnits no + 2 GPSLatitude no + 3 GPSLongitude no =head2 FLIR Tags @@ -17879,17 +17921,20 @@ These tags are used by the D4S, D750, D810, D5500, D7200 (FlashInfoVersion =head3 Nikon AFInfo2V0400 Tags +AF information for Nikon cameras with the Expeed 7 processor: The Zf, Z6_3, +Z8, Z9 and Z50_3. + Index1 Tag Name Writable ------ -------- -------- 0 AFInfo2Version no 5 AFAreaMode int8u 10 AFPointsUsed undef[51] + AFPointsUsed undef[35] + AFPointsUsed undef[27] 62 AFImageWidth int16u 64 AFImageHeight int16u 66 AFAreaXPosition int16u - 67 FocusPositionHorizontal int8u~ 68 AFAreaYPosition int16u - 69 FocusPositionVertical int8u~ 70 AFAreaWidth int16u 72 AFAreaHeight int16u 74 FocusResult int8u @@ -23657,6 +23702,16 @@ Tags written by the Sony Image Data Converter utility in ARW images. 0xd100 VersionCreateDate string 0xd101 VersionModifyDate string +=head2 Vivo Tags + +Proprietary information written by some Vivo phones. + + Tag Name Writable + -------- -------- + HDRImage no + HiddenData no + JSONInfo no + =head2 Unknown Tags The following tags are decoded in unsupported maker notes. Use the Unknown @@ -29945,15 +30000,16 @@ appropriate table in the config file (see example.config in the full distribution for an example). Note that some tags with the same name but different ID's may exist in the same location, but the family 7 group names may be used to -differentiate these. ExifTool currently writes only top-level metadata in -QuickTime-based files; it extracts other track-specific and timed metadata, -but can not yet edit tags in these locations (with the exception of -track-level date/time tags). +differentiate these. -Beware that the Keys tags are actually stored inside the ItemList in the -file, so deleting the ItemList group as a block (ie. C<-ItemList:all=>) also -deletes Keys tags. Instead, to preserve Keys tags the ItemList tags may be -deleted individually with C<-QuickTime:ItemList:all=>. +ExifTool currently writes +L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and +L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> only as +top-level metadata, but select Keys tags are may be written to the audio or +video track. See the +L<AudioKeys|Image::ExifTool::TagNames/QuickTime AudioKeys Tags> and +L<VideoKeys|Image::ExifTool::TagNames/QuickTime VideoKeys Tags> tags for +more information. Alternate language tags may be accessed for L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and @@ -29965,8 +30021,8 @@ L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> tags support a language code, but without a country code. If no language code is specified when writing, the default language is written and alternate languages for the tag are deleted. Use the "und" language code to write the default -language without deleting alternate languages. Note that "eng" is treated -as a default language when reading, but not when writing. +language without deleting alternate languages. Note that when reading, +"eng" is also treated as the default language if there is no country code. According to the specification, integer-format QuickTime date/time tags should be stored as UTC. Unfortunately, digital cameras often store local @@ -30051,7 +30107,7 @@ for the official QuickTime specification. The tags below are extracted from timed metadata in QuickTime and other formats of video files when the ExtractEmbedded option is used. Although most of these tags are combined into the single table below, ExifTool -currently reads 96 different types of timed GPS metadata from video files. +currently reads 100 different types of timed GPS metadata from video files. Tag Name Writable -------- -------- @@ -30089,6 +30145,7 @@ currently reads 96 different types of timed GPS metadata from video files. ISO no JpgFromRaw no KiloCalories no + MagneticVariation no PreviewImage no PreviewInfo QuickTime PreviewInfo RVMI_gReV QuickTime RVMI_gReV @@ -30103,8 +30160,6 @@ currently reads 96 different types of timed GPS metadata from video files. Unknown01? no Unknown02? no Unknown03? no - Unknown_H? no - Unknown_M? no UserLabel no VerticalSpeed no VideoTimeStamp no @@ -30255,15 +30310,11 @@ changed via the config file. 'artist' Artist yes 'artwork' Artwork yes 'author' Author yes - 'camera.framereadouttimeinmicroseconds' - FrameReadoutTime yes - 'camera.identifier' CameraIdentifier yes 'collection.user' UserCollection yes 'com.android.capture.fps' AndroidCaptureFPS float 'com.android.manufacturer' AndroidMake yes 'com.android.model' AndroidModel yes 'com.android.version' AndroidVersion yes - 'com.apple.photos.captureMode' CaptureMode yes 'com.xiaomi.hdr10' XiaomiHDR10 int32s 'com.xiaomi.preview_video_cover' XiaomiPreviewVideoCover int32s @@ -30332,6 +30383,35 @@ changed via the config file. 'xiaomi.exifInfo.videoinfo' XiaomiExifInfo yes 'year' Year yes +=head3 QuickTime AudioKeys Tags + +Keys tags written in the audio track by some Apple devices. These tags +belong to the ExifTool AudioKeys family 1 gorup. + + Tag ID Tag Name Writable + ------ -------- -------- + 'player.movie.audio.balance' Balance yes + 'player.movie.audio.bass' Bass yes + 'player.movie.audio.gain' AudioGain yes + 'player.movie.audio.mute' Mute int8u + 'player.movie.audio.pitchshift' PitchShift yes + 'player.movie.audio.treble' Treble yes + +=head3 QuickTime VideoKeys Tags + +Keys tags written in the video track. These tags belong to the ExifTool +VideoKeys family 1 gorup. + + Tag ID Tag Name Writable + ------ -------- -------- + 'camera.focal_length.35mm_equivalent' + FocalLengthIn35mmFormat yes + 'camera.framereadouttimeinmicroseconds' + FrameReadoutTime yes + 'camera.identifier' CameraIdentifier yes + 'camera.lens_model' LensModel yes + 'com.apple.photos.captureMode' CaptureMode yes + =head3 QuickTime FaceInfo Tags Tag ID Tag Name Writable @@ -30431,7 +30511,9 @@ Tags found in Pittasoft Blackvue dashcam "free" data. 'ipro' ItemProtection? no 'iprp' ItemProperties QuickTime ItemProp 'iref' ItemReference QuickTime ItemRef - 'keys' Keys QuickTime Keys + 'keys' AudioKeys QuickTime AudioKeys + VideoKeys QuickTime VideoKeys + Keys QuickTime Keys 'pitm' PrimaryItemReference no 'uuid' MetaVersion no UUID-Unknown? no @@ -32099,6 +32181,7 @@ This chunk is found in lossless WebP files. ------ -------- -------- 1 ImageWidth no 2 ImageHeight no + 4 AlphaIsUsed no =head3 RIFF VP8X Tags @@ -33488,10 +33571,10 @@ L<https://www.matroska.org/technical/tagging.html>). 'GENRE' Genre no 'IMDB' IMDB no 'INITIAL_KEY' InitialKey no - 'INSTRUMENTS' Instruments no + 'INSTRUMENTS' Instruments no+ 'ISBN' ISBN no 'ISRC' ISRC no - 'KEYWORDS' Keywords no + 'KEYWORDS' Keywords no+ 'LABEL' Label no 'LABEL_CODE' LabelCode no 'LAW_RATING' LawRating no @@ -39660,6 +39743,35 @@ existing StringFileInfo tags even if not listed in this table. ProductVersion no SpecialBuild no +=head3 EXE DebugRSDS Tags + +CodeView RSDS debug information found in some Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 0 PDBModifyDate no + 20 PDBAge no + 24 PDBFileName no + +=head3 EXE DebugNB10 Tags + +CodeView NB10 debug information found in some Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 0 PDBModifyDate no + 8 PDBCreateDate no + 12 PDBAge no + 16 PDBFileName no + +=head3 EXE Misc Tags + +Miscellaneous CodeView debug information in Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 12 EXEFileName no + =head3 EXE MachO Tags Information extracted from Mach-O (Mac OS X) executable files and DYLIB @@ -41513,7 +41625,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Text.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Text.pm index 0163e20..152eccd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Text.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Text.pm @@ -222,7 +222,7 @@ characteristics of TXT and CSV files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Theora.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Theora.pm index ff121bc..df8d2d8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Theora.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Theora.pm @@ -122,7 +122,7 @@ information from Theora video streams. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Torrent.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Torrent.pm index ca3eb1d..682a428 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Torrent.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Torrent.pm @@ -14,7 +14,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.06'; +$VERSION = '1.07'; sub ReadBencode($$$); sub ExtractTags($$$;$$@); @@ -282,7 +282,7 @@ sub ProcessTorrent($$) my $dict = ReadBencode($et, $raf, \$buff); my $err = $$raf{BencodeError}; $et->Warn("Bencode error: $err") if $err; - if (ref $dict eq 'HASH' and ($$dict{announce} or $$dict{'created by'})) { + if (ref $dict eq 'HASH' and ($$dict{announce} or $$dict{'created by'} or $$dict{info})) { $et->SetFileType(); my $tagTablePtr = GetTagTable('Image::ExifTool::Torrent::Main'); ExtractTags($et, $dict, $tagTablePtr) and $success = 1; @@ -309,7 +309,7 @@ bencoded information from BitTorrent files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Unknown.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Unknown.pm index 4439289..eaa4c39 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Unknown.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Unknown.pm @@ -53,7 +53,7 @@ unknown manufacturers. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/VCard.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/VCard.pm index 29574e2..4f19126 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/VCard.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/VCard.pm @@ -430,7 +430,7 @@ information from vCard VCF and iCalendar ICS files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Validate.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Validate.pm index fd17369..ec63f84 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Validate.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Validate.pm @@ -678,7 +678,7 @@ ExifTool Validate option is enabled. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vivo.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vivo.pm new file mode 100644 index 0000000..09be2dd --- /dev/null +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vivo.pm @@ -0,0 +1,124 @@ +#------------------------------------------------------------------------------ +# File: Vivo.pm +# +# Description: Read trailer written by Vivo phones +# +# Revisions: 2025-01-13 - P. Harvey Created +#------------------------------------------------------------------------------ + +package Image::ExifTool::Vivo; + +use strict; +use vars qw($VERSION); +use Image::ExifTool qw(:DataAccess :Utils); +use Image::ExifTool::XMP; + +$VERSION = '1.00'; + +%Image::ExifTool::Vivo::Main = ( + GROUPS => { 0 => 'Trailer', 1 => 'Vivo', 2 => 'Image' }, + VARS => { NO_ID => 1 }, + NOTES => 'Proprietary information written by some Vivo phones.', + # (don't know for sure what type of image this is, but it is in JPEG format) + HDRImage => { + Notes => 'highlights of HDR image', + Groups => { 2 => 'Preview' }, + Binary => 1, + }, + JSONInfo => { }, + HiddenData => { + Notes => 'hidden in EXIF, not in trailer. This data is lost if the file is edited', + Groups => { 0 => 'EXIF' }, + }, +); + +#------------------------------------------------------------------------------ +# Process Vivo trailer +# Inputs: 0) ExifTool object reference, 1) dirInfo reference +# Returns: 1 on success, -1 if we must scan for the start of the trailer +# - takes Offset as positive offset from end of trailer to end of file, +# and returns DataPos and DirLen, and updates OutFile when writing +sub ProcessVivo($$) +{ + my ($et, $dirInfo) = @_; + my $raf = $$dirInfo{RAF}; + my $buff; + + # return now unless we are at a position to scan for the trailer + # (must scan because the trailer footer doesn't indicate the trailer length) + return -1 unless $$dirInfo{ScanForTrailer}; + + my $pos = $raf->Tell(); + $raf->Seek(0, 2) or return 0; + my $len = $raf->Tell() - $pos - $$dirInfo{Offset}; + $raf->Seek($pos, 0) or return 0; + return 0 unless $len > 0 and $len < 1e7 and $raf->Read($buff, $len) == $len and + $buff =~ /\xff{4}\x1b\*9HWfu\x84\x93\xa2\xb1$/ and # validate footer + $buff =~ /(streamdata|vivo\{")/g; # find start + my $start = pos($buff) - length($1); + if ($start) { + $pos += $start; + $len -= $start; + $buff = substr($buff, $start); + } + # set trailer position and length + @$dirInfo{'DataPos','DirLen'} = ($pos, $len); + + if ($$dirInfo{OutFile}) { + if ($$et{DEL_GROUP}{Vivo}) { + $et->VPrint(0, " Deleting Vivo trailer ($len bytes)\n"); + ++$$et{CHANGED}; + } else { + $et->VPrint(0, " Copying Vivo trailer ($len bytes)\n"); + Write($$dirInfo{OutFile}, $buff); + } + } else { + $et->DumpTrailer($dirInfo) if $$et{OPTIONS}{Verbose} or $$et{HTML_DUMP}; + my $tbl = GetTagTable('Image::ExifTool::Vivo::Main'); + pos($buff) = 0; # rewind search to start of buffer + if ($buff =~ /^streamdata\xff\xd8\xff/ and $buff =~ /\xff\xd9stream(info|coun)/g) { + $et->HandleTag($tbl, HDRImage => substr($buff, 10, pos($buff)-20)); + } + # continue looking for Vivo JSON data + if ($buff =~ /vivo\{"/g) { + my $jsonStart = pos($buff) - 2; + if ($buff =~ /\}\0/g) { + my $jsonLen = pos($buff) - 1 - $jsonStart; + $et->HandleTag($tbl, JSONInfo => substr($buff, $jsonStart, $jsonLen)); + } + } + } + return 1; +} + +1; # end + +__END__ + +=head1 NAME + +Image::ExifTool::Vivo - Read trailer written by Vivo phones + +=head1 SYNOPSIS + +This module is used by Image::ExifTool + +=head1 DESCRIPTION + +This module contains definitions required by Image::ExifTool to read +metadata the trailer written by some Vivo phones. + +=head1 AUTHOR + +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) + +This library is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. + +=head1 SEE ALSO + +L<Image::ExifTool::TagNames/Vivo Tags>, +L<Image::ExifTool(3pm)|Image::ExifTool> + +=cut + diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vorbis.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vorbis.pm index 5370981..d6df416 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vorbis.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Vorbis.pm @@ -228,7 +228,7 @@ information from Ogg Vorbis audio headers. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WPG.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WPG.pm index 2837382..2546b78 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WPG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WPG.pm @@ -271,7 +271,7 @@ This module contains definitions required by Image::ExifTool to read WPG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WTV.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WTV.pm index 3f879b2..0e49d93 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WTV.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WTV.pm @@ -297,7 +297,7 @@ This module contains definitions required by Image::ExifTool to read WTV =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteCanonRaw.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteCanonRaw.pl index cf17f77..adb28d3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteCanonRaw.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteCanonRaw.pl @@ -630,7 +630,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteExif.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteExif.pl index d639dd6..da335c8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteExif.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteExif.pl @@ -2725,7 +2725,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteIPTC.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteIPTC.pl index 3fcfa02..7ee18e2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteIPTC.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteIPTC.pl @@ -711,7 +711,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePDF.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePDF.pl index 30b00f0..c0de381 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePDF.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePDF.pl @@ -779,7 +779,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePNG.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePNG.pl index 8fd9d80..7fc47cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePNG.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePNG.pl @@ -401,7 +401,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePhotoshop.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePhotoshop.pl index 8df0110..f50eac9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePhotoshop.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePhotoshop.pl @@ -257,7 +257,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePostScript.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePostScript.pl index 7b0c0ea..ff0bce5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePostScript.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WritePostScript.pl @@ -687,7 +687,7 @@ =head1 ACKNOWLEDGEMENTS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteQuickTime.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteQuickTime.pl index ead12ec..f339a86 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteQuickTime.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteQuickTime.pl @@ -15,6 +15,8 @@ package Image::ExifTool::QuickTime; QuickTime => 'ItemList', # (default location for QuickTime tags) ItemList => 'Meta', # MOV-Movie-UserData-Meta-ItemList Keys => 'Movie', # MOV-Movie-Meta-Keys !! (hack due to different Meta location) + AudioKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! + VideoKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! Meta => 'UserData', XMP => 'UserData', # MOV-Movie-UserData-XMP Microsoft => 'UserData', # MOV-Movie-UserData-Microsoft @@ -29,6 +31,8 @@ package Image::ExifTool::QuickTime; QuickTime => 'ItemList', # (default location for QuickTime tags) ItemList => 'Meta', # MOV-Movie-UserData-Meta-ItemList Keys => 'Movie', # MOV-Movie-Meta-Keys !! (hack due to different Meta location) + AudioKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! + VideoKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! Meta => 'UserData', UserData => 'Movie', # MOV-Movie-UserData Microsoft => 'UserData', # MOV-Movie-UserData-Microsoft @@ -374,6 +378,9 @@ ($$$) # Write Meta Keys to add/delete entries as necessary ('mdta' handler) (ref PH) # Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref # Returns: updated keys box data +# Note: Residual entries may be left in the 'keys' directory when deleting tags +# with language codes because the language code(s) are not known until the +# corresponding ItemList entry(s) are processed sub WriteKeys($$$) { my ($et, $dirInfo, $tagTablePtr) = @_; @@ -383,13 +390,14 @@ ($$$) my $outfile = $$dirInfo{OutFile}; my ($tag, %done, %remap, %info, %add, $i); + my $keysGrp = $avType{$$et{MediaType}} ? "$avType{$$et{MediaType}}Keys" : 'Keys'; $dirLen < 8 and $et->Warn('Short Keys box'), $dirLen = 8, $$dataPt = "\0" x 8; - if ($$et{DEL_GROUP}{Keys}) { + if ($$et{DEL_GROUP}{$keysGrp}) { $dirLen = 8; # delete all existing keys # deleted keys are identified by a zero entry in the Remap lookup my $n = Get32u($dataPt, 4); for ($i=1; $i<=$n; ++$i) { $remap{$i} = 0; } - $et->VPrint(0, " [deleting $n Keys entr".($n==1 ? 'y' : 'ies')."]\n"); + $et->VPrint(0, " [deleting $n $keysGrp entr".($n==1 ? 'y' : 'ies')."]\n"); ++$$et{CHANGED}; } my $pos = 8; @@ -425,7 +433,7 @@ ($$$) } unless ($dontDelete) { # delete this key - $et->VPrint(1, "$$et{INDENT}\[deleting Keys entry $index '${tag}']\n"); + $et->VPrint(1, "$$et{INDENT}\[deleting $keysGrp entry $index '${tag}']\n"); $pos += $len; $remap{$index++} = 0; ++$$et{CHANGED}; @@ -455,7 +463,7 @@ ($$$) # add new entry to 'keys' data my $val = $id =~ /^com\./ ? $id : "com.apple.quicktime.$id"; $newData .= Set32u(8 + length($val)) . 'mdta' . $val; - $et->VPrint(1, "$$et{INDENT}\[adding Keys entry $newIndex '${id}']\n"); + $et->VPrint(1, "$$et{INDENT}\[adding $keysGrp entry $newIndex '${id}']\n"); $add{$newIndex++} = $tagInfo; ++$$et{CHANGED}; } @@ -470,7 +478,7 @@ ($$$) # Info - Keys tag information, based on old index value # Add - Keys items deleted, based on old index value # Num - Number of items in edited Keys box - $$et{Keys} = { Remap => \%remap, Info => \%info, Add => \%add, Num => $num }; + $$et{$keysGrp} = { Remap => \%remap, Info => \%info, Add => \%add, Num => $num }; return $newData; # return updated Keys box } @@ -556,6 +564,7 @@ ($$$) } } my ($hdr, $subTable, $proc); + my $strt = 0; if ($name eq 'EXIF') { if (not length $buff) { # create EXIF from scratch @@ -565,6 +574,7 @@ ($$$) $hdr = ''; } elsif (length($buff) >= 4 and length($buff) >= 4 + unpack('N',$buff)) { $hdr = substr($buff, 0, 4 + unpack('N',$buff)); + $strt = length $hdr; } else { $et->Warn('Invalid Exif header'); next; @@ -578,8 +588,8 @@ ($$$) my %dirInfo = ( DataPt => \$buff, DataLen => length $buff, - DirStart => length $hdr, - DirLen => length($buff) - length $hdr, + DirStart => $strt, + DirLen => length($buff) - $strt, ); my $changed = $$et{CHANGED}; my $newVal = $et->WriteDirectory(\%dirInfo, $subTable, $proc); @@ -881,7 +891,7 @@ ($$$) $et or return 1; # allow dummy access to autoload this package my ($mdat, @mdat, @mdatEdit, $edit, $track, $outBuff, $co, $term, $delCount); my (%langTags, $canCreate, $delGrp, %boxPos, %didDir, $writeLast, $err, $atomCount); - my ($tag, $lastTag, $lastPos, $errStr, $trailer, $buf2); + my ($tag, $lastTag, $lastPos, $errStr, $trailer, $buf2, $keysGrp, $keysPath); my $outfile = $$dirInfo{OutFile} || return 0; my $raf = $$dirInfo{RAF}; # (will be null for lower-level atoms) my $dataPt = $$dirInfo{DataPt}; # (will be null for top-level atoms) @@ -915,15 +925,26 @@ ($$$) $raf->Seek($dirStart, 1) if $dirStart; # skip header if it exists + if ($avType{$$et{MediaType}}) { + # (note: these won't be correct now if we haven't yet processed the Media box, + # but in this case they won't be needed until after we set them properly below) + ($keysGrp, $keysPath) = ("$avType{$$et{MediaType}}Keys", 'MOV-Movie-Track'); + } else { + ($keysGrp, $keysPath) = ('Keys', 'MOV-Movie'); + } my $curPath = join '-', @{$$et{PATH}}; my ($dir, $writePath) = ($dirName, $dirName); $writePath = "$dir-$writePath" while defined($dir = $$et{DirMap}{$dir}); # hack to create Keys directories if necessary (its containing Meta is in a different location) - if ($$addDirs{Keys} and $curPath =~ /^MOV-Movie(-Meta)?$/) { + if (($$addDirs{Keys} and $curPath =~ /^MOV-Movie(-Meta)?$/)) { $createKeys = 1; # create new Keys directories - } elsif ($curPath eq 'MOV-Movie-Meta-ItemList') { + } elsif (($$addDirs{AudioKeys} or $$addDirs{VideoKeys}) and $curPath =~ /^MOV-Movie-Track(-Meta)?$/) { + $createKeys = -1; # (must wait until MediaType is known) + } elsif (($curPath eq 'MOV-Movie-Meta-ItemList') or + ($curPath eq 'MOV-Movie-Track-Meta-ItemList' and $avType{$$et{MediaType}})) + { $createKeys = 2; # create new Keys tags - my $keys = $$et{Keys}; + my $keys = $$et{$keysGrp}; if ($keys) { # add new tag entries for existing Keys tags, now that we know their ID's # - first make lookup to convert Keys tagInfo ref to index number @@ -931,7 +952,7 @@ ($$$) foreach $index (keys %{$$keys{Info}}) { $keysInfo{$$keys{Info}{$index}} = $index if $$keys{Remap}{$index}; } - my $keysTable = GetTagTable('Image::ExifTool::QuickTime::Keys'); + my $keysTable = GetTagTable("Image::ExifTool::QuickTime::$keysGrp"); my $newKeysTags = $et->GetNewTagInfoHash($keysTable); foreach (keys %$newKeysTags) { my $tagInfo = $$newKeysTags{$_}; @@ -960,7 +981,8 @@ ($$$) } if ($curPath eq $writePath or $createKeys) { $canCreate = 1; - $delGrp = $$et{DEL_GROUP}{$dirName}; + # (must check the appropriate Keys delete flag if this is a Keys ItemList) + $delGrp = $$et{DEL_GROUP}{$createKeys ? $keysGrp : $dirName}; } $atomCount = $$tagTablePtr{VARS}{ATOM_COUNT} if $$tagTablePtr{VARS}; @@ -1078,12 +1100,12 @@ ($$$) last; } } - # save the handler type for this track - if ($tag eq 'hdlr' and length $buff >= 12) { - my $hdlr = substr($buff,8,4); - $$et{HandlerType} = $hdlr if $hdlr =~ /^(vide|soun)$/; + # save the handler type of the track media + if ($tag eq 'hdlr' and length $buff >= 12 and + @{$$et{PATH}} and $$et{PATH}[-1] eq 'Media') + { + $$et{MediaType} = substr($buff,8,4); } - # if this atom stores offsets, save its location so we can fix up offsets later # (are there any other atoms that may store absolute file offsets?) if ($tag =~ /^(stco|co64|iloc|mfra|moof|sidx|saio|gps |CTBO|uuid)$/) { @@ -1128,11 +1150,11 @@ ($$$) &{$$tagInfo{WriteHook}}($buff,$et) if $tagInfo and $$tagInfo{WriteHook}; # allow numerical tag ID's (ItemList entries defined by Keys) - if (not $tagInfo and $dirName eq 'ItemList' and $$et{Keys}) { + if (not $tagInfo and $dirName eq 'ItemList' and $$et{$keysGrp}) { $keysIndex = unpack('N', $tag); - my $newIndex = $$et{Keys}{Remap}{$keysIndex}; + my $newIndex = $$et{$keysGrp}{Remap}{$keysIndex}; if (defined $newIndex) { - $tagInfo = $$et{Keys}{Info}{$keysIndex}; + $tagInfo = $$et{$keysGrp}{Info}{$keysIndex}; unless ($newIndex) { if ($tagInfo) { $et->VPrint(1," - Keys:$$tagInfo{Name}"); @@ -1172,7 +1194,7 @@ ($$$) if ($subdir) { # process atoms in this container from a buffer in memory if ($tag eq 'trak') { - undef $$et{HandlerType}; # init handler type for this track + $$et{MediaType} = ''; # init media type for this track delete $$et{AssumedDataRef}; } my $subName = $$subdir{DirName} || $$tagInfo{Name}; @@ -1241,10 +1263,13 @@ ($$$) $$et{CHANGED} = $oldChanged; undef $newData; } - if ($tag eq 'trak' and $$et{AssumedDataRef}) { - my $grp = $$et{CUR_WRITE_GROUP} || $dirName; - $et->Error("Can't locate data reference to update offsets for $grp"); - delete $$et{AssumedDataRef}; + if ($tag eq 'trak') { + $$et{MediaType} = ''; # reset media type at end of track + if ($$et{AssumedDataRef}) { + my $grp = $$et{CUR_WRITE_GROUP} || $dirName; + $et->Error("Can't locate data reference to update offsets for $grp"); + delete $$et{AssumedDataRef}; + } } $$et{CUR_WRITE_GROUP} = $oldWriteGroup; SetByteOrder('MM'); @@ -1540,7 +1565,7 @@ ($$$) } if ($msg) { # (allow empty sample description for non-audio/video handler types, eg. 'url ', 'meta') - if ($$et{HandlerType}) { + if ($$et{MediaType}) { my $grp = $$et{CUR_WRITE_GROUP} || $parent; $et->Error("$msg for $grp"); return $rtnErr; @@ -1593,7 +1618,16 @@ ($$$) } $et->VPrint(0, " [deleting $delCount $dirName tag".($delCount==1 ? '' : 's')."]\n") if $delCount; - $createKeys &= ~0x01 unless $$addDirs{Keys}; # (Keys may have been written) + # can finally set necessary variables for creating Video/AudioKeys tags + if ($createKeys < 0) { + if ($avType{$$et{MediaType}}) { + $createKeys = 1; + ($keysGrp, $keysPath) = ("$avType{$$et{MediaType}}Keys", 'MOV-Movie-Track'); + } else { + $canCreate = 0; + } + } + $createKeys &= ~0x01 unless $$addDirs{$keysGrp}; # (Keys may have been written) # add new directories/tags at this level if necessary if ($canCreate and (exists $$et{EDIT_DIRS}{$dirName} or $createKeys)) { @@ -1604,13 +1638,13 @@ ($$$) my ($tag, $index); # add Keys tags if necessary if ($createKeys) { - if ($curPath eq 'MOV-Movie') { + if ($curPath eq $keysPath) { # add Meta for Keys if necessary unless ($didDir{meta}) { $$dirs{meta} = $Image::ExifTool::QuickTime::Movie{meta}; push @addTags, 'meta'; } - } elsif ($curPath eq 'MOV-Movie-Meta') { + } elsif ($curPath eq "$keysPath-Meta") { # special case for Keys Meta -- reset directories and start again undef @addTags; $dirs = { }; @@ -1619,10 +1653,10 @@ ($$$) $$dirs{$_} = $Image::ExifTool::QuickTime::Meta{$_}; push @addTags, $_; } - } elsif ($curPath eq 'MOV-Movie-Meta-ItemList' and $$et{Keys}) { - foreach $index (sort { $a <=> $b } keys %{$$et{Keys}{Add}}) { + } elsif ($curPath eq "$keysPath-Meta-ItemList" and $$et{$keysGrp}) { + foreach $index (sort { $a <=> $b } keys %{$$et{$keysGrp}{Add}}) { my $id = Set32u($index); - $$newTags{$id} = $$et{Keys}{Add}{$index}; + $$newTags{$id} = $$et{$keysGrp}{Add}{$index}; push @addTags, $id; } } else { @@ -1634,8 +1668,7 @@ ($$$) foreach $tag (@addTags) { my $tagInfo = $$dirs{$tag} || $$newTags{$tag}; next if defined $$tagInfo{CanCreate} and not $$tagInfo{CanCreate}; - next if defined $$tagInfo{HandlerType} and - (not $$et{HandlerType} or $$et{HandlerType} ne $$tagInfo{HandlerType}); + next if defined $$tagInfo{MediaType} and $$et{MediaType} ne $$tagInfo{MediaType}; my $subdir = $$tagInfo{SubDirectory}; unless ($subdir) { my $nvHash = $et->GetNewValueHash($tagInfo); @@ -1697,13 +1730,13 @@ ($$$) } my $subName = $$subdir{DirName} || $$tagInfo{Name}; # QuickTime hierarchy is complex, so check full directory path before adding - if ($createKeys and $curPath eq 'MOV-Movie' and $subName eq 'Meta') { + if ($createKeys and $curPath eq $keysPath and $subName eq 'Meta') { $et->VPrint(0, " Creating Meta with mdta Handler and Keys\n"); # init Meta box for Keys tags with mdta Handler and empty Keys+ItemList $buf2 = "\0\0\0\x20hdlr\0\0\0\0\0\0\0\0mdta\0\0\0\0\0\0\0\0\0\0\0\0" . "\0\0\0\x10keys\0\0\0\0\0\0\0\0" . "\0\0\0\x08ilst"; - } elsif ($createKeys and $curPath eq 'MOV-Movie-Meta') { + } elsif ($createKeys and $curPath eq "$keysPath-Meta") { $buf2 = ($subName eq 'Keys' ? "\0\0\0\0\0\0\0\0" : ''); } elsif ($subName eq 'Meta' and $$et{OPTIONS}{QuickTimeHandler}) { $et->VPrint(0, " Creating Meta with mdir Handler\n"); @@ -1752,8 +1785,8 @@ ($$$) } } # add only once (must delete _after_ call to WriteDirectory()) - # (Keys is a special case, and will be removed after Meta is processed) - delete $$addDirs{$subName} unless $subName eq 'Keys'; + # (Keys tags are a special case, and are handled separately) + delete $$addDirs{$subName} unless $createKeys; } } # write HEIC metadata after top-level 'meta' box has been processed if editing this information @@ -1779,9 +1812,9 @@ ($$$) # (could report a file if editing nothing when it contained an empty Meta atom) # ++$$et{CHANGED}; } - if ($curPath eq 'MOV-Movie-Meta') { - delete $$addDirs{Keys}; # prevent creation of another Meta for Keys tags - delete $$et{Keys}; + if ($curPath eq "$keysPath-Meta") { + delete $$addDirs{$keysGrp}; # prevent creation of another Meta for Keys tags + delete $$et{$keysGrp}; } } @@ -2109,6 +2142,7 @@ ($$) $raf->Seek(0,0); # write the file + $$et{MediaType} = ''; $$dirInfo{Parent} = ''; $$dirInfo{DirName} = 'MOV'; $$dirInfo{ChunkOffset} = [ ]; # (just to be safe) @@ -2134,7 +2168,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteRIFF.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteRIFF.pl index 0372dfd..851d542 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteRIFF.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteRIFF.pl @@ -324,8 +324,10 @@ ($$) $raf->Read($buff, 6) == 6 or $et->Error('Truncated VP8L chunk'), return 1; $outsize += 6; if ($buff =~ /^\x2f/s) { + my $word = Get32u(\$buff, 2); $imageWidth = (Get16u(\$buff, 1) & 0x3fff) + 1; - $imageHeight = ((Get32u(\$buff, 2) >> 6) & 0x3fff) + 1; + $imageHeight = (($word >> 6) & 0x3fff) + 1; + $has{ALPH} = 1 if $word & 0x100000; # set alpha flag if necessary } $len2 -= 6; } @@ -372,7 +374,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteXMP.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteXMP.pl index 4aec131..5b97501 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteXMP.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/WriteXMP.pl @@ -1651,7 +1651,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Writer.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Writer.pl index 391c69a..911e5c0 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Writer.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/Writer.pl @@ -138,11 +138,12 @@ package Image::ExifTool; # 2) any dependencies must be added to %excludeGroups my @delGroups = qw( Adobe AFCP APP0 APP1 APP2 APP3 APP4 APP5 APP6 APP7 APP8 APP9 APP10 APP11 APP12 - APP13 APP14 APP15 CanonVRD CIFF Ducky EXIF ExifIFD File FlashPix FotoStation - GlobParamIFD GPS ICC_Profile IFD0 IFD1 Insta360 InteropIFD IPTC ItemList JFIF - Jpeg2000 JUMBF Keys MakerNotes Meta MetaIFD Microsoft MIE MPF Nextbase NikonApp - NikonCapture PDF PDF-update PhotoMechanic Photoshop PNG PNG-pHYs PrintIM - QuickTime RMETA RSRC SEAL SubIFD Trailer UserData XML XML-* XMP XMP-* + APP13 APP14 APP15 AudioKeys CanonVRD CIFF Ducky EXIF ExifIFD File FlashPix + FotoStation GlobParamIFD GPS ICC_Profile IFD0 IFD1 Insta360 InteropIFD IPTC + ItemList JFIF Jpeg2000 JUMBF Keys MakerNotes Meta MetaIFD Microsoft MIE MPF + Nextbase NikonApp NikonCapture PDF PDF-update PhotoMechanic Photoshop PNG + PNG-pHYs PrintIM QuickTime RMETA RSRC SEAL SubIFD Trailer UserData VideoKeys + Vivo XML XML-* XMP XMP-* ); # family 2 group names that we can delete my @delGroup2 = qw( @@ -1297,12 +1298,13 @@ ($$;@) foreach (qw(ByteUnit Charset CharsetEXIF CharsetFileName CharsetID3 CharsetIPTC CharsetPhotoshop Composite DateFormat Debug EncodeHangs Escape ExtendedXMP ExtractEmbedded FastScan Filter FixBase Geolocation GeolocAltNames - GeolocFeature GeolocMinPop GeolocMaxDist GlobalTimeShift HexTagIDs - IgnoreGroups IgnoreMinorErrors IgnoreTags ImageHashType Lang - LargeFileSupport LigoGPSScale ListItem ListSep MDItemTags MissingTagValue - NoPDFList NoWarning Password PrintConv QuickTimeUTC RequestTags SaveFormat - SavePath ScanForXMP StructFormat SystemTags TimeZone Unknown UserParam - Validate WindowsLongPath WindowsWideFile XAttrTags XMPAutoConv)) + GeolocFeature GeolocMinPop GeolocMaxDist GlobalTimeShift GPSQuadrant + HexTagIDs IgnoreGroups IgnoreMinorErrors IgnoreTags ImageHashType Lang + LargeFileSupport LigoGPSScale ListItem ListSep MDItemTags + MissingTagValue NoPDFList NoWarning Password PrintConv QuickTimeUTC + RequestTags SaveFormat SavePath ScanForXMP StructFormat SystemTags + TimeZone Unknown UserParam Validate WindowsLongPath WindowsWideFile + XAttrTags XMPAutoConv)) { $srcExifTool->Options($_ => $$options{$_}); } @@ -2822,7 +2824,10 @@ ($;$) my %allGroups; # add family 1 groups not in tables - $family == 1 and map { $allGroups{$_} = 1 } qw(Garmin); + no warnings; # (avoid "possible attempt to put comments in qw()") + $family == 1 and map { $allGroups{$_} = 1 } qw(Garmin AudioItemList AudioUserData + VideoItemList VideoUserData Track#Keys Track#ItemList Track#UserData); + use warnings; # loop through all tag tables and get all group names while (@tableNames) { my $table = GetTagTable(pop @tableNames); @@ -5228,7 +5233,7 @@ (@) { my $val = $_[0]; my $hi = int($val / 4294967296); - my $lo = Set32u($val - $hi * 4294967296); + my $lo = Set32u($val - $hi * 4294967296); # NOTE: subject to round-off errors! $hi = Set32u($hi); $val = GetByteOrder() eq 'MM' ? $hi . $lo : $lo . $hi; $_[1] and substr(${$_[1]}, $_[2], length($val)) = $val; @@ -6102,7 +6107,7 @@ ($$) my $tbuf = ''; $raf->Seek(-length($buff), 1); # seek back to just after EOI $$trailInfo{OutFile} = \$tbuf; # rewrite the trailer - $$trailInfo{ScanForAFCP} = 1; # scan if necessary + $$trailInfo{ScanForTrailer} = 1;# scan if necessary $self->ProcessTrailers($trailInfo) or undef $trailInfo; } if (not $oldOutfile) { @@ -6987,7 +6992,7 @@ ($$;$$$$) $mtime = $m unless defined $mtime; $success = eval { utime($atime, $mtime, $file) } if defined $atime and defined $mtime; } - $self->Warn('Error opening file for update') unless $success; + $self->Warn('Error updating file time') unless $success; return $success; } $saveFile = $file; @@ -7376,7 +7381,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XISF.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XISF.pm index 1185696..061f090 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XISF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XISF.pm @@ -163,7 +163,7 @@ information from XISF (Extensible Image Serialization Format) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP.pm index 97c91f4..7648da3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP.pm @@ -4582,7 +4582,7 @@ information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP2.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP2.pl index c7e5d6e..1dc0811 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP2.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMP2.pl @@ -2427,7 +2427,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMPStruct.pl b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMPStruct.pl index a31c4f8..c47be3e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMPStruct.pl +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/XMPStruct.pl @@ -944,7 +944,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZIP.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZIP.pm index 2daefd3..8f3ea9c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZIP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZIP.pm @@ -840,7 +840,7 @@ Electronic Publication (EPUB), and Sketch design files (SKETCH). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZISRAW.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZISRAW.pm index b314561..77463e5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZISRAW.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/ZISRAW.pm @@ -220,7 +220,7 @@ metadata from Zeiss Integrated Software RAW (ZISRAW) CZI files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/iWork.pm b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/iWork.pm index d122d37..2279852 100644 --- a/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/iWork.pm +++ b/focuspoints.lrdevplugin/bin/exiftool/lib/Image/ExifTool/iWork.pm @@ -215,7 +215,7 @@ information from Apple iWork '09 XML+ZIP files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/exiftool.pl b/focuspoints.lrdevplugin/bin/exiftool_files/exiftool.pl index 02a731e..f6c0931 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/exiftool.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/exiftool.pl @@ -11,7 +11,7 @@ use warnings; require 5.004; -my $version = '13.10'; +my $version = '13.15'; # add our 'lib' directory to the include list BEFORE 'use Image::ExifTool' my $exePath; @@ -654,7 +654,7 @@ () } # require MWG module if used in any argument # (note: doesn't cover the -p option because these tags will be parsed on the 2nd pass) - $useMWG = 1 if not $useMWG and grep /^mwg:/i, @tags, @requestTags; + $useMWG = 1 if not $useMWG and grep /^([--_0-9A-Z]+:)*1?mwg:/i, @tags, @requestTags; if ($useMWG) { require Image::ExifTool::MWG; Image::ExifTool::MWG::Load(); @@ -1106,7 +1106,7 @@ () # prevent processing file unnecessarily for simple case of failed '$ok' or 'not $ok' $cond =~ /^\s*(not\s*)\$ok\s*$/i and ($1 xor $rtnValPrev) and $failCondition=1; # add to list of requested tags - push @requestTags, $cond =~ /\$\{?((?:[-\w]+:)*[-\w?*]+)/g; + push @requestTags, $cond =~ /\$\{?((?:[-_0-9A-Z]+:)*[-_0-9A-Z?*]+)/ig; push @condition, $cond; next; } @@ -1194,7 +1194,7 @@ () if ($pass) { LoadPrintFormat($fmt, $1 || $binaryOutput); # load MWG module now if necessary - if (not $useMWG and grep /^mwg:/i, @requestTags) { + if (not $useMWG and grep /^([-_0-9A-Z]+:)*1?mwg:/i, @requestTags) { $useMWG = 1; require Image::ExifTool::MWG; Image::ExifTool::MWG::Load(); @@ -1393,11 +1393,11 @@ () push @newValues, { SaveCount => ++$saveCount }; } push @newValues, $_; - if (/^mwg:/i) { + if (/^([-_0-9A-Z]+:)*1?mwg:/i) { $useMWG = 1; - } elsif (/^([-\w]+:)*(filename|directory|testname)\b/i) { + } elsif (/^([-_0-9A-Z]+:)*(filename|directory|testname)\b/i) { $doSetFileName = 1; - } elsif (/^([-\w]+:)*(geotag|geotime|geosync|geolocate)\b/i) { + } elsif (/^([-_0-9A-Z]+:)*(geotag|geotime|geosync|geolocate)\b/i) { if (lc $2 eq 'geotime') { $addGeotime = ''; } else { @@ -1415,25 +1415,23 @@ () if ($setTagsFile) { push @{$setTags{$setTagsFile}}, $_; if ($1 eq '>') { - $useMWG = 1 if /^(.*>\s*)?mwg:/si; + $useMWG = 1 if /^(.*>\s*)?([-_0-9A-Z]+:)*1?mwg:/si; if (/\b(filename|directory|testname)#?$/i) { $doSetFileName = 1; } elsif (/\bgeotime#?$/i) { $addGeotime = ''; } } else { - $useMWG = 1 if /^([^<]+<\s*(.*\$\{?)?)?mwg:/si; - if (/^([-\w]+:)*(filename|directory|testname)\b/i) { + $useMWG = 1 if /^([^<]+<\s*(.*\$\{?)?)?([-_0-9A-Z]+:)*1?mwg:/si; + if (/^([-_0-9A-Z]+:)*(filename|directory|testname)\b/i) { $doSetFileName = 1; - } elsif (/^([-\w]+:)*geotime\b/i) { + } elsif (/^([-_0-9A-Z]+:)*geotime\b/i) { $addGeotime = ''; } } } else { my $lst = s/^-// ? \@exclude : \@tags; - unless (/^([-\w*]+:)*([-\w*?]+)#?$/) { - Warn(qq(Invalid TAG name: "$_"\n)); - } + Warn(qq(Invalid TAG name: "$_"\n)) unless /^([-_0-9A-Z*]+:)*([-_0-9A-Z*?]+)#?$/i; push @$lst, $_; # (push everything for backward compatibility) } } @@ -1760,9 +1758,11 @@ () $wrn and Warning($mt, $wrn); } # exclude specified tags - foreach (@exclude) { - $mt->SetNewValue($_, undef, Replace => 2); - $needSave = 1; + unless ($csv) { + foreach (@exclude) { + $mt->SetNewValue($_, undef, Replace => 2); + $needSave = 1; + } } unless ($isWriting or $outOpt or @tags) { Warn "Nothing to do.\n"; @@ -2293,6 +2293,10 @@ ($$) $et->Options(Duplicates => 1, Sort => "Group$showGroup", Verbose => 0); $et2 = Image::ExifTool->new; $et2->Options(%{$$et{OPTIONS}}); + # must set list options specifically because they may have been + # set incorrectly from deprecated List settings + $et2->Options(ListSep => $$et{OPTIONS}{ListSep}); + $et2->Options(ListSplit => $$et{OPTIONS}{ListSplit}); @found2 = @foundTags; $info2 = $et2->ImageInfo($file2, \@found2); } else { @@ -2349,14 +2353,15 @@ ($$) # print differences if requested if (defined $diff) { - my (%done2, $wasDiff, @diffs, @groupTags2); + my (%done, %done2, $wasDiff, @diffs, @groupTags2); my $v = $verbose || 0; print $fp "======== diff < $file > $file2\n"; my ($g2, $same) = (0, 0); # start with $g2 false, but not equal to '' to avoid infinite loop for (;;) { + my ($g, $tag2, $i, $key, @dupl, $val2, $t2, $equal, %used); my $tag = shift @foundTags; - my ($g, $tag2); if (defined $tag) { + $done{$tag} = 1; $g = $et->GetGroup($tag, $showGroup); } else { for (;;) { @@ -2366,7 +2371,6 @@ ($$) } } if ($g ne $g2) { - my $t2; # add any outstanding tags from diff file not yet handled in previous group ($g2) foreach $t2 (@groupTags2) { next if $done2{$t2}; @@ -2405,33 +2409,50 @@ ($$) my $val = $et->GetValue($tag); next unless defined $val; # (just in case) my $name = GetTagName($tag); - # get matching tag key from diff file + my $desc = $outFormat < 1 ? $et->GetDescription($tag) : $name; + # get matching tag key(s) from diff file my @tags2 = grep /^$name( |$)/, @groupTags2; - $name = $et->GetDescription($tag) if $outFormat < 1; - my ($val2, $t2); - foreach $t2 (@tags2) { +T2: foreach $t2 (@tags2) { next if $done2{$t2}; $tag2 = $t2; $val2 = $et2->GetValue($t2); + next unless defined $val2; + IsEqual($val, $val2) and $equal = 1, last; + # look ahead for upcoming duplicate tags in this group to see + # if any would later match this value (and skip those for now) + if ($$et{DUPL_TAG}{$name} and not @dupl) { + for ($i=0, $key=$name; $i<=$$et{DUPL_TAG}{$name}; ++$i, $key="$name ($i)") { + push @dupl, $key unless $done{$key} or $g ne $et->GetGroup($key, $showGroup); + } + @dupl = sort { $$et{FILE_ORDER}{$a} <=> $$et{FILE_ORDER}{$b} } @dupl if @dupl > 1; + } + foreach (@dupl) { + next if $used{$_}; + my $v = $et->GetValue($_); + next unless defined($v) and IsEqual($v, $val2); + $used{$_} = 1; # would match this upcoming tag + undef($tag2); undef($val2); + next T2; + } last; } - if (defined $val2 and IsEqual($val, $val2)) { + if ($equal) { ++$same; } else { - my $len = LengthUTF8($name); + my $len = LengthUTF8($desc); my $pad = $outFormat < 2 ? ' ' x ($len < 32 ? 32 - $len : 0) : ''; if ($allGroup) { my $grp = "[$g]"; $grp .= ' ' x (15 - length($grp)) if length($grp) < 15 and $outFormat < 2; - push @diffs, sprintf "< %s %s%s: %s\n", $grp, $name, $pad, Printable($val); + push @diffs, sprintf "< %s %s%s: %s\n", $grp, $desc, $pad, Printable($val); if (defined $val2) { - $grp = ' ' x length($grp), $name = ' ' x $len if $v < 3; - push @diffs, sprintf "> %s %s%s: %s\n", $grp, $name, $pad, Printable($val2); + $grp = ' ' x length($grp), $desc = ' ' x $len if $v < 3; + push @diffs, sprintf "> %s %s%s: %s\n", $grp, $desc, $pad, Printable($val2); } } else { - push @diffs, sprintf "< %s%s: %s\n", $name, $pad, Printable($val); - $name = ' ' x $len if $v < 3; - push @diffs, sprintf "> %s%s %s\n", $name, $pad, Printable($val2) if defined $val2; + push @diffs, sprintf "< %s%s: %s\n", $desc, $pad, Printable($val); + $desc = ' ' x $len if $v < 3; + push @diffs, sprintf "> %s%s: %s\n", $desc, $pad, Printable($val2) if defined $val2; } } $done2{$tag2} = 1 if defined $tag2; @@ -3144,7 +3165,7 @@ ($$$) next; } elsif (ref $dyFile eq 'SCALAR') { # set new values from CSV or JSON database - my ($f, $found, $tag); + my ($f, $found, $csvTag, $tryTag, $tg); undef $evalWarning; local $SIG{'__WARN__'} = sub { $evalWarning = $_[0] }; # force UTF-8 if the database was JSON @@ -3166,11 +3187,39 @@ ($$$) print $vout 'Including tags: ',join(' ',@tags),"\n" if @tags; print $vout 'Excluding tags: ',join(' ',@exclude),"\n" if @exclude; } - foreach $tag (OrderedKeys($csvInfo)) { - next if $tag =~ /\b(SourceFile|Directory|FileName)$/i; # don't write these - next if @tags and not grep /^\Q$tag\E$/i, @tags; - next if @exclude and grep /^\Q$tag\E$/i, @exclude; - my ($rtn, $wrn) = $et->SetNewValue($tag, $$csvInfo{$tag}, + my @tryTags = (@exclude, @tags); # (exclude first because it takes priority) + foreach (@tryTags) { + tr/-0-9a-zA-Z_:#?*//dc; # remove illegal characters + s/(^|:)(all:)+/$1/ig; # remove 'all' group names + s/(^|:)all(#?)$/$1*$2/i; # convert 'all' tag name to '*' + tr/?/./; s/\*/.*/g; # convert wildcards for regex + } + foreach $csvTag (OrderedKeys($csvInfo)) { + # don't write SourceFile, Directory or FileName + next if $csvTag =~ /^([-_0-9A-Z]+:)*(SourceFile|Directory|FileName)$/i; + if (@tryTags) { + my ($i, $tryGrp, $matched); +TryMatch: for ($i=0; $i<@tryTags; ++$i) { + $tryTag = $tryTags[$i]; + if ($tryTag =~ /:/) { + next unless $csvTag =~ /:/; # db entry must also specify group + my @csvGrps = split /:/, $csvTag; + my @tryGrps = split /:/, $tryTag; + my $tryName = pop @tryGrps; + next unless pop(@csvGrps) =~ /^$tryName$/i; # tag name must match + foreach $tryGrp (@tryGrps) { + # each specified group name must match db entry + next TryMatch unless grep /^$tryGrp$/i, @csvGrps; + } + $matched = 1; + last; + } + # no group specified, so match by tag name only + $csvTag =~ /^([-_0-9A-Z]+:)*$tryTag$/i and $matched = 1, last; + } + next if $matched ? $i < @exclude : @tags; + } + my ($rtn, $wrn) = $et->SetNewValue($csvTag, $$csvInfo{$csvTag}, Protected => 1, AddValue => $csvAdd, ProtectSaved => $csvSaveCount); $wrn and Warn "$wrn\n" if $verbose; @@ -4360,7 +4409,7 @@ ($) $printFmt{$type} or $printFmt{$type} = [ ]; push @{$printFmt{$type}}, $expr; # add to list of requested tags - push @requestTags, $expr =~ /\$\{?((?:[-\w]+:)*[-\w?*]+)/g; + push @requestTags, $expr =~ /\$\{?((?:[-_0-9A-Z]+:)*[-_0-9A-Z?*]+)/ig; $printFmt{SetTags} = 1 if $expr =~ /\bSetTags\b/; } @@ -4715,7 +4764,7 @@ ($) $arg =~ s/^\s+//; # remove leading white space $arg =~ s/[\x0d\x0a]+$//s; # remove trailing newline # remove white space before, and single space after '=', '+=', '-=' or '<=' - $arg =~ s/^(-[-:\w]+#?)\s*([-+<]?=) ?/$1$2/; + $arg =~ s/^(-[-_0-9A-Z:]+#?)\s*([-+<]?=) ?/$1$2/i; return undef if $arg eq ''; } return $arg; diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pm index 9b6696f..c19f9b1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pm @@ -29,7 +29,7 @@ # Sets internal ERROR member from $! if there is an error reading # the file. # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pod b/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pod index 25930b3..8142fb2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pod +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/File/RandomAccess.pod @@ -3,7 +3,7 @@ # # Description: Buffer to support random access reading of sequential file # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -236,7 +236,7 @@ the end of file is not allowed. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pm index 4c7575e..c6e5dc5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pm @@ -8,7 +8,7 @@ # Revisions: Nov. 12/2003 - P. Harvey Created # (See html/history.html for revision history) # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir %static_vars $advFmtSelf); -$VERSION = '13.10'; +$VERSION = '13.15'; $RELEASE = ''; @ISA = qw(Exporter); %EXPORT_TAGS = ( @@ -154,10 +154,10 @@ sub ReadValue($$$;$$$); Matroska::StdTag MOI MXF DV Flash Flash::FLV Real::Media Real::Audio Real::Metafile Red RIFF AIFF ASF WTV DICOM FITS XISF MIE JSON HTML XMP::SVG Palm Palm::MOBI Palm::EXTH Torrent EXE EXE::PEVersion EXE::PEString - EXE::MachO EXE::PEF EXE::ELF EXE::AR EXE::CHM LNK Font VCard Text - VCard::VCalendar VCard::VNote RSRC Rawzor ZIP ZIP::GZIP ZIP::RAR ZIP::RAR5 - RTF OOXML iWork ISO FLIR::AFF FLIR::FPF MacOS MacOS::MDItem - FlashPix::DocTable + EXE::DebugRSDS EXE::DebugNB10 EXE::Misc EXE::MachO EXE::PEF EXE::ELF EXE::AR + EXE::CHM LNK Font VCard Text VCard::VCalendar VCard::VNote RSRC Rawzor ZIP + ZIP::GZIP ZIP::RAR ZIP::RAR5 RTF OOXML iWork ISO FLIR::AFF FLIR::FPF MacOS + MacOS::MDItem FlashPix::DocTable ); # alphabetical list of current Lang modules @@ -1126,6 +1126,7 @@ my @availableOptions = ( [ 'GeoMinSats', undef, 'geotag minimum satellites' ], [ 'GeoSpeedRef', undef, 'geotag GPSSpeedRef' ], [ 'GlobalTimeShift', undef, 'apply time shift to all extracted date/time values' ], + [ 'GPSQuadrant', undef, 'quadrant for GPS if not otherwise known' ], [ 'Group#', undef, 'return tags for specified groups in family #' ], [ 'HexTagIDs', 0, 'use hex tag ID\'s in family 7 group names' ], [ 'HtmlDump', 0, 'HTML dump (0-3, higher # = bigger limit)' ], @@ -2500,6 +2501,7 @@ sub Options($$;@) } } elsif ($param =~ /^(IgnoreTags|IgnoreGroups)$/) { if (defined $newVal) { + ref $newVal eq 'HASH' and $$options{$param} = $newVal, next; # parse list from delimited string if necessary my @ignoreList = (ref $newVal eq 'ARRAY') ? @$newVal : ($newVal =~ /[-\w?*:#]+/g); ExpandShortcuts(\@ignoreList) if $param eq 'IgnoreTags'; @@ -6894,6 +6896,8 @@ sub IdentifyTrailer($;$) $type = 'Insta360'; } elsif ($buff =~ m(\0{6}/NIKON APP$)) { $type = 'NikonApp'; + } elsif ($buff =~ /\xff{4}\x1b\*9HWfu\x84\x93\xa2\xb1$/) { + $type = 'Vivo'; } last; } @@ -6906,7 +6910,8 @@ sub IdentifyTrailer($;$) # Inputs: 0) ExifTool object ref, 1) DirInfo ref: # - requires RAF and DirName # - OutFile is a scalar reference for writing -# - scans from current file position if ScanForAFCP is set +# - scans from current file position for each trailer if ScanForTrailer is set +# (current file position is just after JPEG EOF for a JPEG image) # Returns: 1 if trailer was processed or couldn't be processed (or written OK) # 0 if trailer was recognized but offsets need fixing (or write error) # - DirName, DirLen, DataPos, Offset, Fixup and OutFile are updated @@ -6952,7 +6957,7 @@ sub ProcessTrailers($$) # read or write this trailer # (proc takes Offset as positive offset from end of trailer to end of file, # and returns DataPos and DirLen, and Fixup if applicable, and updates - # OutFile when writing) + # OutFile when writing. Returns < 0 if we must scan for this trailer) no strict 'refs'; my $result = &$proc($self, $dirInfo); use strict 'refs'; @@ -7362,7 +7367,7 @@ sub ProcessJPEG($$;$) # and scan for AFCP if necessary my $fromEnd = 0; if ($trailInfo) { - $$trailInfo{ScanForAFCP} = 1; # scan now if necessary + $$trailInfo{ScanForTrailer} = 1; # scan now if necessary $self->ProcessTrailers($trailInfo); # save offset from end of file to start of first trailer $fromEnd = $$trailInfo{Offset}; @@ -7562,6 +7567,19 @@ sub ProcessJPEG($$;$) $$self{SkipData} = \@skipData if @skipData; # extract the EXIF information (it is in standard TIFF format) $self->ProcessTIFF(\%dirInfo) or $self->Warn('Malformed APP1 EXIF segment'); + # scan for Vivo HiddenData if necessary + if ($$self{Make} eq 'vivo' and + # (stored as UserComment by some models) + not ($$self{VALUE}{UserComment} and $$self{VALUE}{UserComment} =~ /^filter:/) and + $$dataPt =~ /(filter: .*?; \n)\0/sg) + { + if ($htmlDump) { + my $n = length($1) + 1; + $self->HDump($segPos+pos($$dataPt)-$n, $n, '[Vivo HiddenData]', undef, 0x08); + } + my $tbl = GetTagTable('Image::ExifTool::Vivo::Main'); + $self->HandleTag($tbl, HiddenData => $1); + } # avoid looking for preview unless necessary because it really slows # us down -- only look for it if we found pointer, and preview is # outside EXIF, and PreviewImage is specifically requested @@ -8376,7 +8394,11 @@ sub DoProcessTIFF($$;$) # save a copy of the EXIF data my $dirStart = $$dirInfo{DirStart} || 0; my $dirLen = $$dirInfo{DirLen} || (length($$dataPt) - $dirStart); - $$self{EXIF_DATA} = substr($$dataPt, $dirStart, $dirLen); + if ($dirLen > 0 or not $outfile) { + $$self{EXIF_DATA} = substr($$dataPt, $dirStart, $dirLen); + } else { + delete $$self{EXIF_DATA}; # create from scratch; + } $self->VerboseDir('TIFF') if $$self{OPTIONS}{Verbose} and length($$self{INDENT}) > 2; } elsif ($outfile) { delete $$self{EXIF_DATA}; # create from scratch @@ -8535,7 +8557,7 @@ sub DoProcessTIFF($$;$) if ($raf) { my $trailInfo = IdentifyTrailer($raf); if ($trailInfo) { - $$trailInfo{ScanForAFCP} = 1; # scan to find AFCP if necessary + $$trailInfo{ScanForTrailer} = 1; # scan to find AFCP if necessary $self->ProcessTrailers($trailInfo); } # dump any other known trailer (eg. A100 RAW Data) @@ -8640,7 +8662,7 @@ sub DoProcessTIFF($$;$) last unless $trailInfo; my $tbuf = ''; $$trailInfo{OutFile} = \$tbuf; # rewrite trailer(s) - $$trailInfo{ScanForAFCP} = 1; # scan for AFCP if necessary + $$trailInfo{ScanForTrailer} = 1; # scan for AFCP if necessary # rewrite all trailers to buffer unless ($self->ProcessTrailers($trailInfo)) { undef $trailInfo; diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pod b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pod index 65b7394..ab4f87c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pod +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool.pod @@ -5,7 +5,7 @@ # # URL: https://exiftool.org/ # -# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com) +# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com) # This library is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. #------------------------------------------------------------------------------ @@ -827,6 +827,15 @@ determined unambiguously. For example: If the starting tag is not specified, or the specified tag isn't available, then the shift is calculated based on the first shifted tag. +=item GPSQuadrant + +This option is used to specify the GPS quadrant in the case where a warning +was issued because the GPS quadrant couldn't be determined. The value is a +2-character code where the first character is 'N' or 'S' and the second +character is 'E' or 'W' (case insensitive). If this option is not set and +the quadrant is unknown, a warning is issued and the quadrant is assumed to +be 'NE'. + =item Group# Extract tags only for specified groups in family # (Group0 assumed if # @@ -855,7 +864,7 @@ used. Set to 0 for absolute offsets. Default is undef. =item IgnoreGroups Comma-separated list of group names to ignore when reading. The group names -are case insensitive and may be preceeded by a family number. Set to undef +are case insensitive and may be preceded by a family number. Set to undef to clear the previous IgnoreGroups list. Default is undef. =item IgnoreMinorErrors @@ -880,7 +889,7 @@ to undef to clear the previous IgnoreTags list. Default is undef. =item ImageHashType -Sets type of hash algorithem used for the ImageDataHash tag calculation. +Sets type of hash algorithm used for the ImageDataHash tag calculation. Supported options are 'MD5', 'SHA256', and 'SHA512'. Default is 'MD5'. =item Lang @@ -1021,7 +1030,7 @@ when written. According to the QuickTime specification date/time values should be UTC, but many digital cameras store local time instead (presumably because they don't know the time zone), so the default is to not convert these times (except for Canon CR3 files, which always use UTC times). This -option also disables the autodetection of incorrect time-zero offsets in +option also disables the auto-detection of incorrect time-zero offsets in QuickTime date/time values, and enforces a time zero of 1904 as per the QuickTime specification. @@ -2554,47 +2563,49 @@ Trailer, VCard, Vorbis, WTV, XML, XMP, ZIP =item Family 1 (Specific Location): -AAC, AC3, AFCP, AIFF, APE, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, Apple, -Audible, CBOR, CIFF, CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw, -CanonVRD, Casio, Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta, -Ducky, EPPIM, EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash, -FlashPix, Font, FotoStation, FujiFilm, FujiIFD, GE, GIF, GIMP, GM, GPS, -GSpherical, Garmin, GeoTiff, GlobParamIFD, GoPro, GraphConv, H264, HP, HTC, -HTML, HTML-dc, HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv, -ICC-chrm, ICC-cicp, ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, -ICC_Profile, ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, -IFD0, IFD1, IPTC, IPTC#, ISO, ITC, InfiRay, Insta360, InteropIFD, ItemList, -JFIF, JFXX, JPEG, JPEG-HDR, JPS, JSON, JUMBF, JVC, Jpeg2000, KDC_IFD, Keys, -Kodak, KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LIGO, LNK, -Leaf, LeafSubIFD, Leica, Lyrics3, Lytro, M-RAW, M2TS, MAC, MIE-Audio, -MIE-Camera, MIE-Canon, MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, -MIE-Image, MIE-Lens, MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, -MIE-Preview, MIE-Thumbnail, MIE-UTM, MIE-Unknown, MIE-Video, MIFF, MISB, -MNG, MOBI, MOI, MPC, MPEG, MPF0, MPImage, MS-DOC, MXF, MacOS, MakerNotes, -MakerUnknown, Matroska, MediaJukebox, Meta, MetaIFD, Microsoft, Minolta, -MinoltaRaw, Motorola, NITF, Nextbase, Nikon, NikonCapture, NikonCustom, -NikonScan, NikonSettings, NineEdits, Nintendo, Ocad, Ogg, Olympus, OpenEXR, -Opus, PDF, PICT, PNG, PNG-cICP, PNG-pHYs, PSP, Palm, Panasonic, -PanasonicRaw, Parrot, Pentax, PhaseOne, PhotoCD, PhotoMechanic, Photoshop, -PictureInfo, PostScript, PreviewIFD, PrintIM, ProfileIFD, Qualcomm, -QuickTime, RAF, RAF2, RIFF, RMETA, RSRC, RTF, Radiance, Rawzor, Real, -Real-CONT, Real-MDPR, Real-PROP, Real-RA3, Real-RA4, Real-RA5, Real-RJMD, -Reconyx, Red, Ricoh, SEAL, SPIFF, SR2, SR2DataIFD, SR2SubIFD, SRF#, SVG, -Samsung, Sanyo, Scalado, Sigma, SigmaRaw, Sony, SonyIDC, Stim, SubIFD, -System, Theora, Torrent, Track#, UserData, VCalendar, VCard, VNote, -Version0, Vorbis, WTV, XML, XMP, XMP-DICOM, XMP-Device, XMP-GAudio, -XMP-GCamera, XMP-GContainer, XMP-GCreations, XMP-GDepth, XMP-GFocus, -XMP-GImage, XMP-GPano, XMP-GSpherical, XMP-LImage, XMP-MP, XMP-MP1, -XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-acdsee-rs, XMP-album, XMP-apple-fi, -XMP-ast, XMP-aux, XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, XMP-crs, -XMP-dc, XMP-dex, XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, XMP-exif, -XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, XMP-hdr, -XMP-hdrgm, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, XMP-mediapro, -XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, XMP-panorama, -XMP-pdf, XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, XMP-pmi, -XMP-prism, XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-swf, XMP-tiff, -XMP-x, XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, XMP-xmpMM, XMP-xmpNote, -XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg, ZIP, iTunes +AAC, AC3, AFCP, AIFF, APE, APP10, APP2, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, +Apple, Audible, AudioItemList, AudioKeys, AudioUserData, CBOR, CIFF, +CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw, CanonVRD, Casio, +Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta, Ducky, EPPIM, +EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash, FlashPix, Font, +FotoStation, FujiFilm, FujiIFD, GE, GIF, GIMP, GM, GPS, GSpherical, Garmin, +GeoTiff, GlobParamIFD, GoPro, GraphConv, H264, HP, HTC, HTML, HTML-dc, +HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv, ICC-chrm, ICC-cicp, +ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, ICC_Profile, +ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, IFD0, IFD1, +IPTC, IPTC#, ISO, ITC, InfiRay, Insta360, InteropIFD, ItemList, JFIF, JFXX, +JPEG, JPEG-HDR, JPS, JSON, JUMBF, JVC, Jpeg2000, KDC_IFD, Keys, Kodak, +KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LNK, Leaf, +LeafSubIFD, Leica, Lyrics3, Lytro, M-RAW, M2TS, MAC, MIE-Audio, MIE-Camera, +MIE-Canon, MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, MIE-Image, +MIE-Lens, MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, MIE-Preview, +MIE-Thumbnail, MIE-UTM, MIE-Unknown, MIE-Video, MIFF, MISB, MNG, MOBI, MOI, +MPC, MPEG, MPF0, MPImage, MS-DOC, MXF, MacOS, MakerNotes, MakerUnknown, +Matroska, MediaJukebox, Meta, MetaIFD, Microsoft, Minolta, MinoltaRaw, +Motorola, NITF, Nextbase, Nikon, NikonCapture, NikonCustom, NikonScan, +NikonSettings, NineEdits, Nintendo, Ocad, Ogg, Olympus, OpenEXR, Opus, PDF, +PICT, PNG, PNG-cICP, PNG-pHYs, PSP, Palm, Panasonic, PanasonicRaw, Parrot, +Pentax, PhaseOne, PhotoCD, PhotoMechanic, Photoshop, PictureInfo, +PostScript, PreviewIFD, PrintIM, ProfileIFD, Qualcomm, QuickTime, RAF, RAF2, +RIFF, RMETA, RSRC, RTF, Radiance, Rawzor, Real, Real-CONT, Real-MDPR, +Real-PROP, Real-RA3, Real-RA4, Real-RA5, Real-RJMD, Reconyx, Red, Ricoh, +SEAL, SPIFF, SR2, SR2DataIFD, SR2SubIFD, SRF#, SVG, Samsung, Sanyo, Scalado, +Sigma, SigmaRaw, Sony, SonyIDC, Stim, SubIFD, System, Theora, Torrent, +Track#, Track#ItemList, Track#Keys, Track#UserData, UserData, VCalendar, +VCard, VNote, Version0, VideoItemList, VideoKeys, VideoUserData, Vivo, +Vorbis, WTV, XML, XMP, XMP-DICOM, XMP-Device, XMP-GAudio, XMP-GCamera, +XMP-GContainer, XMP-GCreations, XMP-GDepth, XMP-GFocus, XMP-GImage, +XMP-GPano, XMP-GSpherical, XMP-HDRGainMap, XMP-LImage, XMP-MP, XMP-MP1, +XMP-PixelLive, XMP-aas, XMP-acdsee, XMP-acdsee-rs, XMP-album, XMP-apdi, +XMP-apple-fi, XMP-ast, XMP-aux, XMP-cc, XMP-cell, XMP-crd, XMP-creatorAtom, +XMP-crs, XMP-dc, XMP-dex, XMP-digiKam, XMP-drone-dji, XMP-dwc, XMP-et, +XMP-exif, XMP-exifEX, XMP-expressionmedia, XMP-extensis, XMP-fpv, XMP-getty, +XMP-hdr, XMP-hdrgm, XMP-ics, XMP-iptcCore, XMP-iptcExt, XMP-lr, +XMP-mediapro, XMP-microsoft, XMP-mwg-coll, XMP-mwg-kw, XMP-mwg-rs, XMP-nine, +XMP-panorama, XMP-pdf, XMP-pdfx, XMP-photomech, XMP-photoshop, XMP-plus, +XMP-pmi, XMP-prism, XMP-prl, XMP-prm, XMP-pur, XMP-rdf, XMP-sdc, XMP-seal, +XMP-swf, XMP-tiff, XMP-x, XMP-xmp, XMP-xmpBJ, XMP-xmpDM, XMP-xmpDSA, +XMP-xmpMM, XMP-xmpNote, XMP-xmpPLUS, XMP-xmpRights, XMP-xmpTPg, ZIP, iTunes =item Family 2 (Category): @@ -3021,7 +3032,7 @@ specified by the L</Charset> option. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey +Copyright 2003-2025, Phil Harvey This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AAC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AAC.pm index 2d634d1..5ed9658 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AAC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AAC.pm @@ -163,7 +163,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AES.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AES.pm index 37c89f6..49c33fa 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AES.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AES.pm @@ -477,7 +477,7 @@ main purpose of encryption, so this really can't be considered a bug. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AFCP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AFCP.pm index d2de0f3..71e5dee 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AFCP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AFCP.pm @@ -14,7 +14,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.09'; +$VERSION = '1.10'; sub ProcessAFCP($$); @@ -63,10 +63,10 @@ for the AFCP specification. #------------------------------------------------------------------------------ # Read/write AFCP information in a file # Inputs: 0) ExifTool object reference, 1) dirInfo reference -# (Set 'ScanForAFCP' member in dirInfo to scan from current position for AFCP) +# (Set 'ScanForTrailer' member in dirInfo to scan from current position for AFCP) # Returns: 1 on success, 0 if this file didn't contain AFCP information # -1 on write error or if the offsets were incorrect on reading -# - updates DataPos to point to actual AFCP start if ScanForAFCP is set +# - updates DataPos to point to actual AFCP start if ScanForTrailer is set # - updates DirLen to trailer length # - returns Fixup reference in dirInfo hash when writing sub ProcessAFCP($$) @@ -91,8 +91,8 @@ NoAFCP: for (;;) { $fix = 0; } else { $rtnVal = -1; - # look for start of AXS trailer if 'ScanForAFCP' - last unless $$dirInfo{ScanForAFCP} and $raf->Seek($curPos, 0); + # look for start of AXS trailer if 'ScanForTrailer' + last unless $$dirInfo{ScanForTrailer} and $raf->Seek($curPos, 0); my $actualPos = $curPos; # first look for header right at current position for (;;) { @@ -259,7 +259,7 @@ scanning for AFCP information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AIFF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AIFF.pm index c1638c1..40adbf3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/AIFF.pm @@ -291,7 +291,7 @@ information from AIFF (Audio Interchange File Format) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APE.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APE.pm index 341a994..993c29b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APE.pm @@ -263,7 +263,7 @@ Currently doesn't parse MAC header unless it is at the start of the file. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APP12.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APP12.pm index 8bbd181..502c410 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APP12.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/APP12.pm @@ -306,7 +306,7 @@ APP12 meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ASF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ASF.pm index 46aff79..75cddd7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ASF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ASF.pm @@ -879,7 +879,7 @@ Windows Media Audio (WMA) and Windows Media Video (WMV) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Apple.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Apple.pm index fc11678..e9a8177 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Apple.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Apple.pm @@ -390,7 +390,7 @@ Apple maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Audible.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Audible.pm index 4ab6a0b..b2c61f3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Audible.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Audible.pm @@ -291,7 +291,7 @@ information from Audible audio books. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BMP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BMP.pm index 7394a08..910a3f2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BMP.pm @@ -335,7 +335,7 @@ This module contains definitions required by Image::ExifTool to read BMP =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BPG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BPG.pm index ac1346b..750adb7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BPG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BPG.pm @@ -231,7 +231,7 @@ This module contains definitions required by Image::ExifTool to read BPG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BZZ.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BZZ.pm index fd06fdc..91754c7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BZZ.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BZZ.pm @@ -445,7 +445,7 @@ compression ability). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) Copyright 2002, Leon Bottou and Yann Le Cun Copyright 2001, AT&T Copyright 1999-2001, LizardTech Inc. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BigTIFF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BigTIFF.pm index 9ea8de8..83c449a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BigTIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BigTIFF.pm @@ -282,7 +282,7 @@ information in BigTIFF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm index c1e9e52..87803e2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm @@ -35,7 +35,7 @@ use Image::ExifTool::Sony; use Image::ExifTool::Validate; use Image::ExifTool::MacOS; -$VERSION = '3.59'; +$VERSION = '3.61'; @ISA = qw(Exporter); sub NumbersFirst($$); @@ -84,7 +84,8 @@ my %tweakOrder = ( Nintendo => 'NikonCapture', Pentax => 'Panasonic', SonyIDC => 'Sony', - Unknown => 'SonyIDC', + Vivo => 'SonyIDC', + Unknown => 'Vivo', DNG => 'Unknown', PrintIM => 'ICC_Profile', Vorbis => 'Ogg', @@ -100,6 +101,8 @@ my %tweakOrder = ( MWG => 'Shortcuts', 'FujiFilm::RAF' => 'FujiFilm::RAFHeader', 'FujiFilm::RAFData' => 'FujiFilm::RAF', + 'QuickTime::AudioKeys' => 'QuickTime::Keys', + 'QuickTime::VideoKeys' => 'QuickTime::AudioKeys', ); # list of all recognized Format strings @@ -437,15 +440,16 @@ appropriate table in the config file (see L<example.config|../config.html#PREF> in the full distribution for an example). Note that some tags with the same name but different ID's may exist in the same location, but the family 7 group names may be used to -differentiate these. ExifTool currently writes only top-level metadata in -QuickTime-based files; it extracts other track-specific and timed metadata, -but can not yet edit tags in these locations (with the exception of -track-level date/time tags). +differentiate these. -Beware that the Keys tags are actually stored inside the ItemList in the -file, so deleting the ItemList group as a block (ie. C<-ItemList:all=>) also -deletes Keys tags. Instead, to preserve Keys tags the ItemList tags may be -deleted individually with C<-QuickTime:ItemList:all=>. +ExifTool currently writes +L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and +L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> only as +top-level metadata, but select Keys tags are may be written to the audio or +video track. See the +L<AudioKeys|Image::ExifTool::TagNames/QuickTime AudioKeys Tags> and +L<VideoKeys|Image::ExifTool::TagNames/QuickTime VideoKeys Tags> tags for +more information. Alternate language tags may be accessed for L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and @@ -457,8 +461,8 @@ L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> tags support a language code, but without a country code. If no language code is specified when writing, the default language is written and alternate languages for the tag are deleted. Use the "und" language code to write the default -language without deleting alternate languages. Note that "eng" is treated -as a default language when reading, but not when writing. +language without deleting alternate languages. Note that when reading, +"eng" is also treated as the default language if there is no country code. According to the specification, integer-format QuickTime date/time tags should be stored as UTC. Unfortunately, digital cameras often store local @@ -688,7 +692,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>. ~head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -1340,7 +1344,7 @@ TagID: foreach $tagID (@keys) { $writable = 'yes' if $tw and $writable eq '1' or $writable eq '2'; $writable = '-' . ($tw ? $writable : ''); $writable .= '!' if $tw and ($$tagInfo{Protected} || 0) & 0x01; - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; if (defined $$tagInfo{Permanent}) { $writable .= '^' unless $$tagInfo{Permanent}; } elsif (defined $$table{PERMANENT}) { @@ -1398,7 +1402,7 @@ TagID: foreach $tagID (@keys) { } $writable = "=struct" if $struct; $writable .= '_' if defined $$tagInfo{Flat}; - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; $writable .= ':' if $$tagInfo{Mandatory}; if (defined $$tagInfo{Permanent}) { $writable .= '^' unless $$tagInfo{Permanent}; @@ -1566,7 +1570,7 @@ TagID: foreach $tagID (@keys) { $writable = 'string'; } } - $writable .= '+' if $$tagInfo{List}; + $writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList}; push @vals, "($$tagInfo{Notes})" if $$tagInfo{Notes}; # handle PrintConv lookups in Structure elements my $printConv = $$tagInfo{PrintConv}; @@ -1783,9 +1787,10 @@ sub NumbersFirst($$) $rtnVal = $numbersFirst; } else { my ($a2, $b2) = ($a, $b); - # expand numbers to 3 digits (with restrictions to avoid messing up ascii-hex tags) - $a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ )?[.0-9 ]*$/ and length($a2)<16; - $b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ )?[.0-9 ]*$/ and length($b2)<16; + # expand numbers to 3 digits (with restrictions to avoid messing up + # ascii-hex tags -- Nikon LensID's are 23 characters long) + $a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($a2)<23; + $b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($b2)<23; $caseInsensitive and $rtnVal = (lc($a2) cmp lc($b2)); $rtnVal or $rtnVal = ($a2 cmp $b2); } @@ -2811,7 +2816,7 @@ Returned list of writable pseudo tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CBOR.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CBOR.pm index 5f98009..c270e60 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CBOR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CBOR.pm @@ -324,7 +324,7 @@ specification. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Canon.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Canon.pm index 4b25c6a..f9047c2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Canon.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Canon.pm @@ -88,7 +88,7 @@ sub ProcessCTMD($$$); sub ProcessExifInfo($$$); sub SwapWords($); -$VERSION = '4.86'; +$VERSION = '4.87'; # Note: Removed 'USM' from 'L' lenses since it is redundant - PH # (or is it? Ref 32 shows 5 non-USM L-type lenses) @@ -632,8 +632,10 @@ $VERSION = '4.86'; '61182.55' => 'Canon RF-S 10-18mm F4.5-6.3 IS STM', #42 '61182.56' => 'Canon RF 35mm F1.4 L VCM', #42 '61182.57' => 'Canon RF 70-200mm F2.8 L IS USM Z', #42 - '61182.58' => 'Canon RF 50mm F1.4 L VCM', #42 - '61182.59' => 'Canon RF 24mm F1.4 L VCM', #42 + '61182.58' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42 + '61182.59' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42 + '61182.60' => 'Canon RF 50mm F1.4 L VCM', #42 + '61182.61' => 'Canon RF 24mm F1.4 L VCM', #42 65535 => 'n/a', ); @@ -7023,6 +7025,8 @@ my %ciMaxFocal = ( 317 => 'Canon RF-S 3.9mm F3.5 STM DUAL FISHEYE', #42 318 => 'Canon RF 28-70mm F2.8 IS STM', #42 319 => 'Canon RF 70-200mm F2.8 L IS USM Z', #42 + 320 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42 + 321 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42 325 => 'Canon RF 50mm F1.4 L VCM', #42 326 => 'Canon RF 24mm F1.4 L VCM', #42 # Note: add new RF lenses to %canonLensTypes with ID 61182 @@ -10591,7 +10595,7 @@ Canon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonCustom.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonCustom.pm index f091f82..d509e2b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonCustom.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonCustom.pm @@ -2873,7 +2873,7 @@ Image::ExifTool to read this information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonRaw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonRaw.pm index 2c18657..241b35d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonRaw.pm @@ -888,7 +888,7 @@ tags.) =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm index 9dca19c..49c0952 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm @@ -2288,7 +2288,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CaptureOne.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CaptureOne.pm index b9253da..a4db319 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CaptureOne.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/CaptureOne.pm @@ -221,7 +221,7 @@ settings files (COS). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Casio.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Casio.pm index 13a4498..ee8c073 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Casio.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Casio.pm @@ -2034,7 +2034,7 @@ Casio maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Charset.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Charset.pm index 4e7e5ce..fb64108 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Charset.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Charset.pm @@ -422,7 +422,7 @@ when decoding certain types of information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DICOM.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DICOM.pm index 3bac779..9016493 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DICOM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DICOM.pm @@ -3853,7 +3853,7 @@ No translation of special characters sets is done. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DJI.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DJI.pm index ee89bf4..7a64b67 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DJI.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DJI.pm @@ -5,22 +5,30 @@ # # Revisions: 2016-07-25 - P. Harvey Created # 2017-06-23 - PH Added XMP tags +# 2024-12-04 - PH Added protobuf tags #------------------------------------------------------------------------------ package Image::ExifTool::DJI; use strict; -use vars qw($VERSION); +use vars qw($VERSION %knownProtocol); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; use Image::ExifTool::XMP; use Image::ExifTool::GPS; use Image::ExifTool::Protobuf; -$VERSION = '1.10'; +$VERSION = '1.12'; sub ProcessDJIInfo($$$); +%knownProtocol = ( + 'dvtm_ac203.proto' => 1, # Osmo Action 4 + 'dvtm_ac204.proto' => 1, # Osmo Action 5 + 'dvtm_AVATA2.proto' => 1, # Avanta 2 + 'dvtm_wm265e.proto' => 1, # Mavic 3 +); + my %convFloat2 = ( PrintConv => 'sprintf("%+.2f", $val)', PrintConvInv => '$val', @@ -189,47 +197,50 @@ my %convFloat2 = ( # metadata in protobuf format (djmd and dbgi meta types, ref PH) %Image::ExifTool::DJI::Protobuf = ( - GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Location' }, + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Camera' }, TAG_PREFIX => '', PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, NOTES => q{ - Tags found in protobuf-format DJI meta djmd and dbgi timed metadata. Only a - few tags are currently known, but unknown djmd tags may be extracted by - setting the Unknown option to 1 (or 2 to also extract unknown dbgi debug - tags). Tag ID's are composed of the corresponding .proto file name combined - with the hierarchical protobuf field numbers. The "dvtm_AVATA2.proto" file - is used by the DJI Avanta 2, and "dvtm_ac203.proto" by the OsmoAction4. + Tags found in protobuf-format DJI djmd and dbgi timed metadata. The known + tags listed below are extracted by default, but unknown djmd tags may be + extracted as well by setting the Unknown option to 1, or 2 to also extract + unknown dbgi debug tags. Tag ID's are composed of the corresponding .proto + file name combined with the hierarchical protobuf field numbers. + + ExifTool currently extracts timed GPS plus a few other tags from DJI devices + which use the following protocols: dvtm_AVATA2.proto (Avanta 2), + dvtm_ac203.proto (Osmo Action 4), dvtm_ac204.proto (Osmo Action 5) and + dvtm_wm265e.proto (Mavic 3). + + Note that with the protobuf format, numerical tags missing from the output + for a given protocol should be considered to have the default value of 0. + }, + Protocol => { + RawConv => q{ + unless ($Image::ExifTool::DJI::knownProtocol{$val}) { + $self->Warn("Unknown protocol $val (please submit sample for testing)"); + } + return $val; + }, }, - Protocol => { }, +# +# Osmo Action 4 +# + 'dvtm_ac203_1-1-5' => 'SerialNumber', # (NC) # dvtm_ac203_1-1-6 - some version number 'dvtm_ac203_1-1-10' => 'Model', - 'dvtm_ac203_2-3-1' => { Name => 'FrameWidth', Format => 'unsigned' }, - 'dvtm_ac203_2-3-2' => { Name => 'FrameHeight', Format => 'unsigned' }, - 'dvtm_ac203_2-3-3' => { Name => 'FrameRate', Format => 'float' }, - # dvtm_ac203_3-4-1-4 - model code? - 'dvtm_ac203_3-4-2-1-1' => { - Name => 'CoordinateUnits', - Format => 'unsigned', - # don't extract this -- just convert to degrees - RawConv => '$$self{CoordUnits} = $val; undef', - Hidden => 1, - # PrintConv => { 0 => 'Radians', 1 => 'Degrees' }, - }, - 'dvtm_ac203_3-4-2-1-2' => { - Name => 'GPSLatitude', - Format => 'double', - # set ExifTool GPSLatitude/GPSLongitude members so GPSDateTime will be generated if necessary - RawConv => '$$self{GPSLatitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) - PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', + 'dvtm_ac203_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, }, - 'dvtm_ac203_3-4-2-1-3' => { - Name => 'GPSLongitude', - Format => 'double', - RawConv => '$$self{GPSLongitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) - PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")', + # dvtm_ac203_3-4-1-4 - model code? + 'dvtm_ac203_3-4-2-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, }, 'dvtm_ac203_3-4-2-2' => { Name => 'GPSAltitude', + Groups => { 2 => 'Location' }, Format => 'unsigned', ValueConv => '$val / 1000', }, @@ -241,38 +252,131 @@ my %convFloat2 = ( ValueConv => '$val =~ tr/-/:/; $val', PrintConv => '$self->ConvertDateTime($val)', }, +# +# Osmo Action 5 +# + 'dvtm_ac204_1-1-5' => 'SerialNumber', # (NC) + # dvtm_ac204_1-1-6 - some version number + 'dvtm_ac204_1-1-10' => 'Model', + 'dvtm_ac204_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, + # dvtm_ac204_3-4-1-4 - model code? + 'dvtm_ac204_3-4-2-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, + # dvtm_ac204_3-2-4-1 - shutter speed? (rational) + 'dvtm_ac204_3-4-2-2' => { + Name => 'GPSAltitude', + Groups => { 2 => 'Location' }, + Format => 'unsigned', + ValueConv => '$val / 1000', + }, + 'dvtm_ac204_3-4-2-6-1' => { + Name => 'GPSDateTime', + Format => 'string', + Groups => { 2 => 'Time' }, + RawConv => '$$self{GPSDateTime} = $val', + ValueConv => '$val =~ tr/-/:/; $val', + PrintConv => '$self->ConvertDateTime($val)', + }, +# +# Avanta 2 +# # dvtm_AVATA2_1-1-2 - some version number # dvtm_AVATA2_1-1-3 - some version number + 'dvtm_AVATA2_1-1-5' => 'SerialNumber', # (NC) 'dvtm_AVATA2_1-1-10' => 'Model', - 'dvtm_AVATA2_2-2-3-1' => 'SerialNumber', # (NC) - 'dvtm_AVATA2_2-3-1' => { Name => 'FrameWidth', Format => 'unsigned' }, - 'dvtm_AVATA2_2-3-2' => { Name => 'FrameHeight', Format => 'unsigned' }, - 'dvtm_AVATA2_2-3-3' => { Name => 'FrameRate', Format => 'float' }, + # dvtm_AVATA2_2-2-1-4 - model code? + 'dvtm_AVATA2_2-2-3-1' => 'SerialNumber2', # (NC) + 'dvtm_AVATA2_2-3' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, # dvtm_AVATA2_3-1-1 - frame number (starting at 1) 'dvtm_AVATA2_3-1-2' => { # (also 3-2-1-6 and 3-4-1-6) Name => 'TimeStamp', + Groups => { 2 => 'Time' }, Format => 'unsigned', # milliseconds, but I don't know what the zero is ValueConv => '$val / 1e6', }, # dvtm_AVATA2_3-2-1-4 - model code? + # dvtm_AVATA2_3-2-1-5 - frame rate? + # dvtm_AVATA2_3-2-4-1 - shutter speed? (rational) # dvtm_AVATA2_3-4-1-4 - model code? - 'dvtm_AVATA2_3-4-4-1-1' => { # (NC) (default seems to be radians if missing) - Name => 'CoordinateDegrees', + # dvtm_AVATA2_3-4-3-1,2,3 - YPR? (int64s) + 'dvtm_AVATA2_3-4-4-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, +# +# Mavic 3 +# + 'dvtm_wm265e_1-1-5' => 'SerialNumber', # (confirmed) + 'dvtm_wm265e_1-1-10' => 'Model', + 'dvtm_wm265e_2-2' => { + Name => 'FrameInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::FrameInfo' }, + }, + # dvtm_wm265e_3-2-1-4 - model code? + 'dvtm_wm265e_3-2-2-1' => { Name => 'ISO', Format => 'float' }, + 'dvtm_wm265e_3-2-3-1' => { + Name => 'ShutterSpeed', + Format => 'rational', + ValueConv => '$val =~ m{(.*)/(.*)} ? $1 / $2 : $val', + PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)', + }, + # dvtm_wm265e_3-2-5-1 - unknown rational (xxxx / 1000) + 'dvtm_wm265e_3-2-6-1' => { Name => 'DigitalZoom', Format => 'float' }, + 'dvtm_wm265e_3-3-4-1' => { + Name => 'GPSInfo', + SubDirectory => { TagTable => 'Image::ExifTool::DJI::GPSInfo' }, + }, + 'dvtm_wm265e_3-3-3-1' => { Name => 'DroneRoll', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-3-2' => { Name => 'DronePitch', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-3-3' => { Name => 'DroneYaw', Format => 'int64s', ValueConv => '$val/10' }, + 'dvtm_wm265e_3-3-4-2' => { Name => 'AbsoluteAltitude', ValueConv => '$val / 1000' }, + 'dvtm_wm265e_3-3-5-1' => { Name => 'RelativeAltitude', Format => 'float', ValueConv => '$val / 1000' }, + 'dvtm_wm265e_3-4-3-1' => { Name => 'GimbalPitch',Format => 'int64s', ValueConv => '$val / 10' }, + 'dvtm_wm265e_3-4-3-2' => { Name => 'GimbalRoll', Format => 'int64s', ValueConv => '$val / 10' }, + 'dvtm_wm265e_3-4-3-3' => { Name => 'GimbalYaw', Format => 'int64s', ValueConv => '$val / 10' }, +); + +%Image::ExifTool::DJI::FrameInfo = ( + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Video' }, + PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, + VARS => { HEX_ID => 0 }, + 1 => { Name => 'FrameWidth', Format => 'unsigned' }, + 2 => { Name => 'FrameHeight', Format => 'unsigned' }, + 3 => { Name => 'FrameRate', Format => 'float' }, +); + +%Image::ExifTool::DJI::GPSInfo = ( + GROUPS => { 0 => 'Protobuf', 1 => 'DJI', 2 => 'Location' }, + PROCESS_PROC => \&Image::ExifTool::Protobuf::ProcessProtobuf, + VARS => { HEX_ID => 0 }, + 1 => { + Name => 'CoordinateUnits', Format => 'unsigned', - RawConv => '$$self{CoordDegrees} = $val; undef', - Hidden => 1, + Notes => 'not extracted, but used internally to convert coordinates to degrees', + # don't extract this -- just convert to degrees + RawConv => '$$self{CoordUnits} = $val; undef', + # PrintConv => { 0 => 'Radians', 1 => 'Degrees' }, }, - 'dvtm_AVATA2_3-4-4-1-2' => { + 2 => { Name => 'GPSLatitude', Format => 'double', - RawConv => '$$self{GPSLatitude} = $$self{CoordDegrees} ? $val : $val * 180 / 3.141592653589793', # (NC) + # set ExifTool GPSLatitude/GPSLongitude members so GPSDateTime will be generated if necessary + RawConv => '$$self{GPSLatitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', }, - 'dvtm_AVATA2_3-4-4-1-3' => { + 3 => { Name => 'GPSLongitude', Format => 'double', - RawConv => '$$self{GPSLongitude} = $$self{CoordDegrees} ? $val : $val * 180 / 3.141592653589793', # (NC) + RawConv => '$$self{GPSLongitude} = $$self{CoordUnits} ? $val : $val * 180 / 3.141592653589793', # (NC) PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")', }, ); @@ -328,7 +432,7 @@ the maker notes in images from some DJI Phantom drones. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DNG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DNG.pm index 4b937ff..783e1c1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DNG.pm @@ -849,7 +849,7 @@ information in DNG (Digital Negative) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DPX.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DPX.pm index 4c81b25..5ce3939 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DPX.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DPX.pm @@ -225,7 +225,7 @@ metadata from DPX (Digital Picture Exchange) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DV.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DV.pm index 359a6a9..91b2604 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DV.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DV.pm @@ -291,7 +291,7 @@ information from DV (raw Digital Video) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DarwinCore.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DarwinCore.pm index 54bdad0..33d71da 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DarwinCore.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DarwinCore.pm @@ -372,7 +372,7 @@ This file contains tag definitions for the Darwin Core XMP namespace. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DjVu.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DjVu.pm index b34aac5..cf566ef 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DjVu.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/DjVu.pm @@ -353,7 +353,7 @@ Image::ExifTool::AIFF. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/EXE.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/EXE.pm index 4665398..1a856dd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/EXE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/EXE.pm @@ -13,6 +13,7 @@ # 5) http://msdn.microsoft.com/en-us/library/ms809762.aspx # 6) http://code.google.com/p/pefile/ # 7) http://www.codeproject.com/KB/DLL/showver.aspx +# 8) https://learn.microsoft.com/en-us/windows/win32/debug/pe-format #------------------------------------------------------------------------------ package Image::ExifTool::EXE; @@ -21,7 +22,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.19'; +$VERSION = '1.21'; sub ProcessPEResources($$); sub ProcessPEVersion($$); @@ -171,6 +172,13 @@ my %languageCode = ( '100C' => 'French (Swiss)', ); +my %int32uTime = ( + Format => 'int32u', + Groups => { 0 => 'EXE', 1 => 'EXE', 2 => 'Time' }, + ValueConv => 'ConvertUnixTime($val,1)', + PrintConv => '$self->ConvertDateTime($val)', +); + # Information extracted from PE COFF (Windows EXE) file header %Image::ExifTool::EXE::Main = ( PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, @@ -215,13 +223,7 @@ my %languageCode = ( 0xc0ee => 'clr pure MSIL', }, }, - 2 => { - Name => 'TimeStamp', - Format => 'int32u', - Groups => { 2 => 'Time' }, - ValueConv => 'ConvertUnixTime($val,1)', - PrintConv => '$self->ConvertDateTime($val)', - }, + 2 => { Name => 'TimeStamp', %int32uTime }, 9 => { Name => 'ImageFileCharacteristics', # ref https://docs.microsoft.com/en-us/windows/desktop/api/winnt/ns-winnt-_image_file_header @@ -243,6 +245,10 @@ my %languageCode = ( 15 => 'Bytes reversed hi', }}, }, +# +# optional header starts at index 10 +# (note: all extracted tags are the same for 32 and 64-bit versions of the optional header) +# 10 => { Name => 'PEType', PrintHex => 1, @@ -308,6 +314,42 @@ my %languageCode = ( }, ); +# information extracted from newer CodeView PDB70 ("RSDS") debug entry +%Image::ExifTool::EXE::DebugRSDS = ( + GROUPS => { 2 => 'Other' }, + PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, + NOTES => 'CodeView RSDS debug information found in some Windows EXE files.', + 0 => { + Name => 'PDBModifyDate', + Notes => 'Taken from debug directory entry pointing to RSDS record.', + %int32uTime, + }, + 20 => { Name => 'PDBAge', Format => 'int32u' }, + 24 => { Name => 'PDBFileName', Format => 'string' }, +); + +# information extracted from older CodeView PDB20 ("NB10") debug entry +%Image::ExifTool::EXE::DebugNB10 = ( + GROUPS => { 2 => 'Other' }, + PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, + NOTES => 'CodeView NB10 debug information found in some Windows EXE files.', + 0 => { + Name => 'PDBModifyDate', + Notes => 'Taken from debug directory entry pointing to NB10 record.', + %int32uTime, + }, + 8 => { Name => 'PDBCreateDate',%int32uTime }, + 12 => { Name => 'PDBAge', Format => 'int32u' }, + 16 => { Name => 'PDBFileName', Format => 'string' }, +); + +%Image::ExifTool::EXE::Misc = ( + GROUPS => { 2 => 'Other' }, + VARS => { ID_LABEL => 'Index1' }, + NOTES => 'Miscellaneous CodeView debug information in Windows EXE files.', + 12 => 'EXEFileName', +); + # PE file version information (ref 6) %Image::ExifTool::EXE::PEVersion = ( PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData, @@ -974,6 +1016,22 @@ sub ProcessPEVersion($$) return 1; } +#------------------------------------------------------------------------------ +# Get actual file offset given a virtual address in a PE file +# Inputs: 0) virtual address, 1) section list ref +# Returns: absolute file offset or undef on error +sub GetFileOffset($$) +{ + my ($addr, $sections) = @_; + my $section; + foreach $section (@$sections) { + next unless $addr >= $$section{VirtualAddress} and + $addr < $$section{VirtualAddress} + $$section{Size}; + return $addr + $$section{Base} - $$section{VirtualAddress}; + } + return undef; +} + #------------------------------------------------------------------------------ # Process Windows PE Resources # Inputs: 0) ExifTool object ref, 1) dirInfo ref @@ -994,6 +1052,7 @@ sub ProcessPEResources($$) my $nameEntries = Get16u(\$buff, 12); my $idEntries = Get16u(\$buff, 14); my $count = $nameEntries + $idEntries; + return 0 if $count > 10000; $raf->Read($buff, $count * 8) == $count * 8 or return 0; # loop through all resource entries for ($item=0; $item<$count; ++$item) { @@ -1023,18 +1082,12 @@ sub ProcessPEResources($$) # get position of this resource in the file my $buf2; $raf->Seek($entryPos + $base, 0) and $raf->Read($buf2, 16) == 16 or return 0; - my $off = Get32u(\$buf2, 0); + my $addr = Get32u(\$buf2, 0); my $len = Get32u(\$buf2, 4); # determine which section this is in so we can convert the virtual address - my ($section, $filePos); - foreach $section (@{$$dirInfo{Sections}}) { - next unless $off >= $$section{VirtualAddress} and - $off < $$section{VirtualAddress} + $$section{Size}; - $filePos = $off + $$section{Base} - $$section{VirtualAddress}; - last; - } - return 0 unless $filePos; - $raf->Seek($filePos, 0) and $raf->Read($buf2, $len) == $len or return 0; + my $fileOff = GetFileOffset($addr, $$dirInfo{Sections}); + return 0 unless $fileOff; + $raf->Seek($fileOff, 0) and $raf->Read($buf2, $len) == $len or return 0; ProcessPEVersion($et, { DataPt => \$buf2, DataLen => $len, @@ -1050,7 +1103,8 @@ sub ProcessPEResources($$) #------------------------------------------------------------------------------ # Process Windows PE file data dictionary # Inputs: 0) ExifTool object ref, 1) dirInfo ref -# Returns: true on success +# Returns: true on success or if the PE resources didn't exist, or false on error +# processing the PE resources sub ProcessPEDict($$) { my ($et, $dirInfo) = @_; @@ -1078,6 +1132,7 @@ sub ProcessPEDict($$) Sections => \@sections, ); } + $$dirInfo{Sections} = \@sections; # return section information # process the first resource section ProcessPEResources($et, \%dirInfo) or return 0 if %dirInfo; return 1; @@ -1228,11 +1283,12 @@ sub ProcessEXE($$) # read the rest of the optional header if necessary my $optSize = Get16u(\$buff, 20); my $more = $optSize + 24 - $size; + my $magic = 0; if ($more > 0) { if ($raf->Read($buf2, $more) == $more) { $buff .= $buf2; $size += $more; - my $magic = Get16u(\$buff, 24); + $magic = Get16u(\$buff, 24); # verify PE magic number unless ($magic == 0x107 or $magic == 0x10b or $magic == 0x20b) { $et->Warn('Unknown PE magic number'); @@ -1246,21 +1302,54 @@ sub ProcessEXE($$) # process PE COFF file header $tagTablePtr = GetTagTable('Image::ExifTool::EXE::Main'); %dirInfo = ( - DataPt => \$buff, - DataPos => $raf->Tell() - $size, - DataLen => $size, + DataPt => \$buff, + DataPos => $raf->Tell() - $size, + DataLen => $size, DirStart => 4, - DirLen => $size - 4, + DirLen => $size - 4, ); $et->ProcessDirectory(\%dirInfo, $tagTablePtr); - # process data dictionary my $num = Get16u(\$buff, 6); # NumberOfSections - if ($raf->Read($buff, 40 * $num) == 40 * $num) { - %dirInfo = ( - RAF => $raf, - DataPt => \$buff, - ); - ProcessPEDict($et, \%dirInfo) or $et->Warn('Error processing PE data dictionary'); + # image data directory entry for debug info is index 6, + # so offset is 4 bytes + 20 byte header + 96 bytes into PE32 optional + # header (or 112 bytes for PE32+) + 6 * 8 bytes into data directory + my $dirEntry = $magic == 0x20b ? 184 : 168; + my ($addr, $len, $pos, $buf2); # virtual address/size of debug section + if (length($buff) >= $dirEntry + 8) { + $addr = Get32u(\$buff, $dirEntry); + $len = Get32u(\$buff, $dirEntry+4); + } + # process data dictionary + # (ref https://www.debuginfo.com/articles/debuginfomatch.html) + return 1 unless $raf->Read($buff, 40 * $num) == 40 * $num; + %dirInfo = ( RAF => $raf, DataPt => \$buff ); + ProcessPEDict($et, \%dirInfo) or $et->Warn('Error processing PE resources'); + # dive into debug section to extract pdb info if available + return 1 unless $addr and $len < 2800 and $dirInfo{Sections} and + ($magic == 0x10b or $magic == 0x20b); + # get file offset for debug section + my $off = GetFileOffset($addr, $dirInfo{Sections}); + return 1 unless $off and $raf->Seek($off,0) and + $raf->Read($buff,$len) == $len; + for ($pos=0; $pos+28<=$len; $pos+=28) { + my $type = Get32u(\$buff,$pos+12); + next unless $type == 2 or $type == 4; # (CodeView debug data) + my ($n, $of) = (Get32u(\$buff,$pos+16), Get32u(\$buff,$pos+24)); + next unless $n < 1e4 and $raf->Seek($of,0) and $raf->Read($buf2,$n) == $n; + if ($type == 2) { # CodeView debug info + next unless $buf2 =~ /^(RSDS|NB10)/; + $tagTablePtr = GetTagTable("Image::ExifTool::EXE::Debug$1"); + substr($buf2,0,4) = substr($buff,$pos+4,4); # use timestamp from debug dir + %dirInfo = ( DataPt => \$buf2, DataPos => $of ); + $et->ProcessDirectory(\%dirInfo, $tagTablePtr); + } else { # misc debug info + next unless $n > 12; + my $exe = substr($buf2,12); + $exe = $et->Decode($exe, 'UCS2') if Get32u(\$buf2,8); + $exe =~ s/\0.*//; # truncate at null + $tagTablePtr = GetTagTable('Image::ExifTool::EXE::Misc'); + $et->HandleTag($tagTablePtr, 12, $exe, DataPt => \$buf2, DataPos => $of); + } } return 1; } @@ -1454,7 +1543,7 @@ library files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -1477,6 +1566,8 @@ under the same terms as Perl itself. =item L<http://www.codeproject.com/KB/DLL/showver.aspx> +=item L<https://learn.microsoft.com/en-us/windows/win32/debug/pe-format> + =back =head1 SEE ALSO diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Exif.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Exif.pm index 5686c63..af323d8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Exif.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Exif.pm @@ -57,7 +57,7 @@ use vars qw($VERSION $AUTOLOAD @formatSize @formatName %formatNumber %intFormat use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::MakerNotes; -$VERSION = '4.55'; +$VERSION = '4.56'; sub ProcessExif($$$); sub WriteExif($$$); @@ -246,10 +246,13 @@ $formatName[129] = 'utf8'; # (Exif 3.0) # 34888,34889 - ESRI reserved 34892 => 'Lossy JPEG', # (DNG 1.4) 34925 => 'LZMA2', #LibTiff - 34926 => 'Zstd', #LibTiff - 34927 => 'WebP', #LibTiff + 34926 => 'Zstd (old)', #LibTiff + 34927 => 'WebP (old)', #LibTiff 34933 => 'PNG', # (TIFF mail list) 34934 => 'JPEG XR', # (TIFF mail list) + 50000 => 'Zstd', #LibTiff 4.7 + 50001 => 'WebP', #LibTiff 4.7 + 50002 => 'JPEG XL (old)', #LibTiff 4.7 52546 => 'JPEG XL', # (DNG 1.7) 65000 => 'Kodak DCR Compressed', #PH 65535 => 'Pentax PEF Compressed', #Jens @@ -7140,7 +7143,7 @@ EXIF and TIFF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FITS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FITS.pm index 3008b8b..e474027 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FITS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FITS.pm @@ -137,7 +137,7 @@ information from FITS (Flexible Image Transport System) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLAC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLAC.pm index 9cfc370..6dd8801 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLAC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLAC.pm @@ -298,7 +298,7 @@ information from Free Lossless Audio Codec (FLAC) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIF.pm index 49d756b..11d21d9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIF.pm @@ -329,7 +329,7 @@ meta information in FLIF (Free Lossless Image Format) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIR.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIR.pm index 4d020be..e5a61c9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FLIR.pm @@ -1633,7 +1633,7 @@ Systems Inc. thermal image files (FFF, FPF and JPEG format). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Fixup.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Fixup.pm index 0ba4fb1..8a57e92 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Fixup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Fixup.pm @@ -354,7 +354,7 @@ linear list when ApplyFixups() is called. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Flash.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Flash.pm index d32a7f0..1373ea0 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Flash.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Flash.pm @@ -721,7 +721,7 @@ will add AMF3 support. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FlashPix.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FlashPix.pm index b1767ac..5dd1d0e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FlashPix.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FlashPix.pm @@ -2557,7 +2557,7 @@ JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Font.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Font.pm index d333388..921ba4b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Font.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Font.pm @@ -633,7 +633,7 @@ extracted from these formats. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FotoStation.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FotoStation.pm index 118db6d..b326349 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FotoStation.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FotoStation.pm @@ -243,7 +243,7 @@ write information from the FotoWare FotoStation trailer. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FujiFilm.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FujiFilm.pm index 9a6ede8..4d8ab08 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FujiFilm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/FujiFilm.pm @@ -1959,7 +1959,7 @@ FujiFilm maker notes in EXIF information, and to read/write FujiFilm RAW =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GE.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GE.pm index 04abcb1..bba4558 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GE.pm @@ -68,7 +68,7 @@ General Imaging maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIF.pm index 60c535d..5dc54b4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIF.pm @@ -596,7 +596,7 @@ write GIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIMP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIMP.pm index 85e57d1..7d8e37c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GIMP.pm @@ -270,7 +270,7 @@ GIMP software. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GM.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GM.pm index 10e44e0..a9c98ac 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GM.pm @@ -531,7 +531,7 @@ metadata from videos written by some GM models such as Corvette and Camero. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GPS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GPS.pm index af546e7..55af448 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GPS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GPS.pm @@ -619,7 +619,7 @@ GPS (Global Positioning System) meta information in EXIF data. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GeoTiff.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GeoTiff.pm index b3f468c..72e7849 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GeoTiff.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GeoTiff.pm @@ -2242,7 +2242,7 @@ coordinates. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm index ef1184f..4bdcbb5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm @@ -71,7 +71,7 @@ package Image::ExifTool::Geolocation; use strict; use vars qw($VERSION $geoDir $altDir $dbInfo); -$VERSION = '1.08'; # (this is the module version number, not the database version) +$VERSION = '1.09'; # (this is the module version number, not the database version) my $debug; # set to output processing time for testing @@ -463,7 +463,7 @@ sub GetAltNames($;$) sub Geolocate($;$) { my ($arg, $opts) = @_; - my ($city, @exact, %regex, @multiCity, $other, $idx, @cargs, $useLastFound); + my ($city, @exact, %regex, @multiCity, $other, $idx, @cargs); my ($minPop, $minDistU, $minDistC, @matchParms, @coords, %fcOK, $both); my ($pop, $maxDist, $multi, $fcodes, $altNames, @startTime); @@ -594,8 +594,16 @@ Entry: for (; $i<@cityList; ++$i) { } @startTime and printf("= Processing time: %.3f sec\n", Time::HiRes::tv_interval(\@startTime)); if (%lastFound) { - @coords == 2 and $useLastFound = 1, last; # continue to use coords with last city matches + last if @coords == 2; # continue to use coords with last city matches scalar(keys %lastFound) > 200 and warn("Too many matching cities\n"), return(); + # return nearby cities if "num=" is used and only one match found + if ($num > 1 and scalar(keys %lastFound) == 1) { + my ($i) = keys %lastFound; + my @entry = GetEntry($i); + @coords = @entry[8,9]; + SortDatabase('Latitude'); # (make sure we are sorted by latitude) + last; + } unless (@lastByPop) { @lastByPop = sort { $lastFound{$b} cmp $lastFound{$a} or $cityList[$a] cmp $cityList[$b] } keys %lastFound; } @@ -777,7 +785,7 @@ on the first call. Sort database in specified order. - Image::ExifTool::Geolocation::ReadDatabase('City'); + Image::ExifTool::Geolocation::SortDatabase('City'); =over 4 @@ -924,9 +932,10 @@ to the argument list: both to determine the closest city matching the specified name(s) instead of using GPS only. - 'num=##' - When the search includes GPS coordinates, return the nearest - ## cities instead of just the closest one. Returned cities - are in the order from nearest to farthest. + 'num=##' - When the search includes GPS coordinates, or when a single + city is matched by name, return the nearest ## cities instead + of just the closest or named one. Returned cities are in the + order from nearest to farthest. See L<https://exiftool.org/geolocation.html#Read> for more details. @@ -1006,7 +1015,7 @@ the input arguments of the AddEntry method. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The associated database files are diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm index 077241a..df7faa6 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm @@ -1561,7 +1561,7 @@ user-defined tag GPSRoll, must be active. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GoPro.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GoPro.pm index aab6f29..323e32c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GoPro.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/GoPro.pm @@ -860,7 +860,7 @@ metadata from GoPro MP4 videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/H264.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/H264.pm index aefe58b..c00fdbb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/H264.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/H264.pm @@ -1123,7 +1123,7 @@ information from H.264 video streams. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HP.pm index afc40db..a350f5d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HP.pm @@ -250,7 +250,7 @@ Hewlett-Packard maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HTML.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HTML.pm index a58ce1d..f07f214 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HTML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HTML.pm @@ -555,7 +555,7 @@ meta information from HTML documents. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HtmlDump.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HtmlDump.pm index 3e805a4..c5adaf1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HtmlDump.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/HtmlDump.pm @@ -920,7 +920,7 @@ page. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICC_Profile.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICC_Profile.pm index c0b683c..7b122d1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICC_Profile.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICC_Profile.pm @@ -1436,7 +1436,7 @@ data created on one device into another device's native color space. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICO.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICO.pm index cc918fe..50e6c17 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICO.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ICO.pm @@ -121,7 +121,7 @@ information from Windows ICO (icon) and CUR (cursor) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ID3.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ID3.pm index a14929b..ae3ff3a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ID3.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ID3.pm @@ -18,7 +18,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.62'; +$VERSION = '1.63'; sub ProcessID3v2($$$); sub ProcessPrivate($$$); @@ -1278,9 +1278,9 @@ sub ProcessID3v2($$$) my $enc = unpack('C', $val); my ($tag, $url); if ($enc == 1 or $enc == 2) { - ($tag, $url) = ($tag =~ /^(.(?:..)*?)\0\0(.*)/s); + ($tag, $url) = ($val =~ /^(.(?:..)*?)\0\0(.*)/s); } else { - ($tag, $url) = ($tag =~ /^(..*?)\0(.*)/s); + ($tag, $url) = ($val =~ /^(..*?)\0(.*)/s); } unless (defined $tag and defined $url) { $et->Warn("Invalid $id frame value"); @@ -1293,7 +1293,7 @@ sub ProcessID3v2($$$) $tagInfo = $$tagTablePtr{$id} || AddTagToTable($tagTablePtr, $id, MakeTagName($tag)); } $url =~ s/\0.*//s; - $val = $url; + $val = $et->Decode($url, 'Latin'); } elsif ($id =~ /^W/) { $val =~ s/\0.*//s; # truncate at null } elsif ($id =~ /^(COM|COMM|ULT|USLT)$/) { @@ -1746,7 +1746,7 @@ other types of audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/IPTC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/IPTC.pm index 0cb24ec..2762659 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/IPTC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/IPTC.pm @@ -15,7 +15,7 @@ use strict; use vars qw($VERSION $AUTOLOAD %iptcCharset); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.58'; +$VERSION = '1.59'; %iptcCharset = ( "\x1b%G" => 'UTF8', @@ -1057,7 +1057,7 @@ sub ProcessIPTC($$$) my $verbose = $et->Options('Verbose'); my $validate = $et->Options('Validate'); my $success = 0; - my ($lastRec, $recordPtr, $recordName); + my ($lastRec, $recordPtr, $recordName, %seen); $verbose and $dirInfo and $et->VerboseDir('IPTC', 0, $$dirInfo{DirLen}); @@ -1083,7 +1083,7 @@ sub ProcessIPTC($$$) $et->FoundTag('CurrentIPTCDigest', $md5); } } else { - if (($Image::ExifTool::MWG::strict or $et->Options('Validate')) and + if (($Image::ExifTool::MWG::strict or $validate) and $$et{FILE_TYPE} =~ /^(JPEG|TIFF|PSD)$/) { if ($Image::ExifTool::MWG::strict) { @@ -1186,8 +1186,11 @@ sub ProcessIPTC($$$) # - no Name so name is generated automatically with decimal tag number AddTagToTable($recordPtr, $tag, { Unknown => 1 }); } - my $tagInfo = $et->GetTagInfo($recordPtr, $tag); + if ($validate and not $$tagInfo{List} and not $$tagInfo{Unknown}) { + $et->Warn("Multiple IPTC $$tagInfo{Name} tags") if $seen{$tagInfo}; + $seen{$tagInfo} = 1; + } my $format; # (could use $$recordPtr{FORMAT} if no Format below, but don't do this to # be backward compatible with improperly written PhotoMechanic tags) @@ -1284,7 +1287,7 @@ image files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ISO.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ISO.pm index eb5631b..1df15d4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ISO.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ISO.pm @@ -184,7 +184,7 @@ information from ISO 9660 disk images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ITC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ITC.pm index d01525c..6e65196 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ITC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ITC.pm @@ -191,7 +191,7 @@ information (including artwork images) from iTunes Cover Flow files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Import.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Import.pm index 3a2c31e..15a0589 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Import.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Import.pm @@ -12,7 +12,7 @@ require Exporter; use vars qw($VERSION @ISA @EXPORT_OK); -$VERSION = '1.13'; +$VERSION = '1.14'; @ISA = qw(Exporter); @EXPORT_OK = qw(ReadCSV ReadJSON); @@ -80,14 +80,15 @@ sub ReadCSV($$;$$) } if (@tags) { # save values for each tag + $fileInfo{_ordered_keys_} = [ ]; for ($i=0; $i<@vals and $i<@tags; ++$i) { # ignore empty entries unless missingValue is empty too next unless length $vals[$i] or defined $missingValue and $missingValue eq ''; # delete tag (set value to undef) if value is same as missing tag $fileInfo{$tags[$i]} = (defined $missingValue and $vals[$i] eq $missingValue) ? undef : $vals[$i]; + push @{$fileInfo{_ordered_keys_}}, $tags[$i]; } - $fileInfo{_ordered_keys_} = \@tags; # figure out the file name to use if ($fileInfo{SourceFile}) { $$database{$fileInfo{SourceFile}} = \%fileInfo; @@ -99,7 +100,7 @@ sub ReadCSV($$;$$) # terminate at first blank tag name (eg. extra comma at end of line) last unless length $_; @tags or s/^\xef\xbb\xbf//; # remove UTF-8 BOM if it exists - /^[-\w]+(:[-\w+]+)?#?$/ or $err = "Invalid tag name '${_}'", last; + /^([-_0-9A-Z]+:)*[-_0-9A-Z]+#?$/i or $err = "Invalid tag name '${_}'", last; push(@tags, $_); } last if $err; @@ -355,7 +356,7 @@ ARRAY reference in a special "_ordered_keys_" element of this hash. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InDesign.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InDesign.pm index 4f0f8a0..fb53500 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InDesign.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InDesign.pm @@ -277,7 +277,7 @@ them and the LargeFileSupport option is enabled. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InfiRay.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InfiRay.pm index 794205e..962bafd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InfiRay.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/InfiRay.pm @@ -206,7 +206,7 @@ IJPEG SDK, used in cameras such as the P2 Pro. =head1 AUTHOR -Copyright 2003-2024, Marcos Del Sol Vives (marcos at orca.pet) +Copyright 2003-2025, Marcos Del Sol Vives (marcos at orca.pet) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEG.pm index 6a47ae9..df4bfad 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEG.pm @@ -11,7 +11,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.38'; +$VERSION = '1.39'; sub ProcessOcad($$$); sub ProcessJPEG_HDR($$$); @@ -347,6 +347,10 @@ sub ProcessJPEG_HDR($$$); Name => 'Samsung', Condition => '$$valPt =~ /QDIOBS$/', SubDirectory => { TagTable => 'Image::ExifTool::Samsung::Trailer' }, + }, { + Name => 'Vivo', + Condition => '$$valPt =~ /^(streamdata|vivo\{")/', + SubDirectory => { TagTable => 'Image::ExifTool::Vivo::Main' }, }, { Name => 'EmbeddedVideo', Notes => 'extracted only when ExtractEmbedded option is used', @@ -791,7 +795,7 @@ segments are included in the Image::ExifTool module itself. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEGDigest.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEGDigest.pm index 3c7131f..e37438e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEGDigest.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JPEGDigest.pm @@ -2590,7 +2590,7 @@ estimated JPEG quality if requested. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JSON.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JSON.pm index eab5a49..a81af06 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JSON.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JSON.pm @@ -183,7 +183,7 @@ information from JSON files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JVC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JVC.pm index c279666..a820261 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JVC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/JVC.pm @@ -117,7 +117,7 @@ notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Jpeg2000.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Jpeg2000.pm index d7a8306..eb25a35 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Jpeg2000.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Jpeg2000.pm @@ -1671,7 +1671,7 @@ files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Kodak.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Kodak.pm index 316808a..e8783bb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Kodak.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Kodak.pm @@ -3252,7 +3252,7 @@ interpret Kodak maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/KyoceraRaw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/KyoceraRaw.pm index 38248d9..5e29ea9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/KyoceraRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/KyoceraRaw.pm @@ -152,7 +152,7 @@ meta information from Kyocera Contax N Digital RAW images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LIF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LIF.pm index 837c976..275e6f8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LIF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LIF.pm @@ -147,7 +147,7 @@ metadata from Leica Image File (LIF) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LNK.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LNK.pm index 5a48481..843df4b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LNK.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LNK.pm @@ -703,7 +703,7 @@ information MS Shell Link (Windows shortcut) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/cs.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/cs.pm index a29ab1b..42ffc91 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/cs.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/cs.pm @@ -1570,7 +1570,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/de.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/de.pm index 2fe330d..066ade8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/de.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/de.pm @@ -8702,7 +8702,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_ca.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_ca.pm index 4a54965..e4b008e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_ca.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_ca.pm @@ -989,7 +989,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_gb.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_gb.pm index 0798c7c..cf8fa8f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_gb.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/en_gb.pm @@ -1032,7 +1032,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/es.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/es.pm index 84dc64a..68a78b2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/es.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/es.pm @@ -4005,7 +4005,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fi.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fi.pm index b89c503..f4e6455 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fi.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fi.pm @@ -2878,7 +2878,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fr.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fr.pm index e5f25dd..82856d9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fr.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/fr.pm @@ -11270,7 +11270,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/it.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/it.pm index ce0f312..58440b3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/it.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/it.pm @@ -7903,7 +7903,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ja.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ja.pm index 01acea4..1a28d9f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ja.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ja.pm @@ -5841,7 +5841,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ko.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ko.pm index 8be88fb..e9967df 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ko.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ko.pm @@ -2316,7 +2316,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/nl.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/nl.pm index 9983548..8941b4c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/nl.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/nl.pm @@ -3208,7 +3208,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/pl.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/pl.pm index c6a30c6..1396064 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/pl.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/pl.pm @@ -1258,7 +1258,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ru.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ru.pm index f70268e..2d54609 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ru.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/ru.pm @@ -5718,7 +5718,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sk.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sk.pm index 66f59da..da8220c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sk.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sk.pm @@ -1789,7 +1789,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sv.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sv.pm index 5d0911a..34709bb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sv.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/sv.pm @@ -620,7 +620,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/tr.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/tr.pm index 3fa14c4..da965cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/tr.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/tr.pm @@ -528,7 +528,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_cn.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_cn.pm index f99b85d..d3294cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_cn.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_cn.pm @@ -1313,7 +1313,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_tw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_tw.pm index f82ec69..c58a859 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_tw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lang/zh_tw.pm @@ -784,7 +784,7 @@ and values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Leaf.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Leaf.pm index eec0703..de8463b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Leaf.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Leaf.pm @@ -504,7 +504,7 @@ Capture. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LigoGPS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LigoGPS.pm new file mode 100644 index 0000000..353b6fc --- /dev/null +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/LigoGPS.pm @@ -0,0 +1,409 @@ +#------------------------------------------------------------------------------ +# File: LigoGPS.pm +# +# Description: Read LIGOGPSINFO timed GPS records +# +# Revisions: 2024-12-30 - P. Harvey Created +#------------------------------------------------------------------------------ +package Image::ExifTool::LigoGPS; + +use strict; +use vars qw($VERSION); +use Image::ExifTool; + +$VERSION = '1.02'; + +sub ProcessLigoGPS($$$;$); +sub ProcessLigoJSON($$$); +sub OrderCipherDigits($$$;$); + +my $knotsToKph = 1.852; # knots --> km/h + +#------------------------------------------------------------------------------ +# Clean up cipher variables and print warning if deciphering was unsuccessful +# Inputs: 0) ExifTool ref +sub CleanupCipher($) +{ + my $et = shift; + if ($$et{LigoCipher} and $$et{LigoCipher}{'next'}) { + $et->Warn('Not enough GPS points to determine cipher for decoding LIGOGPSINFO'); + } + delete $$et{LigoCipher}; +} + +#------------------------------------------------------------------------------ +# Un-do LIGOGPS fuzzing +# Inputs: 0) fuzzed latitude, 1) fuzzed longitude, 2) scale factor +# Returns: 0) latitude, 1) longitude +sub UnfuzzLigoGPS($$$) +{ + my ($lat, $lon, $scl) = @_; + my $lat2 = int($lat / 10) * 10; + my $lon2 = int($lon / 10) * 10; + return($lat2 + ($lon - $lon2) * $scl, $lon2 + ($lat - $lat2) * $scl); +} + +#------------------------------------------------------------------------------ +# Decrypt LIGOGPSINFO record (starting with "####") +# Inputs: 0) encrypted GPS record incuding 8-byte header +# Returns: decrypted record including 4-byte uint32 header, or undef on error +sub DecryptLigoGPS($) +{ + my $str = shift; + my $num = unpack('x4V',$str); + return undef if $num < 4; + $num = 0x84 if $num > 0x84; # (be safe) + my @in = unpack("x8C$num",$str); + my @out; + while (@in) { + my $b = shift @in; # get next byte in data + # upper 3 bits steer the decryption for this round + my $steeringBits = $b & 0xe0; + if ($steeringBits >= 0xc0) { + return undef if @in < 4; # next 4 bytes are encrypted data + push @out, (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x02) ^ 0x20, + (shift(@in) | $b & 0x0c) ^ 0x20, + shift(@in) ^ 0x20 | $b & 0x30; + } elsif ($steeringBits >= 0x40) { + return undef if @in < 3; # next 3 bytes are encrypted data + if ($steeringBits == 0x40) { + push @out, 0x20, + (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x06) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20; + } elsif ($steeringBits == 0x60) { + push @out, (shift(@in) | $b & 0x03) ^ 0x20, + 0x20, + (shift(@in) | $b & 0x04) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20; + } elsif ($steeringBits == 0x80) { + push @out, (shift(@in) | $b & 0x03) ^ 0x20, + (shift(@in) | $b & 0x0c) ^ 0x20, + 0x20, + (shift(@in) | $b & 0x10) ^ 0x20; + } else { + push @out, (shift(@in) | $b & 0x01) ^ 0x20, + (shift(@in) | $b & 0x06) ^ 0x20, + (shift(@in) | $b & 0x18) ^ 0x20, + 0x20; + } + } elsif ($steeringBits == 0x00) { + return undef if @in < 1; # next byte is encrypted data + push @out, shift(@in) | $b & 0x13; + } else { + return undef; # (shouldn't happen) + } + } + return pack 'C*', @out; +} + +#------------------------------------------------------------------------------ +# Determine correct ordering of enciphered digits (unit digits of seconds) +# Inputs: 0) starting character code, 1) lookup for next character(s) in sequence +# 2) i/o list of ordered characters, 3) hash of used characters +# Returns: true if a consistent ordering was found +# - loops through all possible orders based on $next sequence until a complete +# cycle is established +# - this complexity is necessary because GPS may skip some seconds +sub OrderCipherDigits($$$;$) +{ + my ($ch, $next, $order, $did) = @_; + $did or $did = { }; + while ($$next{$ch}) { + if (@$order < 10) { + last if $$did{$ch}; + } else { + # success if we have cycled through all 10 digits and back to the first + return 1 if @$order == 10 and $ch eq $$order[0]; + last; + } + push @$order, $ch; + $$did{$ch} = 1; + # continue with next character if there is only one possibility + @{$$next{$ch}} == 1 and $ch = $$next{$ch}[0], next; + # otherwise, test all possibilities + my $n = $#$order; + foreach (@{$$next{$ch}}) { + my %did = %$did; # make a copy of the used-character lookup + return 1 if OrderCipherDigits($_, $next, $order, \%did); + $#$order = $n; # restore order and try next possibility + } + last; + } + return 0; # failure +} + +#------------------------------------------------------------------------------ +# Decipher and parse LIGOGPSINFO record (starting with "####") +# Inputs: 0) ExifTool ref, 1) enciphered string, 2) tag table ref +# 3) true if GPS coordinates don't need de-fuzzing +# Returns: true if this looked like an enciphered string +# Notes: handles contained tags, but may defer handling until full cipher is known +sub DecipherLigoGPS($$$;$) +{ + my ($et, $str, $tagTbl, $noFuzz) = @_; + + # (enciphered characters must be in the range 0x30-0x5f ('0' - '_')) + $str =~ m[^####.{4}([0-_])[0-_]{3}/[0-_]{2}/[0-_]{2} ..([0-_])..([0-_]).([0-_]) ]s or return undef; + return undef unless $2 eq $3; # (colons in time string must be the same) + + my $cipherInfo = $$et{LigoCipher}; + unless ($cipherInfo) { + $cipherInfo = $$et{LigoCipher} = { cache => [ ], 'next' => { } }; + $et->AddCleanup(\&CleanupCipher); + }; + my $decipher = $$cipherInfo{decipher}; + my $cache = $$cipherInfo{cache}; + + # determine the cipher code table based on the advancing 1's digit of seconds + unless ($decipher) { + push @$cache, $str; # cache records until we can decipher them + my $next = $$cipherInfo{next}; + my ($millennium, $colon, $ch2) = ($1, $2, $4); + # determine the cipher lookup table + # (only characters in range 0x30-0x5f are encrypted) + my $ch1 = $$cipherInfo{ch1}; + $$cipherInfo{ch1} = $ch2; + return 1 if not defined $ch1 or $ch1 eq $ch2; # ignore duplicate sequential digits + if ($$next{$ch1}) { + return 1 if grep /\Q$ch2\E/, @{$$next{$ch1}}; # don't add twice + push @{$$next{$ch1}}, $ch2; + } else { + $$next{$ch1} = [ $ch2 ]; + } + # must wait until the lookup contains all 10 digits + scalar(keys %$next) < 10 and return 1; + # protect against trying to decipher bad data + scalar(keys %$next) > 10 and $$cipherInfo{'next'} = { }, return 1; + my (@order, $two); + return 1 unless OrderCipherDigits($ch1, $next, \@order); + # get index of enciphered "2" in ordered array + $order[$_] eq $millennium and $two = $_, last foreach 0..9; + defined $two or $et->Warn('Problem deciphering LIGOGPSINFO'), return 1; + delete $$cipherInfo{'next'}; # all done with 'next' lookup + my %decipher = ( $colon => ':' ); # (':' is the time separator) + foreach (0..9) { + my $ch = $order[($_ + $two - 2 + 10) % 10]; + $decipher{$ch} = chr($_ + 0x30); + } + # may also know the lat/lon quadrant from the signs of the coordinates + if ($str =~ / ([0-_])$colon(-?).*? ([0-_])$colon(-?)/) { + @decipher{$1,$3} = ($2 ? 'S' : 'N', $4 ? 'W' : 'E'); + unless ($2 or $4) { + my ($ns, $ew) = ($1, $3); + if ($$et{OPTIONS}{GPSQuadrant} and $$et{OPTIONS}{GPSQuadrant} =~ /^([NS])([EW])$/i) { + @decipher{$ns,$ew} = (uc($1), uc($2)); + } else { + $et->Warn('May need to set API GPSQuadrant option (eg. "NW")'); + } + } + } + # fill in unknown entries with '?' (only chars 0x30-0x5f are enciphered) + defined $decipher{$_} or $decipher{$_} = '?' foreach map(chr, 0x30..0x5f); + $decipher = $$cipherInfo{decipher} = \%decipher; + $str = shift @$cache; # start deciphering at oldest cache entry + } + + # apply reverse cipher and extract GPS information + do { + my $pre = substr($str, 4, 4); # save second 4 bytes of header + ($str = substr($str,8)) =~ s/\0+$//; # remove 8-byte header and null padding + $str =~ s/([0-_])/$$decipher{$1}/g; # decipher + if ($$et{OPTIONS}{Verbose} > 1) { + $et->VPrint(1, "$$et{INDENT}\(Deciphered: ".unpack('H8',$pre)." $str)\n"); + } + # add back leading 4 bytes (int16u counter plus 2 unknown bytes), and parse + ParseLigoGPS($et, "$pre$str", $tagTbl, $noFuzz); + } while $str = shift @$cache; + + return 1; +} + +#------------------------------------------------------------------------------ +# Parse decrypted/deciphered (but not defuzzed) LIGOGPSINFO record +# (record starts with 4-byte int32u counter followed by date/time, etc) +# Inputs: 0) ExifTool ref, 1) GPS string, 2) tag table ref, 3) not fuzzed +# Returns: nothing +sub ParseLigoGPS($$$;$) +{ + my ($et, $str, $tagTbl, $noFuzz) = @_; + + # example string input + # "....2022/09/19 12:45:24 N:31.285065 W:124.759483 46.93 km/h x:-0.000 y:-0.000 z:-0.000" + unless ($str=~ /^.{4}(\S+ \S+)\s+([NS?]):(-?)([.\d]+)\s+([EW?]):(-?)([\.\d]+)\s+([.\d]+)/s) { + $et->Warn('LIGOGPSINFO format error'); + return; + } + my ($time,$latRef,$latNeg,$lat,$lonRef,$lonNeg,$lon,$spd) = ($1,$2,$3,$4,$5,$6,$7,$8); + my %gpsScl = ( 1 => 1.524855137, 2 => 1.456027985, 3 => 1.15368 ); + my $spdScl = $noFuzz ? $knotsToKph : 1.85407333; + $$et{DOC_NUM} = ++$$et{DOC_COUNT}; + $time =~ tr(/)(:); + # convert from DDMM.MMMMMM to DD.DDDDDD if necessary + # (speed wasn't scaled in my 1 sample with this format) + $lat =~ /^\d{3}/ and Image::ExifTool::QuickTime::ConvertLatLon($lat,$lon), $spdScl = 1; + unless ($noFuzz) { # unfuzz the coordinates if necessary + my $scl = $$et{OPTIONS}{LigoGPSScale} || $$et{LigoGPSScale} || 1; + $scl = $gpsScl{$scl} if $gpsScl{$scl}; + ($lat, $lon) = UnfuzzLigoGPS($lat, $lon, $scl); + } + # a final sanity check + ($lat > 90 or $lon > 180) and $et->Warn('LIGOGPSINFO coordinates out of range'), return; + $$et{SET_GROUP1} = 'LIGO'; + $et->HandleTag($tagTbl, 'GPSDateTime', $time); + # (ignore N/S/E/W if coordinate is signed) + $et->HandleTag($tagTbl, 'GPSLatitude', $lat * (($latNeg or $latRef eq 'S') ? -1 : 1)); + $et->HandleTag($tagTbl, 'GPSLongitude', $lon * (($lonNeg or $lonRef eq 'W') ? -1 : 1)); + $et->HandleTag($tagTbl, 'GPSSpeed', $spd * $spdScl); + $et->HandleTag($tagTbl, 'GPSTrack', $1) if $str =~ /\bA:(\S+)/; + $et->HandleTag($tagTbl, 'GPSAltitude', $1) if $str =~ /\bH:(\S+)/; + $et->HandleTag($tagTbl, 'MagneticVariation', $1) if $str =~ /\bM:(\S+)/; + # (have a sample where tab is used to separate acc components) + $et->HandleTag($tagTbl, 'Accelerometer',"$1 $2 $3") if $str =~ /x:(\S+)\sy:(\S+)\sz:(\S+)/; + delete $$et{SET_GROUP1}; +} + +#------------------------------------------------------------------------------ +# Process LIGOGPSINFO data (non-JSON format) +# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref +# 3) 1=LIGOGPS lat/lon/spd weren't fuzzed +# Returns: 1 on success +# Notes: The directory data should start with the string "LIGOGPSINFO\0" +sub ProcessLigoGPS($$$;$) +{ + my ($et, $dirInfo, $tagTbl, $noFuzz) = @_; + my $dataPt = $$dirInfo{DataPt}; + my $pos = ($$dirInfo{DirStart} || 0) + 0x14; + return undef if $pos > length $$dataPt; + my $cipherInfo = $$et{LigoCipher}; + my $dirName = $$dirInfo{DirName} || 'LigoGPS'; + push @{$$et{PATH}}, $dirName unless $$dirInfo{DirID}; + # not fuzzed if header =~ /LIGOGPSINFO\0\0\0\0[\x01\x14]/ (\x01=BlueSkySeaDV688) + $noFuzz = 1 if substr($$dataPt, $pos-8, 4) =~ /^\0\0\0[\x01\x14]/; + $et->VerboseDir($dirName); + for (; $pos + 0x84 <= length($$dataPt); $pos+=0x84) { + my $dat = substr($$dataPt, $pos, 0x84); + $dat =~ /^####/ or next; # (have seen blank records filled with zeros, so keep trying) + # decipher if we already know the encryption + $cipherInfo and $$cipherInfo{decipher} and DecipherLigoGPS($et, $dat, $tagTbl, $noFuzz) and next; + my $str = DecryptLigoGPS($dat); + defined $str or DecipherLigoGPS($et, $dat, $tagTbl, $noFuzz), next; # try to decipher + $et->VPrint(1, "$$et{INDENT}\(Decrypted: ",unpack('V',$str),' ',substr($str,4),")\n") if $$et{OPTIONS}{Verbose} > 1; + ParseLigoGPS($et, $str, $tagTbl, $noFuzz); + } + pop @{$$et{PATH}} unless $$dirInfo{DirID}; + delete $$et{DOC_NUM}; + return 1; +} + +#------------------------------------------------------------------------------ +# Process LIGOGPSINFO JSON-format GPS (Yada RoadCam Pro 4K BT58189) +# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref +# Returns: 1 on success +# Sample data (chained 512-byte records starting like this): +# 0000: 4c 49 47 4f 47 50 53 49 4e 46 4f 20 7b 22 48 6f [LIGOGPSINFO {"Ho] +# 0010: 75 72 22 3a 20 22 32 33 22 2c 20 22 4d 69 6e 75 [ur": "23", "Minu] +# 0020: 74 65 22 3a 20 22 31 30 22 2c 20 22 53 65 63 6f [te": "10", "Seco] +# 0030: 6e 64 22 3a 20 22 32 32 22 2c 20 22 59 65 61 72 [nd": "22", "Year] +# 0040: 22 3a 20 22 32 30 32 33 22 2c 20 22 4d 6f 6e 74 [": "2023", "Mont] +# 0050: 68 22 3a 20 22 31 32 22 2c 20 22 44 61 79 22 3a [h": "12", "Day":] +# 0060: 20 22 32 38 22 2c 20 22 73 74 61 74 75 73 22 3a [ "28", "status":] +sub ProcessLigoJSON($$$) +{ + my ($et, $dirInfo, $tagTbl) = @_; + my $dataPt = $$dirInfo{DataPt}; + my $dirLen = $$dirInfo{DirLen}; + require Image::ExifTool::Import; + $et->VerboseDir('LIGO_JSON', undef, length($$dataPt)); + $$et{SET_GROUP1} = 'LIGO'; + while ($$dataPt =~ /LIGOGPSINFO (\{.*?\})/g) { + my $json = $1; + my %dbase; + Image::ExifTool::Import::ReadJSON(\$json, \%dbase); + my $info = $dbase{'*'} or next; + # my sample contains the following JSON fields (in this order): + # Hour Minute Second Year Month Day (GPS UTC time) + # status NS EW Latitude Longitude Speed (speed in knots) + # GsensorX GsensorY GsensorZ (units? - only seen "000" for all) + # MHour MMinute MSecond MYear MMonth MDay (local dashcam clock time) + # OLatitude OLongitude (? same values as Latitude/Longitude) + next unless defined $$info{status} and $$info{status} eq 'A'; # only read if GPS is active + $$et{DOC_NUM} = ++$$et{DOC_COUNT}; + my $num = 0; + defined $$info{$_} and ++$num foreach qw(Year Month Day Hour Minute Second); + if ($num == 6) { + # this is the GPS time in UTC + my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2dZ',@$info{qw{Year Month Day Hour Minute Second}}); + $et->HandleTag($tagTbl, GPSDateTime => $time); + } + if ($$info{Latitude} and $$info{Longitude}) { + my $lat = $$info{Latitude}; + $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; + my $lon = $$info{Longitude}; + $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; + $et->HandleTag($tagTbl, GPSLatitude => $lat); + $et->HandleTag($tagTbl, GPSLongitude => $lon); + } + $et->HandleTag($tagTbl, GPSSpeed => $$info{Speed} * $knotsToKph) if defined $$info{Speed}; + if (defined $$info{GsensorX} and defined $$info{GsensorY} and defined $$info{GsensorZ}) { + # (don't know conversion factor for accel data, so leave it raw for now) + $et->HandleTag($tagTbl, Accelerometer => "$$info{GsensorX} $$info{GsensorY} $$info{GsensorZ}"); + } + $num = 0; + defined $$info{$_} and ++$num foreach qw(MYear MMonth MDay MHour MMinute MSecond); + if ($num == 6) { + # this is the dashcam clock time (local time zone) + my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d',@$info{qw{MYear MMonth MDay MHour MMinute MSecond}}); + $et->HandleTag($tagTbl, DateTimeOriginal => $time); + } + if (defined $$info{OLatitude} and defined $$info{OLongitude}) { + my $lat = $$info{OLatitude}; + $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; + my $lon = $$info{OLongitude}; + $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; + $et->HandleTag($tagTbl, GPSLatitude2 => $lat); + $et->HandleTag($tagTbl, GPSLongitude2 => $lon); + } + unless ($et->Options('ExtractEmbedded')) { + $et->Warn('Use the ExtractEmbedded option to extract all timed GPS',3); + last; + } + } + delete $$et{DOC_NUM}; + delete $$et{SET_GROUP1}; + return 1; +} + +1; #end + + +__END__ + +=head1 NAME + +Image::ExifTool::LigoGPS - Read LIGOGPSINFO timed GPS records + +=head1 SYNOPSIS + +This module is loaded automatically by Image::ExifTool when required. + +=head1 DESCRIPTION + +This module decrypts, deciphers and decodes timed GPS metadata from +LIGOGPSINFO records found in various locations of MP4 and M2TS videos from a +variety of dashcam makes and models. + +=head1 AUTHOR + +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) + +This library is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. + +=head1 SEE ALSO + +L<Image::ExifTool::TagNames/QuickTime Stream Tags>, +L<Image::ExifTool(3pm)|Image::ExifTool> + +=cut diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lytro.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lytro.pm index 076e0b2..66923f9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lytro.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Lytro.pm @@ -192,7 +192,7 @@ from Lytro Light Field Picture (LFP) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/M2TS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/M2TS.pm index 25e2e14..f580e0e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/M2TS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/M2TS.pm @@ -32,7 +32,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.28'; +$VERSION = '1.29'; # program map table "stream_type" lookup (ref 6/1/9) my %streamType = ( @@ -310,7 +310,7 @@ sub ParsePID($$$$$) if ($$dataPt =~ /^LIGOGPSINFO/s) { my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => $dataPt, DirName => 'Ligo0x0300' ); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); $$et{FoundGoodGPS} = 1; $more = 1; } @@ -437,13 +437,16 @@ sub ParsePID($$$$$) $more = 1; } elsif ($$dataPt =~ /\$GPRMC,/) { # Jomise T860S-GM dashcam - # $GPRMC,hhmmss.ss,A,ddmm.mmmmm,N,dddmm.mmmmm,W,spd-kts,dir-dg,DDMMYY,,*cs - # $GPRMC,172255.00,A,:985.95194,N,17170.14674,W,029.678,170.68,240822,,,D*7B - # $GPRMC,172355.00,A,:984.76779,N,17170.00473,W,032.219,172.04,240822,,,D*7B - # ddmm.mmmm: from 4742.2568 12209.2028 (should be) - # to 4741.7696 12209.1056 - # stamped on video: 47.70428N, 122.15338W, 35mph (dd.ddddd) - # to 47.69616N, 122.15176W, 37mph + # $GPRMC,hhmmss.ss,A,ddmm.mmmmm,N,dddmm.mmmmm,W,spd-kts,dir-dg,DDMMYY,,M*cs - lat,lon,spd from video + # $GPRMC,172255.00,A,:985.95194,N,17170.14674,W,029.678,170.68,240822,,,D*7B - N47.70428,W122.15338,35mph + # $GPRMC,192643.00,A,:987.94979,N,17171.07268,W,010.059,079.61,111122,,,A*73 - N47.71862,W122.16437,12mph + # $GPRMC,192743.00,A,:988.72110,N,17171.04873,W,017.477,001.03,111122,,,A*78 - N47.72421,W122.16408,20mph + # $GPRMC,192844.00,A,:989.43771,N,17171.03538,W,016.889,001.20,111122,,,A*7B - N47.72932,W122.16393,19mph + # $GPRMC,005241.00,A,:987.70873,N,17171.81293,W,000.284,354.78,141122,,,A*7F - N47.71687,W122.17318,0mph + # $GPRMC,005341.00,A,:987.90851,N,17171.85380,W,000.080,349.36,141122,,,A*7C - N47.71832,W122.17367,0mph + # $GPRMC,005441.00,A,:987.94538,N,17171.21783,W,029.686,091.09,141122,,,A*7A - N47.71859,W122.16630,35mph + # $GPRMC,002816.00,A,6820.67273,N,13424.26599,W,000.045,000.00,261122,,,A*79 - N29.52096,W95.55953,0mph (seattle) + # $GPRMC,035136.00,A,:981.47322,N,17170.14105,W,024.594,180.50,291122,,,D*79 - N47.67180,W122.15328,28mph my $tagTbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); while ($$dataPt =~ /\$[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(.{2})(\d{2}\.\d+),([NS]),(.{3})(\d{2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/g and # do some basic sanity checks on the date @@ -477,6 +480,11 @@ sub ParsePID($$$$$) $et->HandleTag($tagTbl, GPSLongitude => (($lo || 0) + (($9-70.14674)/1.460987654320988+9.2028)/60) * ($10 eq 'E' ? 1 : -1)); } } + } elsif ($$dataPt =~ /\$GSENSORD,\s*(\d+),\s*(\d+),\s*(\d+),/) { + # Jomise T860S-GM dashcam + my $tagTbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); + $$et{DOC_NUM} = $$et{DOC_COUNT}; + $et->HandleTag($tagTbl, Accelerometer => "$1 $2 $3"); # (NC - values range from 0 to 6) } elsif ($$dataPt =~ /^.{44}A\0{3}.{4}([NS])\0{3}.{4}([EW])\0{3}/s and length($$dataPt) >= 84) { #forum11320 SetByteOrder('II'); @@ -531,7 +539,7 @@ sub ParsePID($$$$$) # only extract data from the first one) my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => $dataPt, DirStart => 8, DirName => sprintf('Ligo0x%.4x',$pid)); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl, 1); $$et{FoundGoodGPS} = 1; } elsif ($$et{FoundGoodGPS}) { $more = 1; @@ -592,7 +600,8 @@ sub ProcessM2TS($$) my %gpsPID = ( 0x0300 => 1, # Novatek INNOVV, DOD_LS600W 0x01e4 => 1, # vsys a6l dashcam - 0x0e1b => 1, # Jomise T860S-GM dashcam + 0x0e1b => 1, # Jomise T860S-GM dashcam GPS + 0x0e1a => 1, # Jomise T860S-GM dashcam accelerometer ); my $pEnd = 0; @@ -980,7 +989,7 @@ sub ProcessM2TS($$) if ($len < $raf->Tell() and $raf->Seek(-$len, 2) and $raf->Read($buff,$len) == $len) { my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); my %dirInfo = ( DataPt => \$buff, DirStart => 8, DirName => 'LigoTrailer' ); - Image::ExifTool::QuickTime::ProcessLigoGPS($et, \%dirInfo, $tbl); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl); } } @@ -1007,7 +1016,7 @@ video. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIE.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIE.pm index 1d03d55..b4893a7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIE.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIE.pm @@ -2557,7 +2557,7 @@ tag name. For example: =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The MIE format itself is also diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIEUnits.pod b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIEUnits.pod index 904d04d..df56adb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIEUnits.pod +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIEUnits.pod @@ -356,7 +356,7 @@ A few examples of combined units strings: =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIFF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIFF.pm index 5878839..7531851 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MIFF.pm @@ -255,7 +255,7 @@ This module contains routines required by Image::ExifTool to read MIFF =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MISB.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MISB.pm index fabfa4e..bcb5234 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MISB.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MISB.pm @@ -468,7 +468,7 @@ Board (MISB) KLV-format metadata from M2TS videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MNG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MNG.pm index bbff81e..da0d886 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MNG.pm @@ -661,7 +661,7 @@ This module contains definitions required by Image::ExifTool to read MNG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MOI.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MOI.pm index 926ec23..34ed577 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MOI.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MOI.pm @@ -137,7 +137,7 @@ information from MOI files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPC.pm index c7688a4..8efdc5a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPC.pm @@ -134,7 +134,7 @@ information from Musepack (MPC) audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPEG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPEG.pm index d60830f..5127b2f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPEG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPEG.pm @@ -704,7 +704,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPF.pm index 579df04..6d9535f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MPF.pm @@ -267,7 +267,7 @@ Format (MPF) information from JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MRC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MRC.pm index acd399b..847c32c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MRC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MRC.pm @@ -315,7 +315,7 @@ metadata from Medical Research Council (MRC) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MWG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MWG.pm index b546884..b806b8c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MWG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MWG.pm @@ -757,7 +757,7 @@ must be loaded explicitly as described above. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MXF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MXF.pm index 05374f0..8c7520a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MXF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MXF.pm @@ -2987,7 +2987,7 @@ information from MXF (Material Exchange Format) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MacOS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MacOS.pm index 15509f0..ab1d0c3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MacOS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MacOS.pm @@ -737,7 +737,7 @@ Writable tags use "xattr", "setfile" or "osascript" for writing. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MakerNotes.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MakerNotes.pm index 317c739..a293a93 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MakerNotes.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MakerNotes.pm @@ -1831,7 +1831,7 @@ maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Matroska.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Matroska.pm index 346641a..7ec8042 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Matroska.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Matroska.pm @@ -15,7 +15,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.17'; +$VERSION = '1.18'; sub HandleStruct($$;$$$$); @@ -752,7 +752,11 @@ my %uidInfo = ( SUBTITLE => 'Subtitle', URL => 'URL', # nested SORT_WITH => 'SortWith', # nested - INSTRUMENTS => 'Instruments', # nested + INSTRUMENTS => { # nested + Name => 'Instruments', + IsList => 1, + ValueConv => 'my @a = split /,\s?/, $val; \@a', + }, EMAIL => 'Email', # nested ADDRESS => 'Address', # nested FAX => 'FAX', # nested @@ -796,7 +800,11 @@ my %uidInfo = ( CONTENT_TYPE => 'ContentType', SUBJECT => 'Subject', DESCRIPTION => 'Description', - KEYWORDS => 'Keywords', + KEYWORDS => { + Name => 'Keywords', + IsList => 1, + ValueConv => 'my @a = split /,\s?/, $val; \@a', + }, SUMMARY => 'Summary', SYNOPSIS => 'Synopsis', INITIAL_KEY => 'InitialKey', @@ -1219,7 +1227,7 @@ information from Matroska multimedia files (MKA, MKV, MKS and WEBM). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Microsoft.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Microsoft.pm index 47dee81..e0f084e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Microsoft.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Microsoft.pm @@ -1100,7 +1100,7 @@ Xtra tags in videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Minolta.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Minolta.pm index 54121ef..59637f2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Minolta.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Minolta.pm @@ -2927,7 +2927,7 @@ and write Minolta RAW (MRW) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MinoltaRaw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MinoltaRaw.pm index 2ddea68..d17a88c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MinoltaRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/MinoltaRaw.pm @@ -513,7 +513,7 @@ write Konica-Minolta RAW (MRW) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Motorola.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Motorola.pm index ff674b6..30e2853 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Motorola.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Motorola.pm @@ -165,7 +165,7 @@ cell phone images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm index d2febd4..5b6006c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm @@ -65,7 +65,7 @@ use Image::ExifTool::Exif; use Image::ExifTool::GPS; use Image::ExifTool::XMP; -$VERSION = '4.39'; +$VERSION = '4.40'; sub LensIDConv($$$); sub ProcessNikonAVI($$$); @@ -1546,7 +1546,108 @@ my %afPoints81 = ( 17 => 'H6', 34 => 'G7', 51 => 'F8', 68 => 'A9', ); -# AF point indices for models with 493 focus points, eg. Z8/Z9 (ref 28) +# AF point indices for 209 focus point(single-point AF) cameras equipped with Expeed 7 processor eg. Z50ii). Single-point AF array is 11 rows x 19 columns. (ref 28) +# - Auto Area AF has 2 additional columns available and provides 231 focus points. Uses 11 rows (A-K) and 21 columns (1-21), center is F11 +my %afPoints209 = ( + 1 => 'A1', 22 => 'B1', 43 => 'C1', 64 => 'D1', 85 => 'E1', 106 => 'F1', 127 => 'G1', 148 => 'H1', + 2 => 'A2', 23 => 'B2', 44 => 'C2', 65 => 'D2', 86 => 'E2', 107 => 'F2', 128 => 'G2', 149 => 'H2', + 3 => 'A3', 24 => 'B3', 45 => 'C3', 66 => 'D3', 87 => 'E3', 108 => 'F3', 129 => 'G3', 150 => 'H3', + 4 => 'A4', 25 => 'B4', 46 => 'C4', 67 => 'D4', 88 => 'E4', 109 => 'F4', 130 => 'G4', 151 => 'H4', + 5 => 'A5', 26 => 'B5', 47 => 'C5', 68 => 'D5', 89 => 'E5', 110 => 'F5', 131 => 'G5', 152 => 'H5', + 6 => 'A6', 27 => 'B6', 48 => 'C6', 69 => 'D6', 90 => 'E6', 111 => 'F6', 132 => 'G6', 153 => 'H6', + 7 => 'A7', 28 => 'B7', 49 => 'C7', 70 => 'D7', 91 => 'E7', 112 => 'F7', 133 => 'G7', 154 => 'H7', + 8 => 'A8', 29 => 'B8', 50 => 'C8', 71 => 'D8', 92 => 'E8', 113 => 'F8', 134 => 'G8', 155 => 'H8', + 9 => 'A9', 30 => 'B9', 51 => 'C9', 72 => 'D9', 93 => 'E9', 114 => 'F9', 135 => 'G9', 156 => 'H9', + 10 => 'A10', 31 => 'B10', 52 => 'C10', 73 => 'D10', 94 => 'E10', 115 => 'F10', 136 => 'G10', 157 => 'H10', + 11 => 'A11', 32 => 'B11' , 53 => 'C11', 74 => 'D11', 95 => 'E11', 116 => 'F11', 137 => 'G11', 158 => 'H11', + 12 => 'A12', 33 => 'B12' , 54 => 'C12', 75 => 'D12', 96 => 'E12', 117 => 'F12', 138 => 'G12', 159 => 'H12', + 13 => 'A13', 34 => 'B13' , 55 => 'C13', 76 => 'D13', 97 => 'E13', 118 => 'F13', 139 => 'G13', 160 => 'H13', + 14 => 'A14', 35 => 'B14' , 56 => 'C14', 77 => 'D14', 98 => 'E14', 119 => 'F14', 140 => 'G14', 161 => 'H14', + 15 => 'A15', 36 => 'B15', 57 => 'C15', 78 => 'D15', 99 => 'E15', 120 => 'F15', 141 => 'G15', 162 => 'H15', + 16 => 'A16', 37 => 'B16' , 58 => 'C16', 79 => 'D16', 100 => 'E16', 121 => 'F16', 142 => 'G16', 163 => 'H16', + 17 => 'A17', 38 => 'B17', 59 => 'C17', 80 => 'D17', 101 => 'E17', 122 => 'F17', 143 => 'G17', 164 => 'H17', + 18 => 'A18', 39 => 'B18', 60 => 'C18', 81 => 'D18', 102 => 'E18', 123 => 'F18', 144 => 'G18', 165 => 'H18', + 19 => 'A19', 40 => 'B19', 61 => 'C19', 82 => 'D19', 103 => 'E19', 124 => 'F19', 145 => 'G19', 166 => 'H19', + 20 => 'A20', 41 => 'B20', 62 => 'C20', 83 => 'D20', 104 => 'E20', 125 => 'F20', 146 => 'G20', 167 => 'H20', + 21 => 'A21', 42 => 'B21', 63 => 'C21', 84 => 'D21', 105 => 'E21', 126 => 'F21', 147 => 'G21', 168 => 'H21', + + 169 => 'I1', 190 => 'J1', 211 => 'K1', + 170 => 'I2', 191 => 'J2', 212 => 'K2', + 171 => 'I3', 192 => 'J3', 213 => 'K3', + 172 => 'I4', 193 => 'J4', 214 => 'K4', + 173 => 'I5', 194 => 'J5', 215 => 'K5', + 174 => 'I6', 195 => 'J6', 216 => 'K6', + 175 => 'I7', 196 => 'J7', 217 => 'K7', + 176 => 'I8', 197 => 'J8', 218 => 'K8', + 177 => 'I9', 198 => 'J9', 219 => 'K9', + 178 => 'I10', 199 => 'J10', 220 => 'K10', + 179 => 'I11', 200 => 'J11', 221 => 'K11', + 180 => 'I12', 201 => 'J12', 222 => 'K12', + 181 => 'I13', 202 => 'J13', 223 => 'K13', + 182 => 'I14', 203 => 'J14', 224 => 'K14', + 183 => 'I15', 204 => 'J15', 225 => 'K15', + 184 => 'I16', 205 => 'J16', 226 => 'K16', + 185 => 'I17', 206 => 'J17', 227 => 'K17', + 186 => 'I18', 207 => 'J18', 228 => 'K18', + 187 => 'I19', 208 => 'J19', 229 => 'K19', + 188 => 'I20', 209 => 'J20', 230 => 'K20', + 189 => 'I21', 210 => 'J21', 231 => 'K21', +); + +# AF point indices for 273 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z6iii and Zf). Single-point AF array is 13 rows x 21 columns (ref 28) +# - Auto Area AF has 2 additional columns available and provides 299 focus points. Uses 13 rows (A-M) and 23 columns (1-23), center is G12 +# +my %afPoints273 = ( + 1 => 'A1', 24 => 'B1', 47 => 'C1', 70 => 'D1', 93 => 'E1', 116 => 'F1', 139 => 'G1', 162 => 'H1', + 2 => 'A2', 25 => 'B2', 48 => 'C2', 71 => 'D2', 94 => 'E2', 117 => 'F2', 140 => 'G2', 163 => 'H2', + 3 => 'A3', 26 => 'B3', 49 => 'C3', 72 => 'D3', 95 => 'E3', 118 => 'F3', 141 => 'G3', 164 => 'H3', + 4 => 'A4', 27 => 'B4', 50 => 'C4', 73 => 'D4', 96 => 'E4', 119 => 'F4', 142 => 'G4', 165 => 'H4', + 5 => 'A5', 28 => 'B5', 51 => 'C5', 74 => 'D5', 97 => 'E5', 120 => 'F5', 143 => 'G5', 166 => 'H5', + 6 => 'A6', 29 => 'B6', 52 => 'C6', 75 => 'D6', 98 => 'E6', 121 => 'F6', 144 => 'G6', 167 => 'H6', + 7 => 'A7', 30 => 'B7', 53 => 'C7', 76 => 'D7', 99 => 'E7', 122 => 'F7', 145 => 'G7', 168 => 'H7', + 8 => 'A8', 31 => 'B8', 54 => 'C8', 77 => 'D8', 100 => 'E8', 123 => 'F8', 146 => 'G8', 169 => 'H8', + 9 => 'A9', 32 => 'B9', 55 => 'C9', 78 => 'D9', 101 => 'E9', 124 => 'F9', 147 => 'G9', 170 => 'H9', + 10 => 'A10', 33 => 'B10', 56 => 'C10', 79 => 'D10', 102 => 'E10', 125 => 'F10', 148 => 'G10', 171 => 'H10', + 11 => 'A11', 34 => 'B11' , 57 => 'C11', 80 => 'D11', 103 => 'E11', 126 => 'F11', 149 => 'G11', 172 => 'H11', + 12 => 'A12', 35 => 'B12' , 58 => 'C12', 81 => 'D12', 104 => 'E12', 127 => 'F12', 150 => 'G12', 173 => 'H12', + 13 => 'A13', 36 => 'B13' , 59 => 'C13', 82 => 'D13', 105 => 'E13', 128 => 'F13', 151 => 'G13', 174 => 'H13', + 14 => 'A14', 37 => 'B14' , 60 => 'C14', 83 => 'D14', 106 => 'E14', 129 => 'F14', 152 => 'G14', 175 => 'H14', + 15 => 'A15', 38 => 'B15', 61 => 'C15', 84 => 'D15', 107 => 'E15', 130 => 'F15', 153 => 'G15', 176 => 'H15', + 16 => 'A16', 39 => 'B16' , 62 => 'C16', 85 => 'D16', 108 => 'E16', 131 => 'F16', 154 => 'G16', 177 => 'H16', + 17 => 'A17', 40 => 'B17', 63 => 'C17', 86 => 'D17', 109 => 'E17', 132 => 'F17', 155 => 'G17', 178 => 'H17', + 18 => 'A18', 41 => 'B18', 64 => 'C18', 87 => 'D18', 110 => 'E18', 133 => 'F18', 156 => 'G18', 179 => 'H18', + 19 => 'A19', 42 => 'B19', 65 => 'C19', 88 => 'D19', 111 => 'E19', 134 => 'F19', 157 => 'G19', 180 => 'H19', + 20 => 'A20', 43 => 'B20', 66 => 'C20', 89 => 'D20', 112 => 'E20', 135 => 'F20', 158 => 'G20', 181 => 'H20', + 21 => 'A21', 44 => 'B21', 67 => 'C21', 90 => 'D21', 113 => 'E21', 136 => 'F21', 159 => 'G21', 182 => 'H21', + 22 => 'A22', 45 => 'B22', 68 => 'C22', 91 => 'D22', 114 => 'E22', 137 => 'F22', 160 => 'G22', 183 => 'H22', + 23 => 'A23', 46 => 'B23', 69 => 'C23', 92 => 'D23', 115 => 'E23', 138 => 'F23', 161 => 'G23', 184 => 'H23', + + 185 => 'I1', 208 => 'J1', 231 => 'K1', 254 => 'L1', 277 => 'M1', + 186 => 'I2', 209 => 'J2', 232 => 'K2', 255 => 'L2', 278 => 'M2', + 187 => 'I3', 210 => 'J3', 233 => 'K3', 256 => 'L3', 279 => 'M3', + 188 => 'I4', 211 => 'J4', 234 => 'K4', 257 => 'L4', 280 => 'M4', + 189 => 'I5', 212 => 'J5', 235 => 'K5', 258 => 'L5', 281 => 'M5', + 190 => 'I6', 213 => 'J6', 236 => 'K6', 259 => 'L6', 282 => 'M6', + 191 => 'I7', 214 => 'J7', 237 => 'K7', 260 => 'L7', 283 => 'M7', + 192 => 'I8', 215 => 'J8', 238 => 'K8', 261 => 'L8', 284 => 'M8', + 193 => 'I9', 216 => 'J9', 239 => 'K9', 262 => 'L9', 285 => 'M9', + 194 => 'I10', 217 => 'J10', 240 => 'K10', 263 => 'L10', 286 => 'M10', + 195 => 'I11', 218 => 'J11', 241 => 'K11', 264 => 'L11', 287 => 'M11', + 196 => 'I12', 219 => 'J12', 242 => 'K12', 265 => 'L12', 288 => 'M12', + 197 => 'I13', 220 => 'J13', 243 => 'K13', 266 => 'L13', 289 => 'M13', + 198 => 'I14', 221 => 'J14', 244 => 'K14', 267 => 'L14', 290 => 'M14', + 199 => 'I15', 222 => 'J15', 245 => 'K15', 268 => 'L15', 291 => 'M15', + 200 => 'I16', 223 => 'J16', 246 => 'K16', 269 => 'L16', 292 => 'M16', + 201 => 'I17', 224 => 'J17', 247 => 'K17', 270 => 'L17', 293 => 'M17', + 202 => 'I18', 225 => 'J18', 248 => 'K18', 271 => 'L18', 294 => 'M18', + 203 => 'I19', 226 => 'J19', 249 => 'K19', 272 => 'L19', 295 => 'M19', + 204 => 'I20', 227 => 'J20', 250 => 'K20', 273 => 'L20', 296 => 'M20', + 205 => 'I21', 228 => 'J21', 251 => 'K21', 274 => 'L21', 297 => 'M21', + 206 => 'I22', 229 => 'J22', 252 => 'K22', 275 => 'L22', 298 => 'M22', + 208 => 'I23', 230 => 'J23', 253 => 'K23', 276 => 'L23', 299 => 'M23', +); + +# AF point indices for 493 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z8 and Z9). Single-point AF array is 17 rows x 29 columns (ref 28) # - Auto Area AF uses 15 of the 17 rows (A-Q) and 27 of the 29 columns (1-27), center is H14 (405 of the 493 focus points can be used by Auto-area AF) # my %afPoints493 = ( @@ -1606,6 +1707,7 @@ my %afPoints493 = ( 242 => 'I26', 269 => 'J26', 296 => 'K26', 323 => 'L26', 350 => 'M26', 377 => 'N26', 404 => 'O26', 243 => 'I27', 270 => 'J27', 297 => 'K27', 324 => 'L27', 351 => 'M27', 378 => 'N27', 405 => 'O27', ); + my %cropHiSpeed = ( #IB 0 => 'Off', 1 => '1.3x Crop', # (1.3x Crop, Large) @@ -3011,9 +3113,12 @@ my %base64coord = ( }, 0x00b7 => [{ Name => 'AFInfo2', - Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i', #AFInfo2Version 0400 + # Expeed 7 processor models - Z8 & Z9 (AFInfo2Version 0400), Z6iii & Zf (AFInfo2Version 0401) + # and Z50ii (AFInfo2Version 0402) + Condition => '$$valPt =~ /^040[012]/', SubDirectory => { TagTable => 'Image::ExifTool::Nikon::AFInfo2V0400' }, },{ #JD + # (expeed 5 processor cameras are version 0101, expeed 6 are version 03xx) Name => 'AFInfo2', # (this structure may be byte swapped when rewritten by CaptureNX) SubDirectory => { TagTable => 'Image::ExifTool::Nikon::AFInfo2' }, @@ -4056,6 +4161,7 @@ my %base64coord = ( DATAMEMBER => [ 0, 4, 6 ], NOTES => "These tags are written by Nikon DSLR's which have the live view feature.", 0 => { + # (expeed 5 processor cameras are version 0101, expeed 6 are version 03xx) Name => 'AFInfo2Version', Format => 'undef[4]', Writable => 0, @@ -4413,6 +4519,7 @@ my %base64coord = ( { #PH (Z7) Name => 'PrimaryAFPoint', Condition => '$$self{PhaseDetectAF} == 8 and $$self{AFInfo2Version} =~ /^03/', + PrintConvColumns => 5, PrintConv => { 0 => '(none)', %afPoints81, @@ -4697,10 +4804,14 @@ my %base64coord = ( }, ); -%Image::ExifTool::Nikon::AFInfo2V0400 = ( #V0400 related fields begin at x'3c' (Z9) +%Image::ExifTool::Nikon::AFInfo2V0400 = ( %binaryDataAttrs, GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' }, - DATAMEMBER => [ 0 ], + DATAMEMBER => [ 0, 5 ], + NOTES => q{ + AF information for Nikon cameras with the Expeed 7 processor: The Zf, Z6_3, + Z8, Z9 and Z50_3. + }, 0 => { Name => 'AFInfo2Version', Format => 'undef[4]', @@ -4709,6 +4820,7 @@ my %base64coord = ( }, 5 => { #28 Name => 'AFAreaMode', #reflects the mode active when the shutter is tripped, not the position of the Focus Mode button (which is recorded in MenuSettingsZ9 tag also named AfAreaMode) + RawConv => '$$self{AFAreaModeUsed} = $val', PrintConv => { 192 => 'Pinpoint', 193 => 'Single', @@ -4722,15 +4834,34 @@ my %base64coord = ( 208 => 'Wide (C1/C2)', }, }, - 10 => { - Name => 'AFPointsUsed', - Condition => 'defined $$self{AFAreaMode} and $$self{AFAreaMode} == 6', #only valid for Auto AF Area mode. Other modes handled via AFAreaXPosition/AFAreaYPosition - Format => 'undef[51]', - ValueConv => 'join(" ", unpack("H2"x51, $val))', - ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', - PrintConv => sub { PrintAFPoints(shift, \%afPoints493); }, - PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); }, - }, + 10 => [{ + # valid only for AFAreaModes where the camera selects the focus point (i.e., AutoArea & 3D-Tracking) + # and the camera has yet to determine a focus target (in these cases tags AFAreaXPosition and AFAreaYPosition will be zeroes) + Name => 'AFPointsUsed', # Z8 and Z9 (AFInfo2Version 0400) + Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[51]', + Notes => 'either AFPointsUsed or AFAreaX/YPosition will be set, but not both', + ValueConv => 'join(" ", unpack("H2"x51, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints493); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); }, + },{ + Name => 'AFPointsUsed', # Z6iii and Zf (AFInfo2Version 0401) + Condition => '$$self{Model} =~ /^NIKON (Z6_3|Z f)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[35]', + ValueConv => 'join(" ", unpack("H2"x35, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints273); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints273); }, + },{ + Name => 'AFPointsUsed', # Z50ii (AFInfo2Version 0402) + Condition => '$$self{Model} =~ /^NIKON Z50_2\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)', + Format => 'undef[27]', + ValueConv => 'join(" ", unpack("H2"x27, $val))', + ValueConvInv => '$val=~tr/ //d; pack("H*",$val)', + PrintConv => sub { PrintAFPoints(shift, \%afPoints209); }, + PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints209); }, + }], 0x3e => { Name => 'AFImageWidth', Format => 'int16u', @@ -4744,27 +4875,27 @@ my %base64coord = ( Format => 'int16u', # (decodes same byte as 0x43) RawConv => '$val ? $val : undef', }, - 0x43 => { - Name => 'FocusPositionHorizontal', - Notes => q{ - the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1 - to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U - (4) and 2D (12) are not used for some reason - }, - # 493 focus points for Z9 fall in a 30x19 grid - # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email) - PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); }, - }, + #0x43 => { + # Name => 'FocusPositionHorizontal', + # Notes => q{ + # the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1 + # to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U + # (4) and 2D (12) are not used for some reason + # }, + # # 493 focus points for Z9 fall in a 30x19 grid + # # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email) + # PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); }, + #}, 0x44 => { #28 Name => 'AFAreaYPosition', Format => 'int16u', # (decodes same byte as 0x45) RawConv => '$val ? $val : undef', }, - 0x45 => { - Name => 'FocusPositionVertical', - # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email) - PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); }, - }, + #0x45 => { + # Name => 'FocusPositionVertical', + # # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email) + # PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); }, + #}, 0x46 => { Name => 'AFAreaWidth', Format => 'int16u', @@ -5587,9 +5718,9 @@ my %nikonFocalConversions = ( }, }, 0x34 => { #28 - Name => 'LensFirmwareVersion', + Name => 'LensFirmwareVersion', Condition => '$$self{LensID} and $$self{LensID} != 0', #only valid for Z-mount lenses - Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme. + Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme. PrintConv => q{ my $version = int($val / 256); my $release = int(($val - 256 * $version)/16); @@ -8395,7 +8526,7 @@ my %nikonFocalConversions = ( TagTable => 'Image::ExifTool::Nikon::MenuSettingsZ6III', Start => '$val', }, - }, + }, ); # shot information for the Z7II firmware 1.00 (encrypted) - ref 28 @@ -9191,7 +9322,7 @@ my %nikonFocalConversions = ( 720 => { Name => 'FlickerReductionShooting',PrintConv => \%offOn }, 722 => { Name => 'NikonMeteringMode', PrintConv => \%meteringModeZ7}, 724 => { - Name => 'FlashControlMode', + Name => 'FlashControlMode', RawConv => '$$self{FlashControlMode} = $val', PrintConv => \%flashControlModeZ7, }, @@ -14091,7 +14222,7 @@ Nikon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCapture.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCapture.pm index bd83918..8e31567 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCapture.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCapture.pm @@ -918,7 +918,7 @@ the maker notes of NEF images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCustom.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCustom.pm index a9debb9..768aa9d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCustom.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonCustom.pm @@ -11362,7 +11362,7 @@ this information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonSettings.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonSettings.pm index 4f8259e..b7c452f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonSettings.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/NikonSettings.pm @@ -2132,7 +2132,7 @@ Nikon cameras such as the D6 and Z7mk2. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nintendo.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nintendo.pm index 6fa81af..13007ea 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nintendo.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Nintendo.pm @@ -107,7 +107,7 @@ interpret Nintendo maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OOXML.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OOXML.pm index 0af0b68..88445a1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OOXML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OOXML.pm @@ -395,7 +395,7 @@ archives of XML files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ogg.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ogg.pm index 24a1a87..7cd2985 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ogg.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ogg.pm @@ -215,7 +215,7 @@ information from Ogg bitstream container files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Olympus.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Olympus.pm index 3a0795b..aafbbcd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Olympus.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Olympus.pm @@ -4194,7 +4194,7 @@ Olympus or Epson maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OpenEXR.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OpenEXR.pm index 996a167..c53e563 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OpenEXR.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/OpenEXR.pm @@ -341,7 +341,7 @@ information from OpenEXR images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Opus.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Opus.pm index eecb28d..af89224 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Opus.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Opus.pm @@ -69,7 +69,7 @@ information from Ogg Opus audio files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Other.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Other.pm index 63e7a35..47b2e8b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Other.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Other.pm @@ -71,7 +71,7 @@ information from Portable FloatMap (PFM) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PCX.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PCX.pm index 727d4c7..e35962b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PCX.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PCX.pm @@ -114,7 +114,7 @@ information from PC Paintbrush (PCX) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PDF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PDF.pm index 6dd79ec..c4dc465 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PDF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PDF.pm @@ -2497,7 +2497,7 @@ and AESV3 (AES-256). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PGF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PGF.pm index 5520fc0..8b66fc7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PGF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PGF.pm @@ -119,7 +119,7 @@ information from Progressive Graphics File (PGF) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PICT.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PICT.pm index aa0fed6..3af8fd7 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PICT.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PICT.pm @@ -1236,7 +1236,7 @@ Verbose or the Unknown option. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLIST.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLIST.pm index 070caad..1ba95da 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLIST.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLIST.pm @@ -450,7 +450,7 @@ This module decodes both the binary and XML-based PLIST format. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLUS.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLUS.pm index 164346d..274140d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLUS.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PLUS.pm @@ -2601,7 +2601,7 @@ Definitions for PLUS (Picture Licensing Universal System) tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PNG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PNG.pm index 49f8893..ec08cdb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PNG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PNG.pm @@ -1698,7 +1698,7 @@ and JNG (JPEG Network Graphics) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PPM.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PPM.pm index 8ec96e4..c73322f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PPM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PPM.pm @@ -152,7 +152,7 @@ BitMap) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PSP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PSP.pm index 88051f7..1944ff3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PSP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PSP.pm @@ -284,7 +284,7 @@ information from Paint Shop Pro images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Palm.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Palm.pm index aa28975..6595c45 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Palm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Palm.pm @@ -379,7 +379,7 @@ KF7 and KF8 books (AZW and AZW3). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Panasonic.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Panasonic.pm index a3d9837..a1f301d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Panasonic.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Panasonic.pm @@ -37,7 +37,7 @@ use vars qw($VERSION %leicaLensTypes); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; -$VERSION = '2.22'; +$VERSION = '2.24'; sub ProcessLeicaLEIC($$$); sub WhiteBalanceConv($;$$); @@ -360,12 +360,16 @@ my %shootingMode = ( '16' => 'Normal?', # (only mode for DMC-LC20) '16 0' => '1-area', # (FZ8) '16 16' => '1-area (high speed)', # (FZ8) + '16 32' => '1-area +', #forum16903 (G9M2) + '17 0' => 'Full Area', #forum16903 (G9M2) # '32 0' is Face Detect for FS7, and Face Detect or Focus Tracking # for the DMC-FZ200 (ref 17), and Auto is DMC-L1 guess, '32 0' => 'Tracking', '32 1' => '3-area (left)?', # (DMC-L1 guess) '32 2' => '3-area (center)?', # (DMC-L1 guess) '32 3' => '3-area (right)?', # (DMC-L1 guess) + '32 16' => 'Zone', #forum16903 (G9M2) + '32 18' => 'Zone (horizontal/vertical)', #forum16903 (G9M2) # '32 16' ? (DC-GH6) '64 0' => 'Face Detect', '64 1' => 'Face Detect (animal detect on)', #forum11194 @@ -1448,6 +1452,26 @@ my %shootingMode = ( Name => 'MinimumISO', Writable => 'int32u', }, + 0xe9 => { #forum16903 (DC-G9M2) + Name => 'AFSubjectDetection', + Writable => 'int16u', + PrintConv => { + 0 => 'n/a', + 1 => 'Human Eye/Face/Body', + 2 => 'Animal', #PH (NC) (DC-S5 and DC-S5M2) + 3 => 'Human Eye/Face', + 4 => 'Animal Body', + 5 => 'Animal Eye/Body', + 6 => 'Car', + 7 => 'Motorcycle', + 8 => 'Car (main part priority)', + 9 => 'Motorcycle (helmet priority)', + 10 => 'Train', + 11 => 'Train (main part priority)', + 12 => 'Airplane', + 13 => 'Airplane (nose priority)', + } + }, 0xee => { #PH (DC-GH6) Name => 'DynamicRangeBoost', Writable => 'int16u', @@ -2902,7 +2926,7 @@ Panasonic and Leica maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PanasonicRaw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PanasonicRaw.pm index 477d35b..c6f5aba 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PanasonicRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PanasonicRaw.pm @@ -935,7 +935,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Parrot.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Parrot.pm index 1038f5c..b7ce91c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Parrot.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Parrot.pm @@ -825,7 +825,7 @@ timed metadata from the 'mett' frame found in Parrot drone MP4 videos. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Pentax.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Pentax.pm index 4a281cb..6367b9a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Pentax.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Pentax.pm @@ -6477,7 +6477,7 @@ tags, and everyone who helped contribute to the LensType values. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhaseOne.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhaseOne.pm index e8cc279..be9e9cb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhaseOne.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhaseOne.pm @@ -726,7 +726,7 @@ One maker notes. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoCD.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoCD.pm index 8d85976..1abce5b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoCD.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoCD.pm @@ -484,7 +484,7 @@ information from Kodak Photo CD Image Pac (PCD) files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoMechanic.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoMechanic.pm index f39a598..43d5102 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoMechanic.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PhotoMechanic.pm @@ -237,7 +237,7 @@ write information written by the Camera Bits Photo Mechanic software. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Photoshop.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Photoshop.pm index 451dbca..abb4421 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Photoshop.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Photoshop.pm @@ -1262,7 +1262,7 @@ be preserved when copying Photoshop information via user-defined tags. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PostScript.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PostScript.pm index ec926e8..3e78c8f 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PostScript.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PostScript.pm @@ -768,7 +768,7 @@ This code reads meta information from EPS (Encapsulated PostScript), PS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PrintIM.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PrintIM.pm index 146b4e1..72068a1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PrintIM.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/PrintIM.pm @@ -112,7 +112,7 @@ Print Image Matching meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Protobuf.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Protobuf.pm index 45935e0..a40508a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Protobuf.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Protobuf.pm @@ -5,8 +5,9 @@ # # Revisions: 2024-12-04 - P. Harvey Created # -# Notes: Tag definitions for Protobuf tags support additional 'signed' -# and 'unsigned' formats for varInt (type 0) values +# Notes: Tag definitions for Protobuf tags support additional 'signed', +# 'unsigned' and 'int64s' formats for varInt (type 0) values, +# and 'rational' for byte (type 2) values # # References: 1) https://protobuf.dev/programming-guides/encoding/ #------------------------------------------------------------------------------ @@ -17,13 +18,13 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.00'; +$VERSION = '1.02'; sub ProcessProtobuf($$$;$); #------------------------------------------------------------------------------ # Read bytes from dirInfo object -# Inputs: 0) dirInfo ref, 1) number of bytes +# Inputs: 0) dirInfo ref (with DataPt and Pos set), 1) number of bytes # Returns: binary data or undef on error sub GetBytes($$) { @@ -105,7 +106,7 @@ sub IsProtobuf($) #------------------------------------------------------------------------------ # Process protobuf data (eg. DJI djmd timed data from Action4 videos) (ref 1) -# Inputs: 0) ExifTool ref, 1) dirInfo ref with DataPt, DirName and Base, +# Inputs: 0) ExifTool ref, 1) dirInfo ref with DataPt, DataPos, DirName and Base, # 2) tag table ptr, 3) prefix of parent protobuf ID's # Returns: true on success sub ProcessProtobuf($$$;$) @@ -113,27 +114,32 @@ sub ProcessProtobuf($$$;$) my ($et, $dirInfo, $tagTbl, $prefix) = @_; my $dataPt = $$dirInfo{DataPt}; my $dirName = $$dirInfo{DirName}; + my $dirStart = $$dirInfo{DirStart} || 0; + my $dirLen = $$dirInfo{DirLen} || (length($$dataPt) - $dirStart); + my $dirEnd = $dirStart + $dirLen; + my $dataPos = ($$dirInfo{Base} || 0) + ($$dirInfo{DataPos} || 0); my $unknown = $et->Options('Unknown') || $et->Options('Verbose'); $$dirInfo{Pos} = $$dirInfo{DirStart} || 0; # initialize buffer Pos + $et->VerboseDir('Protobuf', undef, $dirLen); unless ($prefix) { $prefix = ''; - $$et{ProtocolName}{$dirName} = '*' unless defined $$et{ProtocolName}{$dirName}; + $$et{ProtoPrefix}{$dirName} = '' unless defined $$et{ProtoPrefix}{$dirName}; SetByteOrder('II'); } # loop through protobuf records for (;;) { my $pos = $$dirInfo{Pos}; - last if $pos >= length $$dataPt; + last if $pos >= $dirEnd; my ($buff, $id, $type) = ReadRecord($dirInfo); defined $buff or $et->Warn('Protobuf format error'), last; if ($type == 2 and $buff =~ /\.proto$/) { # save protocol name separately for directory type - $$et{ProtocolName}{$dirName} = substr($buff, 0, -6); + $$et{ProtoPrefix}{$dirName} = substr($buff, 0, -6) . '_'; $et->HandleTag($tagTbl, Protocol => $buff); } - my $tag = "$$et{ProtocolName}{$dirName}_$prefix$id"; + my $tag = "$$et{ProtoPrefix}{$dirName}$prefix$id"; my $tagInfo = $$tagTbl{$tag}; if ($tagInfo) { next if $type != 2 and $$tagInfo{Unknown} and not $unknown; @@ -157,23 +163,45 @@ sub ProcessProtobuf($$$;$) if ($$tagInfo{Format}) { if ($type == 0) { $val = $buff; - $val = ($val & 1) ? -($val >> 1)-1 : ($val >> 1) if $$tagInfo{Format} eq 'signed'; + if ($$tagInfo{Format} eq 'signed') { + $val = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); + } elsif ($$tagInfo{Format} eq 'int64s' and $val > 0xffffffff) { + # hack for DJI drones which store 64-bit signed integers improperly + # (just toss upper 32 bits which should be all 1's anyway) + $val = ($val & 0xffffffff) - 4294967296; + } + } elsif ($type == 2 and $$tagInfo{Format} eq 'rational') { + my $dir = { DataPt => \$buff, Pos => 0 }; + my $num = VarInt($dir); + my $den = VarInt($dir); + $val = (defined $num and $den) ? "$num/$den" : 'err'; } else { $val = ReadValue(\$buff, 0, $$tagInfo{Format}, undef, length($buff)); } } elsif ($type == 0) { $val = $buff; - my $signed = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); - $val .= sprintf(" (0x%x, signed $signed)", $val); + my $hex = sprintf('%x', $val); + if (length($hex) == 16 and $hex =~ /^ffffffff/) { + my $s64 = hex(substr($hex, 8)) - 4294967296; + $val .= " (0x$hex, int64s $s64)"; + } else { + my $signed = ($val & 1) ? -($val >> 1)-1 : ($val >> 1); + $val .= " (0x$hex, signed $signed)"; + } } elsif ($type == 1) { $val = '0x' . unpack('H*', $buff) . ' (double ' . GetDouble(\$buff,0) . ')'; } elsif ($type == 2) { - if ($$tagInfo{IsProtobuf}) { - $et->VPrint(1, "+ Protobuf $tag (" . length($buff) . " bytes)\n"); - my $addr = $$dirInfo{Base} + $$dirInfo{Pos} - length($buff); - $et->VerboseDump(\$buff, Addr => $addr); - my %subdir = ( DataPt => \$buff, Base => $addr, DirName => $dirName ); + if ($$tagInfo{SubDirectory}) { + # (fall through to process known SubDirectory) + } elsif ($$tagInfo{IsProtobuf}) { + # process Unknown protobuf directories + $et->VPrint(1, "$$et{INDENT}Protobuf $tag (" . length($buff) . " bytes) -->\n"); + my $addr = $dataPos + $$dirInfo{Pos} - length($buff); + $et->VerboseDump(\$buff, Addr => $addr, Prefix => $$et{INDENT}); + my %subdir = ( DataPt => \$buff, DataPos => $addr, DirName => $dirName ); + $$et{INDENT} .= '| '; ProcessProtobuf($et, \%subdir, $tagTbl, "$prefix$id-"); + $$et{INDENT} = substr($$et{INDENT}, 0, -2); next; } elsif ($buff !~ /[^\x20-\x7e]/) { $val = $buff; # assume this is an ASCII string @@ -193,7 +221,7 @@ sub ProcessProtobuf($$$;$) my $start = $type == 0 ? $pos + 1 : $$dirInfo{Pos} - length $buff; $et->HandleTag($tagTbl, $tag, $val, DataPt => $dataPt, - DataPos=> $$dirInfo{Base}, + DataPos=> $dataPos, Start => $start, Size => $$dirInfo{Pos} - $start, Extra => ", type=$type", @@ -201,7 +229,7 @@ sub ProcessProtobuf($$$;$) ); } # warn if we didn't finish exactly at the end of the buffer - $et->Warn('Truncated protobuf data') unless $prefix or $$dirInfo{Pos} == length $$dataPt; + $et->Warn('Truncated protobuf data') unless $prefix or $$dirInfo{Pos} == $dirEnd; return 1; } @@ -222,7 +250,7 @@ information in protocol buffer (protobuf) format. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Qualcomm.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Qualcomm.pm index ef50d3e..bba14ca 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Qualcomm.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Qualcomm.pm @@ -1331,7 +1331,7 @@ information from the APP7 Qualcomm segment in JPEG images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm index 29b7fae..83e6508 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm @@ -43,12 +43,12 @@ package Image::ExifTool::QuickTime; use strict; -use vars qw($VERSION $AUTOLOAD %stringEncoding); +use vars qw($VERSION $AUTOLOAD %stringEncoding %avType); use Image::ExifTool qw(:DataAccess :Utils); use Image::ExifTool::Exif; use Image::ExifTool::GPS; -$VERSION = '3.07'; +$VERSION = '3.10'; sub ProcessMOV($$;$); sub ProcessKeys($$$); @@ -69,8 +69,6 @@ sub Process_gps0($$$); sub Process_gsen($$$); sub Process_gdat($$$); sub Process_nbmt($$$); -sub ProcessLigoGPS($$$;$); -sub ProcessLigoJSON($$$); sub ProcessKenwood($$$); sub ProcessRIFFTrailer($$$); sub ProcessTTAD($$$); @@ -253,15 +251,20 @@ my %timeInfo = ( # Note: This value will be in UTC if generated by a system that is aware of the time zone # (also note: this code is duplicated for the CreateDate tag) RawConv => q{ - my $offset = (66 * 365 + 17) * 24 * 3600; - return $val - $offset if $val >= $offset or $$self{OPTIONS}{QuickTimeUTC}; - if ($val and not $$self{IsWriting}) { - $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + if ($val) { + my $offset = (66 * 365 + 17) * 24 * 3600; + if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { + $val -= $offset; + } elsif (not $$self{IsWriting}) { + $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + } + } else { + undef $val if $self->Options('StrictDate'); } return $val; }, RawConvInv => q{ - if ($$self{FileType} eq 'CR3' and not $self->Options('QuickTimeUTC')) { + if ($val and $$self{FileType} eq 'CR3' and not $self->Options('QuickTimeUTC')) { # convert to UTC my $offset = (66 * 365 + 17) * 24 * 3600; $val = ConvertUnixTime($val - $offset); @@ -274,10 +277,14 @@ my %timeInfo = ( ValueConvInv => q{ $val = GetUnixTime($val, $self->Options("QuickTimeUTC")); return undef unless defined $val; + return $val unless $val; return $val + (66 * 365 + 17) * 24 * 3600; }, PrintConv => '$self->ConvertDateTime($val)', - PrintConvInv => '$self->InverseDateTime($val)', + PrintConvInv => q{ + return $val if $val eq '0000:00:00 00:00:00'; + return $self->InverseDateTime($val); + } # (can't put Groups here because they aren't constant!) ); # properties for ISO 8601 format date/time tags @@ -351,6 +358,19 @@ my %vendorID = ( 5 => 'UTF16', ); +# media types for which we have separate Keys tables (AudioKeys, VideoKeys) +%avType = ( + soun => 'Audio', + vide => 'Video', +); + +# path to Keys/ItemList/UserData tags stored in tracks +my %trackPath = ( + 'MOV-Movie-Track-Meta-ItemList' => 'Keys', + 'MOV-Movie-Track-UserData-Meta-ItemList' => 'ItemList', + 'MOV-Movie-Track-UserData' => 'UserData', +); + my %graphicsMode = ( # (ref http://homepage.mac.com/vanhoek/MovieGuts%20docs/64.html) 0x00 => 'srcCopy', @@ -587,13 +607,24 @@ my %userDefined = ( }, { Name => 'LigoGPSInfo', - Condition => '$$valPt =~ /^LIGOGPSINFO\0/', - SubDirectory => { + Condition => '$$valPt =~ /^LIGOGPSINFO\0/ and $$self{OPTIONS}{ExtractEmbedded}', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Stream', - ProcessProc => \&ProcessLigoGPS, + ProcessProc => 'Image::ExifTool::LigoGPS::ProcessLigoGPS', }, }, - { Name => 'Skip', Unknown => 1, Binary => 1 }, + { + Name => 'Skip', + RawConv => q{ + if ($val =~ /^LIGOGPSINFO\0/) { + $self->Warn('Use the ExtractEmbedded option to decode timed GPS',3); + return undef; + } + return $val; + }, + Unknown => 1, + Binary => 1, + }, ], wide => { Unknown => 1, Binary => 1 }, ftyp => { #MP4 @@ -775,7 +806,7 @@ my %userDefined = ( Condition => '$$valPt =~ /^LIGOGPSINFO \{/', SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Stream', - ProcessProc => \&ProcessLigoJSON, + ProcessProc => 'Image::ExifTool::LigoGPS::ProcessLigoJSON', }, },{ Name => 'FLIRData', @@ -1412,11 +1443,15 @@ my %userDefined = ( Groups => { 2 => 'Time' }, %timeInfo, RawConv => q{ - my $offset = (66 * 365 + 17) * 24 * 3600; - if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { - $val -= $offset; - } elsif ($val and not $$self{IsWriting}) { - $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + if ($val) { + my $offset = (66 * 365 + 17) * 24 * 3600; + if ($val >= $offset or $$self{OPTIONS}{QuickTimeUTC}) { + $val -= $offset; + } elsif (not $$self{IsWriting}) { + $self->Warn('Patched incorrect time zero for QuickTime date/time tag',1); + } + } else { + undef $val if $$self{OPTIONS}{StrictDate}; } return $$self{CreateDate} = $val; }, @@ -1514,7 +1549,7 @@ my %userDefined = ( # (this tag is readable/writable as a block through the Extra SphericalVideoXML tags) Condition => '$$valPt=~/^\xff\xcc\x82\x63\xf8\x55\x4a\x93\x88\x14\x58\x7a\x02\x52\x1f\xdd/', WriteGroup => 'GSpherical', # write only GSpherical XMP tags here - HandlerType => 'vide', # only write in video tracks + MediaType => 'vide', # only write in video tracks SubDirectory => { TagTable => 'Image::ExifTool::XMP::Main', Start => 16, @@ -2842,10 +2877,18 @@ my %userDefined = ( IgnoreProp => { NonRealTimeMeta => 1 }, # ignore container for Sony 'nrtm' }, }, - 'keys' => { + 'keys' => [{ + Name => 'AudioKeys', + Condition => '$$self{MediaType} eq "soun"', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::AudioKeys' }, + },{ + Name => 'VideoKeys', + Condition => '$$self{MediaType} eq "vide"', + SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::VideoKeys' }, + },{ Name => 'Keys', SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Keys' }, - }, + }], bxml => { Name => 'BinaryXML', Flags => ['Binary','Unknown'], @@ -3586,7 +3629,7 @@ my %userDefined = ( my $id = Image::ExifTool::ID3::GetGenreID($val); return unless defined $id and $id =~ /^\d+$/; return $id + 1; - }, + }, }, egid => 'EpisodeGlobalUniqueID', #7 geID => { #10 @@ -6588,7 +6631,7 @@ my %userDefined = ( PROCESS_PROC => \&ProcessKeys, WRITE_PROC => \&WriteKeys, CHECK_PROC => \&CheckQTValue, - VARS => { LONG_TAGS => 9 }, + VARS => { LONG_TAGS => 8 }, WRITABLE => 1, # (not PREFERRED when writing) GROUPS => { 1 => 'Keys' }, @@ -6634,21 +6677,11 @@ my %userDefined = ( publisher => { }, software => { }, year => { Groups => { 2 => 'Time' } }, - 'camera.identifier' => 'CameraIdentifier', # (iPhone 4) - 'camera.framereadouttimeinmicroseconds' => { # (iPhone 4) - Name => 'FrameReadoutTime', - ValueConv => '$val * 1e-6', - ValueConvInv => 'int($val * 1e6 + 0.5)', - PrintConv => '$val * 1e6 . " microseconds"', - PrintConvInv => '$val =~ s/ .*//; $val * 1e-6', - }, - # 'camera.focal_length.35mm_equivalent' - not top level (written to Keys in video track) - # 'camera.lens_model' - not top level (written to Keys in video track) 'location.ISO6709' => { Name => 'GPSCoordinates', Groups => { 2 => 'Location' }, Notes => q{ - Google Photos may ignore this if the coorinates have more than 5 digits + Google Photos may ignore this if the coordinates have more than 5 digits after the decimal }, ValueConv => \&ConvertISO6709, @@ -6704,7 +6737,6 @@ my %userDefined = ( # # the following tags aren't in the com.apple.quicktime namespace: # - 'com.apple.photos.captureMode' => 'CaptureMode', 'com.android.version' => 'AndroidVersion', 'com.android.capture.fps' => { Name => 'AndroidCaptureFPS', Writable => 'float' }, 'com.android.manufacturer' => 'AndroidMake', @@ -6804,6 +6836,58 @@ my %userDefined = ( # (mdta)com.apple.proapps.image.{TIFF}.Software (eg. "9.0") ); +# Keys tags in the audio track (ref PH) +%Image::ExifTool::QuickTime::AudioKeys = ( + PROCESS_PROC => \&ProcessKeys, + WRITE_PROC => \&WriteKeys, + CHECK_PROC => \&CheckQTValue, + WRITABLE => 1, + GROUPS => { 1 => 'AudioKeys', 2 => 'Audio' }, + WRITE_GROUP => 'AudioKeys', + LANG_INFO => \&GetLangInfo, + NOTES => q{ + Keys tags written in the audio track by some Apple devices. These tags + belong to the ExifTool AudioKeys family 1 gorup. + }, + 'player.movie.audio.gain' => 'AudioGain', + 'player.movie.audio.treble' => 'Treble', + 'player.movie.audio.bass' => 'Bass', + 'player.movie.audio.balance' => 'Balance', + 'player.movie.audio.pitchshift' => 'PitchShift', + 'player.movie.audio.mute' => { + Name => 'Mute', + Format => 'int8u', + PrintConv => { 0 => 'Off', 1 => 'On' }, + }, +); + +# Keys tags in the video track (ref PH) +%Image::ExifTool::QuickTime::VideoKeys = ( + PROCESS_PROC => \&ProcessKeys, + WRITE_PROC => \&WriteKeys, + CHECK_PROC => \&CheckQTValue, + VARS => { LONG_TAGS => 2 }, + WRITABLE => 1, + GROUPS => { 1 => 'VideoKeys', 2 => 'Camera' }, + WRITE_GROUP => 'VideoKeys', + LANG_INFO => \&GetLangInfo, + NOTES => q{ + Keys tags written in the video track. These tags belong to the ExifTool + VideoKeys family 1 gorup. + }, + 'camera.identifier' => 'CameraIdentifier', + 'camera.lens_model' => 'LensModel', + 'camera.focal_length.35mm_equivalent' => 'FocalLengthIn35mmFormat', + 'camera.framereadouttimeinmicroseconds' => { + Name => 'FrameReadoutTime', + ValueConv => '$val * 1e-6', + ValueConvInv => 'int($val * 1e6 + 0.5)', + PrintConv => '$val * 1e6 . " microseconds"', + PrintConvInv => '$val =~ s/ .*//; $val * 1e-6', + }, + 'com.apple.photos.captureMode' => 'CaptureMode', +); + # iTunes info ('----') atoms %Image::ExifTool::QuickTime::iTunesInfo = ( PROCESS_PROC => \&ProcessMOV, @@ -7269,7 +7353,7 @@ my %userDefined = ( { Name => 'VideoFrameRate', Notes => 'average rate calculated from time-to-sample table for video media', - Condition => '$$self{HandlerType} and $$self{HandlerType} eq "vide"', + Condition => '$$self{MediaType} eq "vide"', Format => 'undef', # (necessary to prevent decoding as string!) # (must be RawConv so appropriate MediaTS is used in calculation) RawConv => 'Image::ExifTool::QuickTime::CalcSampleRate($self, \$val)', @@ -7860,7 +7944,6 @@ my %userDefined = ( mode => 'ModeFlags', #PH (?) 0x04 is HD flag (https://compilr.com/heksesang/requiem-mac/UnDrm.java) # sing - seen 4 zeros # hi32 - seen "00 00 00 04" - ); # MP4 hint sample description box (ref 5) @@ -8108,6 +8191,7 @@ my %userDefined = ( Format => 'undef[4]', RawConv => q{ $$self{HandlerType} = $val unless $val eq 'alis' or $val eq 'url '; + $$self{MediaType} = $val if @{$$self{PATH}} > 1 and $$self{PATH}[-2] eq 'Media'; $$self{HasHandler}{$val} = 1; # remember all our handlers return $val; }, @@ -8692,24 +8776,28 @@ sub UnpackLang($;$) # Get language code string given QuickTime language and country codes # Inputs: 0) numerical language code, 1) numerical country code, 2) no defaults # Returns: language code string (ie. "fra-FR") or undef for default language +# ex) 0x15c7 0x0000 is 'eng' with no country (ie. returns 'und' unless $noDef) +# 0x15c7 0x5553 is 'eng-US' +# 0x1a41 0x4652 is 'fra-FR' +# 0x55c4 is 'und' sub GetLangCode($;$$) { my ($lang, $ctry, $noDef) = @_; # ignore country ('ctry') and language lists ('lang') for now undef $ctry if $ctry and $ctry <= 255; undef $lang if $lang and $lang <= 255; - $lang = UnpackLang($lang, $noDef); + my $langCode = UnpackLang($lang, $noDef); # add country code if specified if ($ctry) { $ctry = unpack('a2',pack('n',$ctry)); # unpack as ISO 3166-1 # treat 'ZZ' like a default country (see ref 12) undef $ctry if $ctry eq 'ZZ'; if ($ctry and $ctry =~ /^[A-Z]{2}$/) { - $lang or $lang = 'und'; - $lang .= "-$ctry"; + $langCode or $langCode = UnpackLang($lang,1) || 'und'; + $langCode .= "-$ctry"; } } - return $lang; + return $langCode; } #------------------------------------------------------------------------------ @@ -9527,6 +9615,8 @@ sub ProcessKeys($$$) my $groups = $$tagInfo{Groups}; $$newInfo{Groups} = $groups ? { %$groups } : { }; $$newInfo{Groups}{$_} or $$newInfo{Groups}{$_} = $$tagTablePtr{GROUPS}{$_} foreach 0..2; + # set Keys group. This is necessary for logic when reading the associated ItemList entry, + # but note that the group name will be overridden by TAG_EXTRA G1 for tags in a track $$newInfo{Groups}{1} = 'Keys'; } elsif ($tag =~ /^[-\w. ]+$/ or $tag =~ /\w{4}/) { # create info for tags with reasonable id's @@ -9594,7 +9684,7 @@ sub ProcessMOV($$;$) my $topLevel = not $$et{InQuickTime}; $$et{InQuickTime} = 1; - $$et{HandlerType} = $$et{MetaFormat} = '' unless defined $$et{HandlerType}; + $$et{HandlerType} = $$et{MetaFormat} = $$et{MediaType} = '' if $topLevel; unless (defined $$et{KeysCount}) { $$et{KeysCount} = 0; # initialize ItemList key directory count @@ -9620,13 +9710,15 @@ sub ProcessMOV($$;$) } ($size, $tag) = unpack('Na4', $buff); my $fast = $$et{OPTIONS}{FastScan} || 0; - # check for Insta360 trailer + # check for Insta360 or LIGOGPSINFO trailer if ($topLevel and not $fast) { my $pos = $raf->Tell(); - if ($raf->Seek(-40, 2) and $raf->Read($buff, 40) == 40 and - substr($buff, 8) eq '8db42d694ccc418790edff439fe026bf') - { - $trailer = [ 'Insta360', $raf->Tell() - unpack('V',$buff) ]; + if ($raf->Seek(-40, 2) and $raf->Read($buff, 40) == 40) { + if (substr($buff, 8) eq '8db42d694ccc418790edff439fe026bf') { + $trailer = [ 'Insta360', $raf->Tell() - unpack('V',$buff) ]; + } elsif ($buff =~ /\&\&\&\&(.{4})$/) { + $trailer = [ 'LigoGPS', $raf->Tell() - Get32u(\$buff, 36) ]; + } } $raf->Seek($pos,0) or return 0; } @@ -9743,16 +9835,18 @@ sub ProcessMOV($$;$) } if ($isUserData and $$et{SET_GROUP1}) { my $tagInfo = $et->GetTagInfo($tagTablePtr, $tag); - # add track name to UserData tags inside tracks - $tag = $$et{SET_GROUP1} . $tag; - if (not $$tagTablePtr{$tag} and $tagInfo) { - my %newInfo = %$tagInfo; - foreach ('Name', 'Description') { - next unless $$tagInfo{$_}; - $newInfo{$_} = $$et{SET_GROUP1} . $$tagInfo{$_}; - $newInfo{$_} =~ s/^(Track\d+)Track/$1/; # remove duplicate "Track" in name + unless ($$tagInfo{SubDirectory}) { + # add track name to UserData tags inside tracks + $tag = $$et{SET_GROUP1} . $tag; + if (not $$tagTablePtr{$tag} and $tagInfo) { + my %newInfo = %$tagInfo; + foreach ('Name', 'Description') { + next unless $$tagInfo{$_}; + $newInfo{$_} = $$et{SET_GROUP1} . $$tagInfo{$_}; + $newInfo{$_} =~ s/^(Track\d+)Track/$1/; # remove duplicate "Track" in name + } + AddTagToTable($tagTablePtr, $tag, \%newInfo); } - AddTagToTable($tagTablePtr, $tag, \%newInfo); } } # set flag to store additional information for ExtractEmbedded option @@ -9819,7 +9913,7 @@ sub ProcessMOV($$;$) # check for RIFF trailer (written by Auto-Vox dashcam) if ($buff =~ /^(gpsa|gps0|gsen|gsea)...\0/s) { # (yet seen only gpsa as first record) $et->VPrint(0, sprintf("Found RIFF trailer at offset 0x%x",$lastPos)); - if ($et->Options('ExtractEmbedded')) { + if ($ee) { $raf->Seek(-8, 1) or last; # seek back to start of trailer my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); ProcessRIFFTrailer($et, { RAF => $raf }, $tbl); @@ -9969,6 +10063,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { } } if ($tagInfo) { + my @found; my $subdir = $$tagInfo{SubDirectory}; if ($subdir) { my $start = $$subdir{Start} || 0; @@ -10087,21 +10182,23 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { Index => $index, Extra => sprintf(", Type='${type}', Flags=0x%x%s, Lang=0x%.4x",$flags,$str,$lang), ) if $verbose; - # use "Keys" in path instead of ItemList if this was defined by a Keys tag - my $isKey = $$tagInfo{Groups} && $$tagInfo{Groups}{1} && $$tagInfo{Groups}{1} eq 'Keys'; - if ($isKey) { - $oldDir = $$et{PATH}[-1]; - $$et{PATH}[-1] = 'Keys'; + if (defined $value) { + # use "Keys" in path instead of ItemList if this was defined by a Keys tag + # (the only reason for this is to have "Keys" in the family 5 group name) + # Note that the Keys group is specifically set by the ProcessKeys routine, + # even though this tag would be in the ItemList table + my $isKeys = $$tagInfo{Groups} && $$tagInfo{Groups}{1} && $$tagInfo{Groups}{1} eq 'Keys'; + $isKeys and $oldDir = $$et{PATH}[-1], $$et{PATH}[-1] = 'Keys'; + push @found, $et->FoundTag($langInfo, $value); + $$et{PATH}[-1] = $oldDir if $isKeys; } - $et->FoundTag($langInfo, $value) if defined $value; - $$et{PATH}[-1] = $oldDir if $isKey; $pos += $len; } } elsif ($tag =~ /^\xa9/ or $$tagInfo{IText}) { # parse international text to extract all languages my $pos = 0; if ($$tagInfo{Format}) { - $et->FoundTag($tagInfo, ReadValue(\$val, 0, $$tagInfo{Format}, undef, length($val))); + push @found, $et->FoundTag($tagInfo, ReadValue(\$val, 0, $$tagInfo{Format}, undef, length($val))); $pos = $size; } for (;;) { @@ -10166,7 +10263,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { $str = substr($val, $pos-$n-2, $n) . $str; } $langInfo = GetLangInfoQT($et, $tagInfo, $lang) if $lang; - $et->FoundTag($langInfo || $tagInfo, $str); + push @found, $et->FoundTag($langInfo || $tagInfo, $str); $pos += $len; } } else { @@ -10180,6 +10277,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { $$et{BASE} = $dataPos; } my $key = $et->FoundTag($tagInfo, $val); + push @found, $key; $$et{BASE} = $oldBase if defined $oldBase; # decode if necessary (NOTE: must be done after RawConv) if (defined $key and (not $format or $format =~ /^string/) and @@ -10195,6 +10293,14 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { } } } + # tweak family 1 group names for Keys/ItemList/UserData tags in a track + if ($$et{SET_GROUP1} and ($dirID eq 'ilst' or $dirID eq 'udta') and @found) { + my $type = $trackPath{join '-', @{$$et{PATH}}}; + if ($type) { + my $grp = ($avType{$$et{MediaType}} || $$et{SET_GROUP1}) . $type; + defined and $et->SetGroup($_, $grp) foreach @found; + } + } } } else { $et->VerboseInfo($tag, $tagInfo, @@ -10207,6 +10313,7 @@ ItemID: foreach $id (reverse sort { $a <=> $b } keys %$items) { last; } } + $$et{MediaType} = '' if $tag eq 'trak'; # reset track type at end of track $dataPos += $size + 8; # point to start of next atom data last if $dirEnd and $dataPos >= $dirEnd; # (note: ignores last value if 0 bytes) $lastPos = $raf->Tell() + $dirBase; @@ -10262,7 +10369,26 @@ QTLang: foreach $tag (@{$$et{QTLang}}) { # process item information now that we are done processing its 'meta' container HandleItemInfo($et) if $topLevel or $dirID eq 'meta'; - ScanMediaData($et) if $ee and $topLevel; # brute force scan for metadata embedded in media data + # process LigoGPS trailer now if it exists and we haven't already processed it + if ($trailer and $$trailer[0] eq 'LigoGPS' and $lastPos <= $$trailer[1] and + $raf->Seek($$trailer[1]) and $raf->Read($buff, 8) == 8 and $buff =~ /skip$/) + { + if ($ee) { + my $len = Get32u(\$buff, 0) - 16; + if ($len > 0 and $raf->Read($buff, $len) == $len and $buff =~ /^LIGOGPSINFO\0/) { + my $tbl = GetTagTable('Image::ExifTool::QuickTime::Stream'); + my %dirInfo = ( DataPt => \$buff, DataPos => $$trailer[1] + 8, DirName => 'LigoGPSTrailer' ); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tbl); + } else { + $et->Warn('Unrecognized data in LigoGPS trailer'); + } + } else { + $et->Warn('Use the ExtractEmbedded option to decode timed GPS',3); + } + } + # brute force scan for metadata embedded in media data + # (and process Insta360 trailer if it exists) + ScanMediaData($et) if $ee and $topLevel; # restore any changed options $et->Options($_ => $saveOptions{$_}) foreach keys %saveOptions; @@ -10280,6 +10406,24 @@ sub ProcessQTIF($$) return ProcessMOV($et, $dirInfo, $table); } +#============================================================================== +# Autoload LigoGPS module if necessary +# NOTE: Switches to package LigoGPS! +# +package Image::ExifTool::LigoGPS; +use vars qw($AUTOLOAD); +sub AUTOLOAD { + require Image::ExifTool::LigoGPS; + unless (defined &$AUTOLOAD) { + my @caller = caller(0); + # reproduce Perl's standard 'undefined subroutine' message: + die "Undefined subroutine $AUTOLOAD called at $caller[1] line $caller[2]\n"; + } + no strict 'refs'; + return &$AUTOLOAD(@_); # call the function +} +#============================================================================== + 1; # end __END__ @@ -10299,7 +10443,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl index f5fe153..0e5f5cc 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl @@ -29,6 +29,7 @@ package Image::ExifTool::QuickTime; sub ProcessFMAS($$$); sub ProcessWolfbox($$$); sub ProcessCAMM($$$); +sub OrderCipherDigits($$$;$); # QuickTime data types that have ExifTool equivalents # (ref https://developer.apple.com/library/content/documentation/QuickTime/QTFF/Metadata/Metadata.html#//apple_ref/doc/uid/TP40000939-CH1-SW35) @@ -110,7 +111,7 @@ package Image::ExifTool::QuickTime; The tags below are extracted from timed metadata in QuickTime and other formats of video files when the ExtractEmbedded option is used. Although most of these tags are combined into the single table below, ExifTool - currently reads 96 different types of timed GPS metadata from video files. + currently reads 100 different types of timed GPS metadata from video files. }, VARS => { NO_ID => 1 }, GPSLatitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', RawConv => '$$self{FoundGPSLatitude} = 1; $val' }, @@ -146,7 +147,7 @@ package Image::ExifTool::QuickTime; CameraDateTime=>{ PrintConv => '$self->ConvertDateTime($val)', Groups => { 2 => 'Time' } }, DateTimeStamp =>{ PrintConv => '$self->ConvertDateTime($val)', Groups => { 2 => 'Time' } }, VideoTimeStamp => { Groups => { 2 => 'Video' } }, - Accelerometer=> { Notes => '3-axis acceleration in units of g' }, + Accelerometer=> { Notes => '3-axis acceleration, usually in units of g' }, AccelerometerData => { }, AngularVelocity => { }, GSensor => { }, @@ -354,8 +355,7 @@ package Image::ExifTool::QuickTime; Unknown01 => { Unknown => 1 }, Unknown02 => { Unknown => 1 }, Unknown03 => { Unknown => 1 }, - M => { Name => 'Unknown_M', Unknown => 1 }, # (from LIGOGPSINFO) - H => { Name => 'Unknown_H', Unknown => 1 }, # (from LIGOGPSINFO) + MagneticVariation => { }, # (from LIGOGPSINFO) ); # tags found in 'camm' type 0 timed metadata (ref 4) @@ -1512,7 +1512,7 @@ ($) # clean up $raf->Seek($tell, 0); # restore original file position delete $$et{DOC_NUM}; - $$et{HandlerType} = $$et{HanderDesc} = ''; + $$et{HandlerType} = ''; } #------------------------------------------------------------------------------ @@ -1755,31 +1755,34 @@ ($$$) $debug and $et->FoundTag(GPSType => 5); my $pos = length $1; - # iiway s1 dual dash cam + # iiway s1 dual dash cam - offset 16, encrypted and fuzzed with scale 1 # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0020: 0a 00 00 00 23 23 23 23 6a 00 00 00 c0 20 20 20 [....####j.... ] # 0030: 20 f0 12 10 12 22 e1 0e 10 12 2f 90 10 13 02 f2 [ ...."..../.....] - # ABASK A8 4K Dashcam (different scaling factor) - # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] - # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] - # 0020: 00 00 00 00 23 23 23 23 69 00 00 00 c0 20 20 20 [....####i.... ] - # 0030: 20 f0 12 10 12 23 e5 0e 10 12 2f 99 10 11 02 f2 [ ....#..../.....] - # XGODY 12" 4K Dashcam + # XGODY 12" 4K Dashcam - offset 16, encrypted and fuzzed with scale 1 # 0000: 00 00 00 a8 66 72 65 65 47 50 53 20 98 00 00 00 [....freeGPS ....] # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0020: cd 61 00 00 23 23 23 23 6d 00 00 00 c1 ec 41 20 [.a..####m.....A ] # 0030: 20 f0 12 10 12 24 e5 0e 10 11 2f 92 10 12 00 f6 [ ....$..../.....] - # Rexing dashcam V1GW-4K + # ABASK A8 4K Dashcam - offset 16, encrypted and fuzzed with scale 3 + # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] + # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] + # 0020: 00 00 00 00 23 23 23 23 69 00 00 00 c0 20 20 20 [....####i.... ] + # 0030: 20 f0 12 10 12 23 e5 0e 10 12 2f 99 10 11 02 f2 [ ....#..../.....] + # Unknown dashcam (forum16060) - offset 16, enciphered and fuzzed with scale 1 + # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 98 00 00 00 [..@.freeGPS ....] + # 0010: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 0d [LIGOGPSINFO.....] + # 0020: 0a 00 00 00 23 23 23 23 3b 00 a0 34 46 44 46 31 [....####;..4FDF1] + # 0030: 2f 44 39 2f 45 38 20 44 3d 4c 47 4a 4c 39 38 20 [/D9/E8 D=LGJL98 ] + # Rexing dashcam V1GW-4K - offset 48, encrypted and fuzzed with scale 1 # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 03 00 00 [..@.freeGPS ....] # 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] # 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] # 0030: 4c 49 47 4f 47 50 53 49 4e 46 4f 00 00 00 00 05 [LIGOGPSINFO.....] # 0040: 01 00 00 00 23 23 23 23 73 00 00 00 c0 20 20 20 [....####s.... ] # 0050: 20 f0 12 10 12 23 e5 0e 10 12 2f 95 10 12 01 f3 [ ....#..../.....] - # 0060: 16 18 10 26 b4 1a 10 04 f2 6e 18 12 20 f0 0e 11 [...&.....n.. ...] - # 0070: 13 22 b3 16 10 01 fb 76 18 10 24 fa 0e 11 10 22 [.".....v..$...."] - # Kingslim D4 dashcam + # Kingslim D4 dashcam - offset 80, encrypted and fuzzed with scale 1 # 0000: 0a 00 00 00 0b 00 00 00 07 00 00 00 e5 07 00 00 [................] # 0010: 06 00 00 00 03 00 00 00 41 4e 57 31 91 52 83 45 [........ANW1.R.E] # 0020: 15 70 fe c5 29 5c c3 41 ae c7 af 42 00 00 d1 be [.p..)\.A...B....] @@ -1792,7 +1795,7 @@ ($$$) # (this is weak, but the only difference I could find between these 2 headers) # (NOTE: ../testpics/gps_video/forum16229.mp4 uses this word for a counter!) $$et{LigoGPSScale} = 3 if $pos == 16 and $$dataPt =~ /^.{12}\xf0\x03\0\0.{16}\0{4}/s; - ProcessLigoGPS($et, \%dirInfo, $tagTbl); + Image::ExifTool::LigoGPS::ProcessLigoGPS($et, \%dirInfo, $tagTbl); $done = 1; # also... when offset is 0x50 (Kingslim), the GPS also exists in this format: @@ -2735,291 +2738,6 @@ ($$$) return 1; } -#------------------------------------------------------------------------------ -# Un-do LIGOGPS fuzzing -# Inputs: 0) fuzzed latitude, 1) fuzzed longitude, 2) scale factor -# Returns: 0) latitude, 1) longitude -sub UnfuzzLigoGPS($$$) -{ - my ($lat, $lon, $scl) = @_; - my $lat2 = int($lat / 10) * 10; - my $lon2 = int($lon / 10) * 10; - return($lat2 + ($lon - $lon2) * $scl, $lon2 + ($lat - $lat2) * $scl); -} - -#------------------------------------------------------------------------------ -# Decrypt LIGOGPSINFO record (starting with "####") -# Inputs: 0) encrypted GPS record incuding 8-byte header -# Returns: decrypted record including 4-byte uint32 header, or undef on error -sub DecryptLigoGPS($) -{ - my $str = shift; - my $num = unpack('x4V',$str); - return undef if $num < 4; - $num = 0x84 if $num > 0x84; # (be safe) - my @in = unpack("x8C$num",$str); - my @out; - while (@in) { - my $b = shift @in; - my $steeringBits = $b & 0xe0; - if ($steeringBits >= 0xc0) { - return undef if @in < 4; - push @out, (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x02) ^ 0x20, - (shift(@in) | $b & 0x0c) ^ 0x20, - shift(@in) ^ 0x20 | $b & 0x30; - } elsif ($steeringBits >= 0x40) { - return undef if @in < 3; - if ($steeringBits == 0x40) { - push @out, 0x20, - (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x06) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20; - } elsif ($steeringBits == 0x60) { - push @out, (shift(@in) | $b & 0x03) ^ 0x20, - 0x20, - (shift(@in) | $b & 0x04) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20; - } elsif ($steeringBits == 0x80) { - push @out, (shift(@in) | $b & 0x03) ^ 0x20, - (shift(@in) | $b & 0x0c) ^ 0x20, - 0x20, - (shift(@in) | $b & 0x10) ^ 0x20; - } else { - push @out, (shift(@in) | $b & 0x01) ^ 0x20, - (shift(@in) | $b & 0x06) ^ 0x20, - (shift(@in) | $b & 0x18) ^ 0x20, - 0x20; - } - } elsif ($steeringBits == 0x00) { - return undef if @in < 1; - push @out, shift(@in) | $b & 0x13; - } else { - return undef; # (shouldn't happen) - } - } - return pack 'C*', @out; -} - -#------------------------------------------------------------------------------ -# Decipher and parse LIGOGPSINFO record (starting with "####") -# Inputs: 0) ExifTool ref, 1) enciphered string, 2) tag table ref -# Returns: true if this looked like an enciphered string -# Notes: handles contained tags, but may defer handling until full cipher is known -sub DecipherLigoGPS($$$) -{ - my ($et, $str, $tagTbl) = @_; - - # (enciphered characters must be in the range 0x30-0x5f ('0' - '_')) - $str =~ m[^####.{4}([0-_])[0-_]{3}/[0-_]{2}/[0-_]{2} ..([0-_])..([0-_]).([0-_]) ]s or return undef; - return undef unless $2 eq $3; # (colons in time string must be the same) - - my $cipherInfo = $$et{LigoCipher}; - $cipherInfo or $cipherInfo = $$et{LigoCipher} = { cache => [ ], secs => [ ], two => -1 }; - my $decipher = $$cipherInfo{decipher}; - my $cache = $$cipherInfo{cache}; - - # determine the cipher code table based on the advancing 1's digit of seconds - unless ($decipher) { - push @$cache, $str; # cache records until we can decipher them - my ($millennium, $colon) = ($1, $2); - # determine the Caesar cipher lookup table - # (only characters in range 0x30-0x5f are encrypted) - my $secs = $$cipherInfo{secs}; - push @$secs, $4 unless @$secs and $${secs}[-1] eq $4; - $$cipherInfo{two} = $#$secs if $4 eq $millennium; # save index of enciphered '2' - return 1 if @$secs < 10; # must cache the data until we know all 10 digits - my $two = $$cipherInfo{two}; # (index of '2' in the array) - my %decipher = ( $colon => ':' ); # (':' is the time separator) - foreach (0..9) { - my $ch = $$secs[($_ + $two - 2 + 10) % 10]; - if ($two < 0 or defined $decipher{$ch}) { # (must be a unique code for each digit) - @$cipherInfo{'secs','two'} = ([ ], -1); # reset and try again - $et->Warn('Hiccup while deciphering LIGOGPSINFO'); - return 1; - } - $decipher{$ch} = chr($_ + 0x30); - } - # also know the lat/lon quadrant from the signs of the coordinates - if ($str =~ / ([0-_])$colon(-?).*? ([0-_])$colon(-?)/) { - @decipher{$1,$3} = ($2 ? 'S' : 'N', $4 ? 'W' : 'E'); - } - # fill in unknown entries with '?' (only chars 0x30-0x5f are enciphered) - defined $decipher{$_} or $decipher{$_} = '?' foreach map(chr, 0x30..0x5f); - $decipher = $$cipherInfo{decipher} = \%decipher; - $str = shift @$cache; # start deciphering at oldest cache entry - } - - # apply reverse Caesar cipher and extract GPS information - do { - my $pre = substr($str, 4, 4); # save second 4 bytes of header - ($str = substr($str,8)) =~ s/\0+$//; # remove 8-byte header and null padding - $str =~ s/([0-_])/$$decipher{$1}/g; # decipher - if ($$et{OPTIONS}{Verbose} > 1) { - $et->VPrint(1, "$$et{INDENT}\(Deciphered: ".unpack('H8',$pre)." $str)\n"); - } - # add back leading 4 bytes (int16u counter plus 2 unknown bytes), and parse - # (not fuzzed in my only sample when found in standard 'skip' atom) - ParseLigoGPS($et, "$pre$str", $tagTbl, $$et{LigoType} eq 'LigoGPSInfo'); - } while $str = shift @$cache; - - return 1; -} - -#------------------------------------------------------------------------------ -# Parse decrypted/deciphered (but not defuzzed) LIGOGPSINFO record -# (record starts with 4-byte int32u counter followed by date/time, etc) -# Inputs: 0) ExifTool ref, 1) GPS string, 2) tag table ref, 3) not fuzzed -# Returns: nothing -sub ParseLigoGPS($$$;$) -{ - my ($et, $str, $tagTbl, $noFuzz) = @_; - - # example string input - # "....2022/09/19 12:45:24 N:31.285065 W:124.759483 46.93 km/h x:-0.000 y:-0.000 z:-0.000" - unless ($str=~ /^.{4}(\S+ \S+)\s+([NS?]):(-?)([.\d]+)\s+([EW?]):(-?)([\.\d]+)\s+([.\d]+)/s) { - $et->Warn('LIGOGPSINFO format error'); - return; - } - my ($time,$latRef,$latNeg,$lat,$lonRef,$lonNeg,$lon,$spd) = ($1,$2,$3,$4,$5,$6,$7,$8); - my %gpsScl = ( 1 => 1.524855137, 2 => 1.456027985, 3 => 1.15368 ); - my $spdScl = $noFuzz ? $knotsToKph : 1.85407333; - $$et{DOC_NUM} = ++$$et{DOC_COUNT}; - $time =~ tr(/)(:); - # convert from DDMM.MMMMMM to DD.DDDDDD if necessary - # (speed wasn't scaled in my 1 sample with this format) - $lat =~ /^\d{3}/ and ConvertLatLon($lat,$lon), $spdScl = 1; - unless ($noFuzz) { # unfuzz the coordinates if necessary - my $scl = $$et{OPTIONS}{LigoGPSScale} || $$et{LigoGPSScale} || 1; - $scl = $gpsScl{$scl} if $gpsScl{$scl}; - ($lat, $lon) = UnfuzzLigoGPS($lat, $lon, $scl); - } - # a final sanity check - ($lat > 90 or $lon > 180) and $et->Warn('LIGOGPSINFO coordinates out of range'), return; - $$et{SET_GROUP1} = 'LIGO'; - $et->HandleTag($tagTbl, 'GPSDateTime', $time); - # (ignore N/S/E/W if coordinate is signed) - $et->HandleTag($tagTbl, 'GPSLatitude', $lat * (($latNeg or $latRef eq 'S') ? -1 : 1)); - $et->HandleTag($tagTbl, 'GPSLongitude', $lon * (($lonNeg or $lonRef eq 'W') ? -1 : 1)); - $et->HandleTag($tagTbl, 'GPSSpeed', $spd * $spdScl); - $et->HandleTag($tagTbl, 'GPSTrack', $1) if $str =~ /\bA:(\S+)/; - # (have a sample where tab is used to separate acc components) - $et->HandleTag($tagTbl, 'Accelerometer',"$1 $2 $3") if $str =~ /x:(\S+)\sy:(\S+)\sz:(\S+)/; - $et->HandleTag($tagTbl, 'M', $1) if $str =~ /\bM:(\S+)/; - $et->HandleTag($tagTbl, 'H', $1) if $str =~ /\bH:(\S+)/; - delete $$et{SET_GROUP1}; -} - -#------------------------------------------------------------------------------ -# Process LIGOGPSINFO data (non-JSON format) -# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref -# 3) 1=LIGOGPS lat/lon/spd weren't fuzzed -# Returns: 1 on success -sub ProcessLigoGPS($$$;$) -{ - my ($et, $dirInfo, $tagTbl, $noFuzz) = @_; - my $dataPt = $$dirInfo{DataPt}; - my $pos = ($$dirInfo{DirStart} || 0) + 0x14; - my $cipherInfo = $$et{LigoCipher}; - return undef if $pos > length $$dataPt; - $$et{LigoType} = $$dirInfo{DirName} || 'LigoGPS'; - push @{$$et{PATH}}, $$et{LigoType} unless $$dirInfo{DirID}; - # not fuzzed if header is "LIGOGPSINFO\0\0\0\0\x01" (BlueSkySeaDV688) - $noFuzz = 1 if substr($$dataPt, $pos-8, 4) eq "\0\0\0\x01"; - $et->VerboseDir($$et{LigoType}); - for (; $pos + 0x84 <= length($$dataPt); $pos+=0x84) { - my $dat = substr($$dataPt, $pos, 0x84); - $dat =~ /^####/ or next; # (have seen blank records filled with zeros, so keep trying) - # decipher if we already know the encryption - $cipherInfo and $$cipherInfo{decipher} and DecipherLigoGPS($et, $dat, $tagTbl) and next; - my $str = DecryptLigoGPS($dat); - defined $str or DecipherLigoGPS($et, $dat, $tagTbl), next; # try to decipher - $et->VPrint(1, "$$et{INDENT}\(Decrypted: ",unpack('V',$str),' ',substr($str,4),")\n") if $$et{OPTIONS}{Verbose} > 1; - ParseLigoGPS($et, $str, $tagTbl, $noFuzz); - } - pop @{$$et{PATH}} unless $$dirInfo{DirID}; - delete $$et{DOC_NUM}; - return 1; -} - -#------------------------------------------------------------------------------ -# Process LIGOGPSINFO JSON-format GPS (Yada RoadCam Pro 4K BT58189) -# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref -# Returns: 1 on success -# Sample data (chained 512-byte records starting like this): -# 0000: 4c 49 47 4f 47 50 53 49 4e 46 4f 20 7b 22 48 6f [LIGOGPSINFO {"Ho] -# 0010: 75 72 22 3a 20 22 32 33 22 2c 20 22 4d 69 6e 75 [ur": "23", "Minu] -# 0020: 74 65 22 3a 20 22 31 30 22 2c 20 22 53 65 63 6f [te": "10", "Seco] -# 0030: 6e 64 22 3a 20 22 32 32 22 2c 20 22 59 65 61 72 [nd": "22", "Year] -# 0040: 22 3a 20 22 32 30 32 33 22 2c 20 22 4d 6f 6e 74 [": "2023", "Mont] -# 0050: 68 22 3a 20 22 31 32 22 2c 20 22 44 61 79 22 3a [h": "12", "Day":] -# 0060: 20 22 32 38 22 2c 20 22 73 74 61 74 75 73 22 3a [ "28", "status":] -sub ProcessLigoJSON($$$) -{ - my ($et, $dirInfo, $tagTbl) = @_; - my $dataPt = $$dirInfo{DataPt}; - my $dirLen = $$dirInfo{DirLen}; - require Image::ExifTool::Import; - $et->VerboseDir('LIGO_JSON', undef, length($$dataPt)); - $$et{SET_GROUP1} = 'LIGO'; - while ($$dataPt =~ /LIGOGPSINFO (\{.*?\})/g) { - my $json = $1; - my %dbase; - Image::ExifTool::Import::ReadJSON(\$json, \%dbase); - my $info = $dbase{'*'} or next; - # my sample contains the following JSON fields (in this order): - # Hour Minute Second Year Month Day (GPS UTC time) - # status NS EW Latitude Longitude Speed (speed in knots) - # GsensorX GsensorY GsensorZ (units? - only seen "000" for all) - # MHour MMinute MSecond MYear MMonth MDay (local dashcam clock time) - # OLatitude OLongitude (? same values as Latitude/Longitude) - next unless defined $$info{status} and $$info{status} eq 'A'; # only read if GPS is active - $$et{DOC_NUM} = ++$$et{DOC_COUNT}; - my $num = 0; - defined $$info{$_} and ++$num foreach qw(Year Month Day Hour Minute Second); - if ($num == 6) { - # this is the GPS time in UTC - my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2dZ',@$info{qw{Year Month Day Hour Minute Second}}); - $et->HandleTag($tagTbl, GPSDateTime => $time); - } - if ($$info{Latitude} and $$info{Longitude}) { - my $lat = $$info{Latitude}; - $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; - my $lon = $$info{Longitude}; - $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; - $et->HandleTag($tagTbl, GPSLatitude => $lat); - $et->HandleTag($tagTbl, GPSLongitude => $lon); - } - $et->HandleTag($tagTbl, GPSSpeed => $$info{Speed} * $knotsToKph) if defined $$info{Speed}; - if (defined $$info{GsensorX} and defined $$info{GsensorY} and defined $$info{GsensorZ}) { - # (don't know conversion factor for accel data, so leave it raw for now) - $et->HandleTag($tagTbl, Accelerometer => "$$info{GsensorX} $$info{GsensorY} $$info{GsensorZ}"); - } - $num = 0; - defined $$info{$_} and ++$num foreach qw(MYear MMonth MDay MHour MMinute MSecond); - if ($num == 6) { - # this is the dashcam clock time (local time zone) - my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d',@$info{qw{MYear MMonth MDay MHour MMinute MSecond}}); - $et->HandleTag($tagTbl, DateTimeOriginal => $time); - } - if (defined $$info{OLatitude} and defined $$info{OLongitude}) { - my $lat = $$info{OLatitude}; - $lat = -$lat if $$info{NS} and $$info{NS} eq 'S'; - my $lon = $$info{OLongitude}; - $lon = -$lon if $$info{EW} and $$info{EW} eq 'W'; - $et->HandleTag($tagTbl, GPSLatitude2 => $lat); - $et->HandleTag($tagTbl, GPSLongitude2 => $lon); - } - unless ($et->Options('ExtractEmbedded')) { - $et->Warn('Use the ExtractEmbedded option to extract all timed GPS',3); - last; - } - } - delete $$et{DOC_NUM}; - delete $$et{SET_GROUP1}; - return 1; -} - #------------------------------------------------------------------------------ # Process Kenwood drv-a301w dashcam 'udta' atom (ref PH) # Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref @@ -3912,7 +3630,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/README b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/README index 016e561..fa2d990 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/README +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/README @@ -443,6 +443,10 @@ numerical, and generated automatically otherwise. list-type tag (unless it is a list of lang-alt lists, which is uncommon). + 'IsList' - Flag to mark tag as List-type in the documentation + without accumulating entries from subsequent tags. Used when + the value for a single tag is a complete list. + 'MakerNotes' - set if this tag is maker note data. 'MakerPreview' - set in the PreviewImageStart tag information diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RIFF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RIFF.pm index f826d1d..ecd04d4 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RIFF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RIFF.pm @@ -30,7 +30,7 @@ use strict; use vars qw($VERSION $AUTOLOAD); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.69'; +$VERSION = '1.70'; sub ConvertTimecode($); sub ProcessSGLT($$$); @@ -1319,6 +1319,11 @@ my %code2charset = ( Name => 'ImageWidth', Format => 'int16u', Priority => 0, + # add " (lossless)" to FileType since image has a VP8L (lossless) chunk + RawConv => q{ + $self->OverrideFileType($$self{VALUE}{FileType} . ' (lossless)', undef, 'webp'); + return $val; + }, ValueConv => '($val & 0x3fff) + 1', }, 2 => { @@ -1327,6 +1332,11 @@ my %code2charset = ( Priority => 0, ValueConv => '(($val >> 6) & 0x3fff) + 1', }, + 4 => { + Name => 'AlphaIsUsed', + Mask => 0x10, + PrintConv => { 0 => 'No', 1 => 'Yes' }, + }, ); # WebP extended info (ref 14) @@ -2214,7 +2224,7 @@ including AVI videos, WAV audio files and WEBP images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RSRC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RSRC.pm index 40e691e..1c20da2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RSRC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RSRC.pm @@ -225,7 +225,7 @@ resource files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RTF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RTF.pm index ef29f5c..bed477a 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RTF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/RTF.pm @@ -366,7 +366,7 @@ information from RTF (Rich Text Format) documents. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Radiance.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Radiance.pm index 9f6e243..d5bafeb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Radiance.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Radiance.pm @@ -125,7 +125,7 @@ images are a type of high dynamic-range image. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Rawzor.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Rawzor.pm index 52a9cd1..6d8667c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Rawzor.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Rawzor.pm @@ -168,7 +168,7 @@ information from Rawzor compressed images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Real.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Real.pm index e91ee1d..f1e853c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Real.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Real.pm @@ -715,7 +715,7 @@ little-endian, but the Real format is big-endian. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Reconyx.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Reconyx.pm index c7f0e24..e5f5f61 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Reconyx.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Reconyx.pm @@ -431,7 +431,7 @@ maker notes in images from Reconyx cameras. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Red.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Red.pm index 78958d5..672fc83 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Red.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Red.pm @@ -303,7 +303,7 @@ from Redcode R3D version 1 and 2 video files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ricoh.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ricoh.pm index 7dfcbf9..2385d01 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ricoh.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Ricoh.pm @@ -1252,7 +1252,7 @@ interpret Ricoh maker notes EXIF meta information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Samsung.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Samsung.pm index 1059464..c0b1b17 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Samsung.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Samsung.pm @@ -1718,7 +1718,7 @@ SamBlock: $fixup->AddFixup(length($buff) - $offsetPos); $fixup->AddFixup(length($buff) - $offsetPos + 4); } - $et->VPrint(0, "Writing Samsung trailer ($dirLen bytes)\n") if $verbose; + $et->VPrint(0, " Writing Samsung trailer ($dirLen bytes)\n") if $verbose; Write($$dirInfo{OutFile}, $buff) or return -1; return 1; } @@ -1762,7 +1762,7 @@ Samsung maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sanyo.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sanyo.pm index 32bcddf..2d4f9d1 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sanyo.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sanyo.pm @@ -419,7 +419,7 @@ Sanyo maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Scalado.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Scalado.pm index cf0e4b2..ae65138 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Scalado.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Scalado.pm @@ -128,7 +128,7 @@ metadata from the JPEG APP4 SCALADO segment. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shift.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shift.pl index 6e184d4..85ba567 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shift.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shift.pl @@ -631,7 +631,7 @@ =head1 BUGS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shortcuts.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shortcuts.pm index bb7ce6d..854f3fe 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shortcuts.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Shortcuts.pm @@ -344,7 +344,7 @@ name prefix. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sigma.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sigma.pm index 7126932..3052acb 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sigma.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sigma.pm @@ -864,7 +864,7 @@ Sigma and Foveon maker notes in EXIF information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SigmaRaw.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SigmaRaw.pm index a0330ee..7e5b92b 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SigmaRaw.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SigmaRaw.pm @@ -680,7 +680,7 @@ Sigma and Foveon X3F images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sony.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sony.pm index 1e774ef..0fd260d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sony.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Sony.pm @@ -11759,7 +11759,7 @@ Minolta. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SonyIDC.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SonyIDC.pm index eaf8ed1..c7b60d6 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SonyIDC.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/SonyIDC.pm @@ -379,7 +379,7 @@ write Sony Image Data Converter version 3.0 metadata in ARW images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Stim.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Stim.pm index c529876..e806101 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Stim.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Stim.pm @@ -174,7 +174,7 @@ information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagInfoXML.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagInfoXML.pm index eff4e01..0d1047d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagInfoXML.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagInfoXML.pm @@ -651,7 +651,7 @@ and values. ~head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. @@ -835,7 +835,7 @@ Number of modules updated, or negative on error. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm index fe2ba9b..f8f9f67 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm @@ -439,6 +439,7 @@ my @tableList = ( 'Image::ExifTool::Photoshop::Main', 'Image::ExifTool::Photoshop::Resolution', 'Image::ExifTool::PostScript::Main', + 'Image::ExifTool::QuickTime::AudioKeys', 'Image::ExifTool::QuickTime::ItemList', 'Image::ExifTool::QuickTime::ItemPropCont', 'Image::ExifTool::QuickTime::Keys', @@ -448,6 +449,7 @@ my @tableList = ( 'Image::ExifTool::QuickTime::Preview', 'Image::ExifTool::QuickTime::TrackHeader', 'Image::ExifTool::QuickTime::UserData', + 'Image::ExifTool::QuickTime::VideoKeys', 'Image::ExifTool::Reconyx::Main', 'Image::ExifTool::Reconyx::Type2', 'Image::ExifTool::Reconyx::Type3', @@ -593,43 +595,43 @@ my @tableList = ( # lookup for all writable tags my %tagLookup = ( 'aberrationcorrectiondistance' => { 115 => 0x69 }, - 'about' => { 544 => 'about' }, - 'aboutcvterm' => { 535 => 'AboutCvTerm' }, - 'aboutcvtermcvid' => { 535 => [\'AboutCvTerm','AboutCvTermCvId'] }, - 'aboutcvtermid' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermId'] }, - 'aboutcvtermname' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermName'] }, - 'aboutcvtermrefinedabout' => { 535 => [\'AboutCvTerm','AboutCvTermCvTermRefinedAbout'] }, + 'about' => { 546 => 'about' }, + 'aboutcvterm' => { 537 => 'AboutCvTerm' }, + 'aboutcvtermcvid' => { 537 => [\'AboutCvTerm','AboutCvTermCvId'] }, + 'aboutcvtermid' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermId'] }, + 'aboutcvtermname' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermName'] }, + 'aboutcvtermrefinedabout' => { 537 => [\'AboutCvTerm','AboutCvTermCvTermRefinedAbout'] }, 'absolutealtitude' => { 122 => 'AbsoluteAltitude' }, - 'abspeakaudiofilepath' => { 550 => 'absPeakAudioFilePath' }, - 'academicfield' => { 540 => 'academicField' }, - 'acceleration' => { 125 => 0x9404, 528 => 'Acceleration' }, + 'abspeakaudiofilepath' => { 552 => 'absPeakAudioFilePath' }, + 'academicfield' => { 542 => 'academicField' }, + 'acceleration' => { 125 => 0x9404, 530 => 'Acceleration' }, 'accelerationtracking' => { 90 => 0x518 }, 'accelerationvector' => { 1 => 0x8 }, - 'accelerometer' => { 425 => 0x3 }, - 'accelerometerdata' => { 415 => 'vrot' }, + 'accelerometer' => { 427 => 0x3 }, + 'accelerometerdata' => { 416 => 'vrot' }, 'accelerometerx' => { 354 => 0x8d }, 'accelerometery' => { 354 => 0x8e }, 'accelerometerz' => { 354 => 0x8c }, 'accessoryserialnumber' => { 354 => 0x54 }, 'accessorytype' => { 354 => 0x53 }, - 'acdseeregion' => { 494 => [\'Regions','RegionsRegionList'] }, - 'acdseeregionalgarea' => { 494 => [\'Regions','RegionsRegionListALGArea'] }, - 'acdseeregionalgareah' => { 494 => [\'Regions','RegionsRegionListALGAreaH'] }, - 'acdseeregionalgareaw' => { 494 => [\'Regions','RegionsRegionListALGAreaW'] }, - 'acdseeregionalgareax' => { 494 => [\'Regions','RegionsRegionListALGAreaX'] }, - 'acdseeregionalgareay' => { 494 => [\'Regions','RegionsRegionListALGAreaY'] }, - 'acdseeregionappliedtodimensions' => { 494 => [\'Regions','RegionsAppliedToDimensions'] }, - 'acdseeregionappliedtodimensionsh' => { 494 => [\'Regions','RegionsAppliedToDimensionsH'] }, - 'acdseeregionappliedtodimensionsunit' => { 494 => [\'Regions','RegionsAppliedToDimensionsUnit'] }, - 'acdseeregionappliedtodimensionsw' => { 494 => [\'Regions','RegionsAppliedToDimensionsW'] }, - 'acdseeregiondlyarea' => { 494 => [\'Regions','RegionsRegionListDLYArea'] }, - 'acdseeregiondlyareah' => { 494 => [\'Regions','RegionsRegionListDLYAreaH'] }, - 'acdseeregiondlyareaw' => { 494 => [\'Regions','RegionsRegionListDLYAreaW'] }, - 'acdseeregiondlyareax' => { 494 => [\'Regions','RegionsRegionListDLYAreaX'] }, - 'acdseeregiondlyareay' => { 494 => [\'Regions','RegionsRegionListDLYAreaY'] }, - 'acdseeregionname' => { 494 => [\'Regions','RegionsRegionListName'] }, - 'acdseeregionnameassigntype' => { 494 => [\'Regions','RegionsRegionListNameAssignType'] }, - 'acdseeregiontype' => { 494 => [\'Regions','RegionsRegionListType'] }, + 'acdseeregion' => { 496 => [\'Regions','RegionsRegionList'] }, + 'acdseeregionalgarea' => { 496 => [\'Regions','RegionsRegionListALGArea'] }, + 'acdseeregionalgareah' => { 496 => [\'Regions','RegionsRegionListALGAreaH'] }, + 'acdseeregionalgareaw' => { 496 => [\'Regions','RegionsRegionListALGAreaW'] }, + 'acdseeregionalgareax' => { 496 => [\'Regions','RegionsRegionListALGAreaX'] }, + 'acdseeregionalgareay' => { 496 => [\'Regions','RegionsRegionListALGAreaY'] }, + 'acdseeregionappliedtodimensions' => { 496 => [\'Regions','RegionsAppliedToDimensions'] }, + 'acdseeregionappliedtodimensionsh' => { 496 => [\'Regions','RegionsAppliedToDimensionsH'] }, + 'acdseeregionappliedtodimensionsunit' => { 496 => [\'Regions','RegionsAppliedToDimensionsUnit'] }, + 'acdseeregionappliedtodimensionsw' => { 496 => [\'Regions','RegionsAppliedToDimensionsW'] }, + 'acdseeregiondlyarea' => { 496 => [\'Regions','RegionsRegionListDLYArea'] }, + 'acdseeregiondlyareah' => { 496 => [\'Regions','RegionsRegionListDLYAreaH'] }, + 'acdseeregiondlyareaw' => { 496 => [\'Regions','RegionsRegionListDLYAreaW'] }, + 'acdseeregiondlyareax' => { 496 => [\'Regions','RegionsRegionListDLYAreaX'] }, + 'acdseeregiondlyareay' => { 496 => [\'Regions','RegionsRegionListDLYAreaY'] }, + 'acdseeregionname' => { 496 => [\'Regions','RegionsRegionListName'] }, + 'acdseeregionnameassigntype' => { 496 => [\'Regions','RegionsRegionListNameAssignType'] }, + 'acdseeregiontype' => { 496 => [\'Regions','RegionsRegionListType'] }, 'actionadvised' => { 138 => 0x2a }, 'activearea' => { 125 => 0xc68d }, 'actived-lighting' => { 243 => 0x22, 300 => 0x24 }, @@ -637,18 +639,18 @@ my %tagLookup = ( 'adaptervoltage' => { 145 => 0x407 }, 'addaspectratioinfo' => { 90 => 0x80e }, 'addiptcinformation' => { 90 => 0x815 }, - 'additionalmodelinformation' => { 535 => 'AddlModelInfo' }, + 'additionalmodelinformation' => { 537 => 'AddlModelInfo' }, 'addoriginaldecisiondata' => { 90 => 0x80f, 91 => 0x11, 92 => 0x13, 95 => 0x14 }, 'address' => { 168 => 'Address' }, - 'adjustmentmode' => { 432 => 0x15 }, + 'adjustmentmode' => { 434 => 0x15 }, 'adlbracketingstep' => { 205 => 0x17 }, 'adlbracketingtype' => { 205 => 0x18 }, 'adobe' => { 126 => 'Adobe' }, - 'adultcontentwarning' => { 340 => 'AdultContentWarning', 543 => 'adultContentWarning' }, + 'adultcontentwarning' => { 340 => 'AdultContentWarning', 545 => 'adultContentWarning' }, 'advancedfilter' => { 133 => 0x1201 }, 'advancedraw' => { 302 => 0x76a43203 }, 'advancedscenetype' => { 354 => 0x3d }, - 'advisory' => { 548 => 'Advisory' }, + 'advisory' => { 550 => 'Advisory' }, 'ae_iso' => { 362 => 0x2, 363 => 0x4, 364 => 0x12 }, 'aeaperture' => { 362 => 0x1, 363 => 0x3, 364 => 0x11 }, 'aeaperturesteps' => { 362 => 0x8, 363 => 0xb }, @@ -664,7 +666,7 @@ my %tagLookup = ( 'aeexposuretime' => { 362 => 0x0, 363 => 0x2, 364 => 0x10 }, 'aelbutton' => { 191 => 0x45 }, 'aelexposureindicator' => { 191 => 0x51 }, - 'aelock' => { 191 => 0x5b, 311 => '4.2', 320 => '4.2', 330 => 0x201, 390 => 0x48, 442 => 0x40, 443 => 0x40, 444 => [0x86,0x286] }, + 'aelock' => { 191 => 0x5b, 311 => '4.2', 320 => '4.2', 330 => 0x201, 390 => 0x48, 444 => 0x40, 445 => 0x40, 446 => [0x86,0x286] }, 'aelockbutton' => { 309 => '16.1', 311 => '4.1', 314 => '15.1', 315 => '16.1', 316 => '16.1', 318 => '30.1', 319 => '16.1', 320 => '4.1', 322 => '17.1', 324 => '17.1' }, 'aelockbuttonplusdials' => { 309 => '16.2', 318 => '32.1', 322 => '44.1' }, 'aelockformb-d80' => { 324 => '3.1' }, @@ -679,12 +681,12 @@ my %tagLookup = ( 'aeminaperture' => { 362 => 0xb, 363 => 0x12, 364 => 0x1e }, 'aeminexposuretime' => { 362 => 0x5, 363 => 0x13, 364 => 0x1f }, 'aeprogrammode' => { 362 => 0x6 }, - 'aeprojectlink' => { 522 => 'aeProjectLink' }, - 'aeprojectlinkcompositionid' => { 522 => [\'aeProjectLink','aeProjectLinkCompositionID'] }, - 'aeprojectlinkfullpath' => { 522 => [\'aeProjectLink','aeProjectLinkFullPath'] }, - 'aeprojectlinkrenderoutputmoduleindex' => { 522 => [\'aeProjectLink','aeProjectLinkRenderOutputModuleIndex'] }, - 'aeprojectlinkrenderqueueitemid' => { 522 => [\'aeProjectLink','aeProjectLinkRenderQueueItemID'] }, - 'aeprojectlinkrendertimestamp' => { 522 => [\'aeProjectLink','aeProjectLinkRenderTimeStamp'] }, + 'aeprojectlink' => { 524 => 'aeProjectLink' }, + 'aeprojectlinkcompositionid' => { 524 => [\'aeProjectLink','aeProjectLinkCompositionID'] }, + 'aeprojectlinkfullpath' => { 524 => [\'aeProjectLink','aeProjectLinkFullPath'] }, + 'aeprojectlinkrenderoutputmoduleindex' => { 524 => [\'aeProjectLink','aeProjectLinkRenderOutputModuleIndex'] }, + 'aeprojectlinkrenderqueueitemid' => { 524 => [\'aeProjectLink','aeProjectLinkRenderQueueItemID'] }, + 'aeprojectlinkrendertimestamp' => { 524 => [\'aeProjectLink','aeProjectLinkRenderTimeStamp'] }, 'aesetting' => { 37 => 0x21 }, 'aestable' => { 1 => 0x4 }, 'aestheticscore' => { 343 => 'aesthetic_score' }, @@ -717,80 +719,80 @@ my %tagLookup = ( 'afareainitialwidth' => { 257 => 0xbea }, 'afareainitialxposition' => { 257 => 0xbe8 }, 'afareainitialyposition' => { 257 => 0xbe9 }, - 'afareamode' => { 132 => '0.3', 187 => 0x33, 191 => 0xe, 199 => 0x0, 200 => 0x5, 201 => 0x5, 247 => 0x340, 249 => 0x224, 250 => 0x224, 251 => 0x210, 252 => 0x224, 253 => 0x224, 354 => 0xf, 422 => 0x1205, 435 => [0xa,0x3a], 442 => 0x11, 443 => 0x10, 444 => 0x24, 456 => 0xb043, 482 => 0x17 }, - 'afareamodesetting' => { 311 => '11.1', 314 => '0.1', 320 => '16.1', 324 => '2.1', 456 => 0x201c }, + 'afareamode' => { 132 => '0.3', 187 => 0x33, 191 => 0xe, 199 => 0x0, 200 => 0x5, 201 => 0x5, 247 => 0x340, 249 => 0x224, 250 => 0x224, 251 => 0x210, 252 => 0x224, 253 => 0x224, 354 => 0xf, 424 => 0x1205, 437 => [0xa,0x3a], 444 => 0x11, 445 => 0x10, 446 => 0x24, 458 => 0xb043, 484 => 0x17 }, + 'afareamodesetting' => { 311 => '11.1', 314 => '0.1', 320 => '16.1', 324 => '2.1', 458 => 0x201c }, 'afareapointsize' => { 132 => '0.4' }, 'afareas' => { 330 => 0x304 }, 'afareaselectionmethod' => { 2 => 0xd }, 'afareaselectmethod' => { 90 => 0x51b }, 'afareawidth' => { 200 => [0x18,0x32,0x4e], 201 => 0x46 }, - 'afareaxposition' => { 200 => [0x14,0x2e,0x4a], 201 => 0x42, 422 => 0x1203 }, - 'afareaxposition1' => { 422 => 0x1201 }, - 'afareayposition' => { 200 => [0x16,0x30,0x4c], 201 => 0x44, 422 => 0x1204 }, - 'afareayposition1' => { 422 => 0x1202 }, + 'afareaxposition' => { 200 => [0x14,0x2e,0x4a], 201 => 0x42, 424 => 0x1203 }, + 'afareaxposition1' => { 424 => 0x1201 }, + 'afareayposition' => { 200 => [0x16,0x30,0x4c], 201 => 0x44, 424 => 0x1204 }, + 'afareayposition1' => { 424 => 0x1202 }, 'afareazonesize' => { 132 => '0.5' }, 'afassist' => { 88 => 0x5, 96 => 0x5, 191 => 0x48, 309 => '2.5', 311 => '0.2', 314 => '0.2', 315 => '1.1', 316 => '1.1', 317 => '1.3', 318 => '2.4', 319 => '1.3', 320 => '0.2', 322 => '2.4', 324 => '2.3' }, 'afassistbeam' => { 2 => 0x8, 90 => 0x50e, 91 => 0x4, 92 => 0x5, 93 => 0x4, 94 => 0x4, 95 => 0x5 }, 'afassistlamp' => { 354 => 0x31 }, - 'afbuttonpressed' => { 444 => [0x83,0x283] }, + 'afbuttonpressed' => { 446 => [0x83,0x283] }, 'afconfidence' => { 1 => 0x3d }, 'afconfigtool' => { 2 => 0x1 }, 'afdefocus' => { 365 => 0x6 }, 'afduringliveview' => { 90 => 0x511 }, - 'affinea' => { 514 => 'AffineA' }, - 'affineb' => { 514 => 'AffineB' }, - 'affinec' => { 514 => 'AffineC' }, - 'affined' => { 514 => 'AffineD' }, + 'affinea' => { 516 => 'AffineA' }, + 'affineb' => { 516 => 'AffineB' }, + 'affinec' => { 516 => 'AffineC' }, + 'affined' => { 516 => 'AffineD' }, 'affinetune' => { 202 => 0x0, 249 => 0x6b0, 250 => 0x6c0, 251 => 0x5b0, 252 => 0x5e0, 253 => 0x5f8, 330 => 0x306 }, 'affinetuneadj' => { 202 => 0x2, 275 => 0x2d1, 276 => 0x2dc, 330 => 0x307 }, 'affinetuneadjtele' => { 202 => 0x3 }, 'affinetuneindex' => { 202 => 0x1 }, - 'affinex' => { 514 => 'AffineX' }, - 'affiney' => { 514 => 'AffineY' }, + 'affinex' => { 516 => 'AffineX' }, + 'affiney' => { 516 => 'AffineY' }, 'afhold' => { 365 => 0x1fd }, - 'afilluminator' => { 442 => 0x29, 456 => 0xb044 }, + 'afilluminator' => { 444 => 0x29, 458 => 0xb044 }, 'afimageheight' => { 200 => [0x12,0x2c,0x48], 201 => 0x40 }, 'afimagewidth' => { 200 => [0x10,0x2a,0x46], 201 => 0x3e }, 'afintegrationtime' => { 365 => 0x7 }, 'afmeasureddepth' => { 1 => 0x38 }, - 'afmicroadj' => { 435 => [0x17d,0x50] }, - 'afmicroadjmode' => { 3 => 0x1, 439 => 0x131 }, - 'afmicroadjregisteredlenses' => { 439 => '305.1' }, + 'afmicroadj' => { 437 => [0x17d,0x50] }, + 'afmicroadjmode' => { 3 => 0x1, 441 => 0x131 }, + 'afmicroadjregisteredlenses' => { 441 => '305.1' }, 'afmicroadjustment' => { 90 => 0x507 }, - 'afmicroadjvalue' => { 3 => 0x2, 439 => 0x130 }, - 'afmode' => { 119 => 0x3009, 133 => 0x1022, 187 => 0x16, 432 => 0x5 }, + 'afmicroadjvalue' => { 3 => 0x2, 441 => 0x130 }, + 'afmode' => { 119 => 0x3009, 133 => 0x1022, 187 => 0x16, 434 => 0x5 }, 'afmoderestrictions' => { 310 => '50.3', 312 => '48.3', 313 => '48.3', 322 => '48.3', 323 => '48.3' }, 'afonaelockbuttonswitch' => { 90 => 0x702 }, 'afonbutton' => { 309 => '3.1', 310 => '47.1', 325 => 0x87, 326 => 0x83, 327 => 0x83, 328 => 0x83 }, 'afperformance' => { 1 => 0x23 }, - 'afpoint' => { 37 => 0x13, 118 => 0x18, 187 => 0x15, 199 => 0x1, 333 => 0x308, 432 => 0x1f, 435 => [0x37,0x7], 439 => 0x19, 440 => 0x18, 441 => [0x18,0x20] }, + 'afpoint' => { 37 => 0x13, 118 => 0x18, 187 => 0x15, 199 => 0x1, 333 => 0x308, 434 => 0x1f, 437 => [0x37,0x7], 441 => 0x19, 442 => 0x18, 443 => [0x18,0x20] }, 'afpointactivationarea' => { 89 => 0x11, 95 => 0x11 }, 'afpointareaexpansion' => { 90 => 0x508 }, - 'afpointatshutterrelease' => { 435 => [0x39,0x9] }, + 'afpointatshutterrelease' => { 437 => [0x39,0x9] }, 'afpointautoselection' => { 90 => 0x50b }, 'afpointbrightness' => { 90 => 0x50d, 309 => '2.4', 310 => '46.5', 312 => '2.2', 313 => '2.2', 322 => '2.3', 323 => '2.2' }, 'afpointdetails' => { 333 => 0x31b }, 'afpointdisplayduringfocus' => { 2 => 0x10, 90 => 0x50c }, 'afpointillumination' => { 89 => 0xa, 309 => '2.3', 310 => '46.2', 312 => '47.2', 313 => '47.2', 317 => '1.2', 318 => '2.3', 319 => '1.2', 322 => '47.2', 323 => '47.2', 324 => '2.4' }, - 'afpointinfocus' => { 435 => [0x38,0x8] }, + 'afpointinfocus' => { 437 => [0x38,0x8] }, 'afpointmode' => { 370 => 0x3 }, 'afpointposition' => { 119 => 0x2021, 354 => 0x4d }, 'afpointregistration' => { 88 => 0x7 }, 'afpoints' => { 190 => 0x10 }, 'afpointsel' => { 325 => 0xb, 326 => 0xb, 327 => 0xb, 328 => 0xb }, - 'afpointselected' => { 191 => 0xd, 330 => 0x305, 390 => 0xe, 439 => 0x15, 440 => 0x14, 441 => [0x14,0x1c], 456 => 0x201e }, + 'afpointselected' => { 191 => 0xd, 330 => 0x305, 390 => 0xe, 441 => 0x15, 442 => 0x14, 443 => [0x14,0x1c], 458 => 0x201e }, 'afpointselected2' => { 370 => 0x4 }, 'afpointselection' => { 89 => 0xb, 309 => '1.3', 310 => '1.3', 318 => '1.3', 322 => '1.3', 323 => '1.3' }, 'afpointselectionmethod' => { 90 => 0x50f, 91 => 0xc, 92 => 0xd, 95 => 0xd }, - 'afpointsetting' => { 442 => 0x12, 443 => 0x11 }, + 'afpointsetting' => { 444 => 0x12, 445 => 0x11 }, 'afpointsinfocus' => { 82 => 0xe, 199 => 0x2, 200 => 0x30, 365 => 0xb, 366 => 0x4, 390 => [0xf,0x3c] }, 'afpointsinfocus5d' => { 19 => 0x38 }, 'afpointspotmetering' => { 89 => 0xd }, - 'afpointsselected' => { 200 => 0x1c, 366 => '4.1', 491 => 0x4 }, + 'afpointsselected' => { 200 => 0x1c, 366 => '4.1', 493 => 0x4 }, 'afpointsspecial' => { 366 => '4.2' }, 'afpointsunknown1' => { 365 => 0x0 }, 'afpointsunknown2' => { 365 => 0x2 }, - 'afpointsused' => { 200 => [0xa,0x8], 201 => 0xa, 435 => [0x10,0x16e] }, + 'afpointsused' => { 200 => [0xa,0x8], 201 => 0xa, 437 => [0x10,0x16e] }, 'afpointswitching' => { 2 => 0x4 }, 'afpredictor' => { 365 => 0x4 }, 'afresponse' => { 243 => 0xad }, @@ -798,169 +800,170 @@ my %tagLookup = ( 'afsearch' => { 330 => 0x303 }, 'afsensoractive' => { 187 => 0x1 }, 'afstable' => { 1 => 0x7 }, - 'afstatus' => { 422 => 0x1200 }, - 'afstatus_00_b4' => { 438 => 0x0 }, - 'afstatus_01_c4' => { 438 => 0x2 }, - 'afstatus_02_d4' => { 438 => 0x4 }, - 'afstatus_03_e4' => { 438 => 0x6 }, - 'afstatus_04_f4' => { 438 => 0x8 }, - 'afstatus_05_g4' => { 438 => 0xa }, - 'afstatus_06_h4' => { 438 => 0xc }, - 'afstatus_07_b3' => { 438 => 0xe }, - 'afstatus_08_c3' => { 438 => 0x10 }, - 'afstatus_09_d3' => { 438 => 0x12 }, - 'afstatus_10_e3' => { 438 => 0x14 }, - 'afstatus_11_f3' => { 438 => 0x16 }, - 'afstatus_12_g3' => { 438 => 0x18 }, - 'afstatus_13_h3' => { 438 => 0x1a }, - 'afstatus_14_b2' => { 438 => 0x1c }, - 'afstatus_15_c2' => { 438 => 0x1e }, - 'afstatus_16_d2' => { 438 => 0x20 }, - 'afstatus_17_e2' => { 438 => 0x22 }, - 'afstatus_18_f2' => { 438 => 0x24 }, - 'afstatus_19_g2' => { 438 => 0x26 }, - 'afstatus_20_h2' => { 438 => 0x28 }, - 'afstatus_21_c1' => { 438 => 0x2a }, - 'afstatus_22_d1' => { 438 => 0x2c }, - 'afstatus_23_e1' => { 438 => 0x2e }, - 'afstatus_24_f1' => { 438 => 0x30 }, - 'afstatus_25_g1' => { 438 => 0x32 }, - 'afstatus_26_a7_vertical' => { 438 => 0x34 }, - 'afstatus_27_a6_vertical' => { 438 => 0x36 }, - 'afstatus_28_a5_vertical' => { 438 => 0x38 }, - 'afstatus_29_c7_vertical' => { 438 => 0x3a }, - 'afstatus_30_c6_vertical' => { 438 => 0x3c }, - 'afstatus_31_c5_vertical' => { 438 => 0x3e }, - 'afstatus_32_e7_vertical' => { 438 => 0x40 }, - 'afstatus_33_e6_center_vertical' => { 438 => 0x42 }, - 'afstatus_34_e5_vertical' => { 438 => 0x44 }, - 'afstatus_35_g7_vertical' => { 438 => 0x46 }, - 'afstatus_36_g6_vertical' => { 438 => 0x48 }, - 'afstatus_37_g5_vertical' => { 438 => 0x4a }, - 'afstatus_38_i7_vertical' => { 438 => 0x4c }, - 'afstatus_39_i6_vertical' => { 438 => 0x4e }, - 'afstatus_40_i5_vertical' => { 438 => 0x50 }, - 'afstatus_41_a7' => { 438 => 0x52 }, - 'afstatus_42_b7' => { 438 => 0x54 }, - 'afstatus_43_c7' => { 438 => 0x56 }, - 'afstatus_44_d7' => { 438 => 0x58 }, - 'afstatus_45_e7' => { 438 => 0x5a }, - 'afstatus_46_f7' => { 438 => 0x5c }, - 'afstatus_47_g7' => { 438 => 0x5e }, - 'afstatus_48_h7' => { 438 => 0x60 }, - 'afstatus_49_i7' => { 438 => 0x62 }, - 'afstatus_50_a6' => { 438 => 0x64 }, - 'afstatus_51_b6' => { 438 => 0x66 }, - 'afstatus_52_c6' => { 438 => 0x68 }, - 'afstatus_53_d6' => { 438 => 0x6a }, - 'afstatus_54_e6_center' => { 438 => 0x6c }, - 'afstatus_55_f6' => { 438 => 0x6e }, - 'afstatus_56_g6' => { 438 => 0x70 }, - 'afstatus_57_h6' => { 438 => 0x72 }, - 'afstatus_58_i6' => { 438 => 0x74 }, - 'afstatus_59_a5' => { 438 => 0x76 }, - 'afstatus_60_b5' => { 438 => 0x78 }, - 'afstatus_61_c5' => { 438 => 0x7a }, - 'afstatus_62_d5' => { 438 => 0x7c }, - 'afstatus_63_e5' => { 438 => 0x7e }, - 'afstatus_64_f5' => { 438 => 0x80 }, - 'afstatus_65_g5' => { 438 => 0x82 }, - 'afstatus_66_h5' => { 438 => 0x84 }, - 'afstatus_67_i5' => { 438 => 0x86 }, - 'afstatus_68_c11' => { 438 => 0x88 }, - 'afstatus_69_d11' => { 438 => 0x8a }, - 'afstatus_70_e11' => { 438 => 0x8c }, - 'afstatus_71_f11' => { 438 => 0x8e }, - 'afstatus_72_g11' => { 438 => 0x90 }, - 'afstatus_73_b10' => { 438 => 0x92 }, - 'afstatus_74_c10' => { 438 => 0x94 }, - 'afstatus_75_d10' => { 438 => 0x96 }, - 'afstatus_76_e10' => { 438 => 0x98 }, - 'afstatus_77_f10' => { 438 => 0x9a }, - 'afstatus_78_g10' => { 438 => 0x9c }, - 'afstatus_79_h10' => { 438 => 0x9e }, - 'afstatus_80_b9' => { 438 => 0xa0 }, - 'afstatus_81_c9' => { 438 => 0xa2 }, - 'afstatus_82_d9' => { 438 => 0xa4 }, - 'afstatus_83_e9' => { 438 => 0xa6 }, - 'afstatus_84_f9' => { 438 => 0xa8 }, - 'afstatus_85_g9' => { 438 => 0xaa }, - 'afstatus_86_h9' => { 438 => 0xac }, - 'afstatus_87_b8' => { 438 => 0xae }, - 'afstatus_88_c8' => { 438 => 0xb0 }, - 'afstatus_89_d8' => { 438 => 0xb2 }, - 'afstatus_90_e8' => { 438 => 0xb4 }, - 'afstatus_91_f8' => { 438 => 0xb6 }, - 'afstatus_92_g8' => { 438 => 0xb8 }, - 'afstatus_93_h8' => { 438 => 0xba }, - 'afstatus_94_e6_center_f2-8' => { 438 => 0xbc }, - 'afstatusactivesensor' => { 187 => 0x2, 435 => [0x4,0x3b], 439 => 0x1e, 440 => 0x1b, 441 => [0x1b,0x21] }, - 'afstatusbottom' => { 187 => 0x8, 439 => 0x2a, 440 => 0x21, 441 => 0x21 }, - 'afstatusbottom-left' => { 187 => 0x12, 440 => 0x2b, 441 => 0x2b }, - 'afstatusbottom-right' => { 187 => 0x6, 440 => 0x1f, 441 => 0x1f }, - 'afstatusbottomassist-left' => { 439 => 0x28 }, - 'afstatusbottomassist-right' => { 439 => 0x2c }, - 'afstatusbottomhorizontal' => { 436 => 0x10, 437 => 0x1c }, - 'afstatusbottomvertical' => { 436 => 0x16, 437 => 0x26 }, - 'afstatuscenter-10' => { 439 => 0x34 }, - 'afstatuscenter-11' => { 439 => 0x36 }, - 'afstatuscenter-12' => { 439 => 0x38 }, - 'afstatuscenter-14' => { 439 => 0x3c }, - 'afstatuscenter-7' => { 439 => 0x2e }, - 'afstatuscenter-9' => { 439 => 0x32 }, - 'afstatuscenter-horizontal' => { 439 => 0x30 }, - 'afstatuscenter-vertical' => { 439 => 0x3a }, - 'afstatuscenterf2-8' => { 439 => 0x4c }, - 'afstatuscenterhorizontal' => { 187 => 0x2f, 436 => 0xc, 437 => 0x18, 440 => 0x2f, 441 => 0x2f }, - 'afstatuscentervertical' => { 187 => 0xc, 436 => 0x14, 437 => 0x22, 440 => 0x25, 441 => 0x25 }, - 'afstatusfarleft' => { 436 => 0x6, 439 => 0x26 }, - 'afstatusfarlefthorizontal' => { 437 => 0x4 }, - 'afstatusfarleftvertical' => { 437 => 0x12 }, - 'afstatusfarright' => { 436 => 0x18, 439 => 0x44 }, - 'afstatusfarrighthorizontal' => { 437 => 0x2c }, - 'afstatusfarrightvertical' => { 437 => 0x34 }, - 'afstatusleft' => { 187 => 0x2d, 436 => 0x2, 439 => 0x22, 440 => 0x2d, 441 => 0x2d }, - 'afstatuslefthorizontal' => { 437 => 0x6 }, - 'afstatusleftvertical' => { 437 => 0xe }, - 'afstatuslower-left' => { 436 => 0x4, 439 => 0x24 }, - 'afstatuslower-lefthorizontal' => { 437 => 0xa }, - 'afstatuslower-leftvertical' => { 437 => 0x10 }, - 'afstatuslower-middle' => { 436 => 0x22, 437 => 0x24 }, - 'afstatuslower-right' => { 436 => 0x1e, 439 => 0x4a }, - 'afstatuslower-righthorizontal' => { 437 => 0x32 }, - 'afstatuslower-rightvertical' => { 437 => 0x3a }, - 'afstatuslowerfarleft' => { 437 => 0x8 }, - 'afstatuslowerfarright' => { 437 => 0x30 }, - 'afstatusmiddlehorizontal' => { 187 => 0xa, 440 => 0x23, 441 => 0x23 }, - 'afstatusnearleft' => { 436 => 0xe, 437 => 0x1a }, - 'afstatusnearright' => { 436 => 0xa, 437 => 0x16 }, - 'afstatusright' => { 187 => 0x31, 436 => 0x1c, 439 => 0x48, 440 => 0x31, 441 => 0x31 }, - 'afstatusrighthorizontal' => { 437 => 0x2e }, - 'afstatusrightvertical' => { 437 => 0x38 }, - 'afstatustop' => { 187 => 0xe, 439 => 0x40, 440 => 0x27, 441 => 0x27 }, - 'afstatustop-left' => { 187 => 0x10, 440 => 0x29, 441 => 0x29 }, - 'afstatustop-right' => { 187 => 0x4, 440 => 0x1d, 441 => 0x1d }, - 'afstatustopassist-left' => { 439 => 0x3e }, - 'afstatustopassist-right' => { 439 => 0x42 }, - 'afstatustophorizontal' => { 436 => 0x8, 437 => 0x14 }, - 'afstatustopvertical' => { 436 => 0x12, 437 => 0x1e }, - 'afstatusupper-left' => { 436 => 0x0, 439 => 0x20 }, - 'afstatusupper-lefthorizontal' => { 437 => 0x2 }, - 'afstatusupper-leftvertical' => { 437 => 0xc }, - 'afstatusupper-middle' => { 436 => 0x20, 437 => 0x20 }, - 'afstatusupper-right' => { 436 => 0x1a, 439 => 0x46 }, - 'afstatusupper-righthorizontal' => { 437 => 0x2a }, - 'afstatusupper-rightvertical' => { 437 => 0x36 }, - 'afstatusupperfarleft' => { 437 => 0x0 }, - 'afstatusupperfarright' => { 437 => 0x28 }, + 'afstatus' => { 424 => 0x1200 }, + 'afstatus_00_b4' => { 440 => 0x0 }, + 'afstatus_01_c4' => { 440 => 0x2 }, + 'afstatus_02_d4' => { 440 => 0x4 }, + 'afstatus_03_e4' => { 440 => 0x6 }, + 'afstatus_04_f4' => { 440 => 0x8 }, + 'afstatus_05_g4' => { 440 => 0xa }, + 'afstatus_06_h4' => { 440 => 0xc }, + 'afstatus_07_b3' => { 440 => 0xe }, + 'afstatus_08_c3' => { 440 => 0x10 }, + 'afstatus_09_d3' => { 440 => 0x12 }, + 'afstatus_10_e3' => { 440 => 0x14 }, + 'afstatus_11_f3' => { 440 => 0x16 }, + 'afstatus_12_g3' => { 440 => 0x18 }, + 'afstatus_13_h3' => { 440 => 0x1a }, + 'afstatus_14_b2' => { 440 => 0x1c }, + 'afstatus_15_c2' => { 440 => 0x1e }, + 'afstatus_16_d2' => { 440 => 0x20 }, + 'afstatus_17_e2' => { 440 => 0x22 }, + 'afstatus_18_f2' => { 440 => 0x24 }, + 'afstatus_19_g2' => { 440 => 0x26 }, + 'afstatus_20_h2' => { 440 => 0x28 }, + 'afstatus_21_c1' => { 440 => 0x2a }, + 'afstatus_22_d1' => { 440 => 0x2c }, + 'afstatus_23_e1' => { 440 => 0x2e }, + 'afstatus_24_f1' => { 440 => 0x30 }, + 'afstatus_25_g1' => { 440 => 0x32 }, + 'afstatus_26_a7_vertical' => { 440 => 0x34 }, + 'afstatus_27_a6_vertical' => { 440 => 0x36 }, + 'afstatus_28_a5_vertical' => { 440 => 0x38 }, + 'afstatus_29_c7_vertical' => { 440 => 0x3a }, + 'afstatus_30_c6_vertical' => { 440 => 0x3c }, + 'afstatus_31_c5_vertical' => { 440 => 0x3e }, + 'afstatus_32_e7_vertical' => { 440 => 0x40 }, + 'afstatus_33_e6_center_vertical' => { 440 => 0x42 }, + 'afstatus_34_e5_vertical' => { 440 => 0x44 }, + 'afstatus_35_g7_vertical' => { 440 => 0x46 }, + 'afstatus_36_g6_vertical' => { 440 => 0x48 }, + 'afstatus_37_g5_vertical' => { 440 => 0x4a }, + 'afstatus_38_i7_vertical' => { 440 => 0x4c }, + 'afstatus_39_i6_vertical' => { 440 => 0x4e }, + 'afstatus_40_i5_vertical' => { 440 => 0x50 }, + 'afstatus_41_a7' => { 440 => 0x52 }, + 'afstatus_42_b7' => { 440 => 0x54 }, + 'afstatus_43_c7' => { 440 => 0x56 }, + 'afstatus_44_d7' => { 440 => 0x58 }, + 'afstatus_45_e7' => { 440 => 0x5a }, + 'afstatus_46_f7' => { 440 => 0x5c }, + 'afstatus_47_g7' => { 440 => 0x5e }, + 'afstatus_48_h7' => { 440 => 0x60 }, + 'afstatus_49_i7' => { 440 => 0x62 }, + 'afstatus_50_a6' => { 440 => 0x64 }, + 'afstatus_51_b6' => { 440 => 0x66 }, + 'afstatus_52_c6' => { 440 => 0x68 }, + 'afstatus_53_d6' => { 440 => 0x6a }, + 'afstatus_54_e6_center' => { 440 => 0x6c }, + 'afstatus_55_f6' => { 440 => 0x6e }, + 'afstatus_56_g6' => { 440 => 0x70 }, + 'afstatus_57_h6' => { 440 => 0x72 }, + 'afstatus_58_i6' => { 440 => 0x74 }, + 'afstatus_59_a5' => { 440 => 0x76 }, + 'afstatus_60_b5' => { 440 => 0x78 }, + 'afstatus_61_c5' => { 440 => 0x7a }, + 'afstatus_62_d5' => { 440 => 0x7c }, + 'afstatus_63_e5' => { 440 => 0x7e }, + 'afstatus_64_f5' => { 440 => 0x80 }, + 'afstatus_65_g5' => { 440 => 0x82 }, + 'afstatus_66_h5' => { 440 => 0x84 }, + 'afstatus_67_i5' => { 440 => 0x86 }, + 'afstatus_68_c11' => { 440 => 0x88 }, + 'afstatus_69_d11' => { 440 => 0x8a }, + 'afstatus_70_e11' => { 440 => 0x8c }, + 'afstatus_71_f11' => { 440 => 0x8e }, + 'afstatus_72_g11' => { 440 => 0x90 }, + 'afstatus_73_b10' => { 440 => 0x92 }, + 'afstatus_74_c10' => { 440 => 0x94 }, + 'afstatus_75_d10' => { 440 => 0x96 }, + 'afstatus_76_e10' => { 440 => 0x98 }, + 'afstatus_77_f10' => { 440 => 0x9a }, + 'afstatus_78_g10' => { 440 => 0x9c }, + 'afstatus_79_h10' => { 440 => 0x9e }, + 'afstatus_80_b9' => { 440 => 0xa0 }, + 'afstatus_81_c9' => { 440 => 0xa2 }, + 'afstatus_82_d9' => { 440 => 0xa4 }, + 'afstatus_83_e9' => { 440 => 0xa6 }, + 'afstatus_84_f9' => { 440 => 0xa8 }, + 'afstatus_85_g9' => { 440 => 0xaa }, + 'afstatus_86_h9' => { 440 => 0xac }, + 'afstatus_87_b8' => { 440 => 0xae }, + 'afstatus_88_c8' => { 440 => 0xb0 }, + 'afstatus_89_d8' => { 440 => 0xb2 }, + 'afstatus_90_e8' => { 440 => 0xb4 }, + 'afstatus_91_f8' => { 440 => 0xb6 }, + 'afstatus_92_g8' => { 440 => 0xb8 }, + 'afstatus_93_h8' => { 440 => 0xba }, + 'afstatus_94_e6_center_f2-8' => { 440 => 0xbc }, + 'afstatusactivesensor' => { 187 => 0x2, 437 => [0x4,0x3b], 441 => 0x1e, 442 => 0x1b, 443 => [0x1b,0x21] }, + 'afstatusbottom' => { 187 => 0x8, 441 => 0x2a, 442 => 0x21, 443 => 0x21 }, + 'afstatusbottom-left' => { 187 => 0x12, 442 => 0x2b, 443 => 0x2b }, + 'afstatusbottom-right' => { 187 => 0x6, 442 => 0x1f, 443 => 0x1f }, + 'afstatusbottomassist-left' => { 441 => 0x28 }, + 'afstatusbottomassist-right' => { 441 => 0x2c }, + 'afstatusbottomhorizontal' => { 438 => 0x10, 439 => 0x1c }, + 'afstatusbottomvertical' => { 438 => 0x16, 439 => 0x26 }, + 'afstatuscenter-10' => { 441 => 0x34 }, + 'afstatuscenter-11' => { 441 => 0x36 }, + 'afstatuscenter-12' => { 441 => 0x38 }, + 'afstatuscenter-14' => { 441 => 0x3c }, + 'afstatuscenter-7' => { 441 => 0x2e }, + 'afstatuscenter-9' => { 441 => 0x32 }, + 'afstatuscenter-horizontal' => { 441 => 0x30 }, + 'afstatuscenter-vertical' => { 441 => 0x3a }, + 'afstatuscenterf2-8' => { 441 => 0x4c }, + 'afstatuscenterhorizontal' => { 187 => 0x2f, 438 => 0xc, 439 => 0x18, 442 => 0x2f, 443 => 0x2f }, + 'afstatuscentervertical' => { 187 => 0xc, 438 => 0x14, 439 => 0x22, 442 => 0x25, 443 => 0x25 }, + 'afstatusfarleft' => { 438 => 0x6, 441 => 0x26 }, + 'afstatusfarlefthorizontal' => { 439 => 0x4 }, + 'afstatusfarleftvertical' => { 439 => 0x12 }, + 'afstatusfarright' => { 438 => 0x18, 441 => 0x44 }, + 'afstatusfarrighthorizontal' => { 439 => 0x2c }, + 'afstatusfarrightvertical' => { 439 => 0x34 }, + 'afstatusleft' => { 187 => 0x2d, 438 => 0x2, 441 => 0x22, 442 => 0x2d, 443 => 0x2d }, + 'afstatuslefthorizontal' => { 439 => 0x6 }, + 'afstatusleftvertical' => { 439 => 0xe }, + 'afstatuslower-left' => { 438 => 0x4, 441 => 0x24 }, + 'afstatuslower-lefthorizontal' => { 439 => 0xa }, + 'afstatuslower-leftvertical' => { 439 => 0x10 }, + 'afstatuslower-middle' => { 438 => 0x22, 439 => 0x24 }, + 'afstatuslower-right' => { 438 => 0x1e, 441 => 0x4a }, + 'afstatuslower-righthorizontal' => { 439 => 0x32 }, + 'afstatuslower-rightvertical' => { 439 => 0x3a }, + 'afstatuslowerfarleft' => { 439 => 0x8 }, + 'afstatuslowerfarright' => { 439 => 0x30 }, + 'afstatusmiddlehorizontal' => { 187 => 0xa, 442 => 0x23, 443 => 0x23 }, + 'afstatusnearleft' => { 438 => 0xe, 439 => 0x1a }, + 'afstatusnearright' => { 438 => 0xa, 439 => 0x16 }, + 'afstatusright' => { 187 => 0x31, 438 => 0x1c, 441 => 0x48, 442 => 0x31, 443 => 0x31 }, + 'afstatusrighthorizontal' => { 439 => 0x2e }, + 'afstatusrightvertical' => { 439 => 0x38 }, + 'afstatustop' => { 187 => 0xe, 441 => 0x40, 442 => 0x27, 443 => 0x27 }, + 'afstatustop-left' => { 187 => 0x10, 442 => 0x29, 443 => 0x29 }, + 'afstatustop-right' => { 187 => 0x4, 442 => 0x1d, 443 => 0x1d }, + 'afstatustopassist-left' => { 441 => 0x3e }, + 'afstatustopassist-right' => { 441 => 0x42 }, + 'afstatustophorizontal' => { 438 => 0x8, 439 => 0x14 }, + 'afstatustopvertical' => { 438 => 0x12, 439 => 0x1e }, + 'afstatusupper-left' => { 438 => 0x0, 441 => 0x20 }, + 'afstatusupper-lefthorizontal' => { 439 => 0x2 }, + 'afstatusupper-leftvertical' => { 439 => 0xc }, + 'afstatusupper-middle' => { 438 => 0x20, 439 => 0x20 }, + 'afstatusupper-right' => { 438 => 0x1a, 441 => 0x46 }, + 'afstatusupper-righthorizontal' => { 439 => 0x2a }, + 'afstatusupper-rightvertical' => { 439 => 0x36 }, + 'afstatusupperfarleft' => { 439 => 0x0 }, + 'afstatusupperfarright' => { 439 => 0x28 }, 'afstatusviewfinder' => { 2 => 0x12 }, - 'aftracking' => { 456 => 0x2021 }, + 'afsubjectdetection' => { 354 => 0xe9 }, + 'aftracking' => { 458 => 0x2021 }, 'aftrackingsensitivity' => { 2 => 0x2 }, - 'aftype' => { 435 => 0x2 }, - 'afwithshutter' => { 442 => 0x2a }, - 'aggregateissuenumber' => { 540 => 'aggregateIssueNumber' }, - 'aggregationtype' => { 540 => 'aggregationType' }, - 'agreement' => { 543 => 'agreement' }, + 'aftype' => { 437 => 0x2 }, + 'afwithshutter' => { 444 => 0x2a }, + 'aggregateissuenumber' => { 542 => 'aggregateIssueNumber' }, + 'aggregationtype' => { 542 => 'aggregationType' }, + 'agreement' => { 545 => 'agreement' }, 'ah2greeninterpolationthreshold' => { 145 => 0xe4e }, 'airplanemode' => { 247 => 0x9c0, 249 => 0x722, 250 => 0x732, 251 => 0x624, 252 => 0x654, 253 => 0x6bc }, 'aiservocontinuousshooting' => { 89 => 0x15 }, @@ -972,104 +975,104 @@ my %tagLookup = ( 'aiservotrackingmethod' => { 90 => 0x504 }, 'aiservotrackingsensitivity' => { 89 => 0x14, 90 => 0x502 }, 'aisubjecttrackingmode' => { 330 => 0x309 }, - 'album' => { 407 => ['albm',"\xa9alb"], 409 => 'album', 415 => ['albm',"\xa9alb"], 550 => 'album' }, - 'albumartist' => { 186 => 'WM/AlbumArtist', 407 => 'aART', 415 => 'albr' }, + 'album' => { 408 => ['albm',"\xa9alb"], 410 => 'album', 416 => ['albm',"\xa9alb"], 552 => 'album' }, + 'albumartist' => { 186 => 'WM/AlbumArtist', 408 => 'aART', 416 => 'albr' }, 'albumcoverurl' => { 186 => 'WM/AlbumCoverURL' }, - 'albumid' => { 407 => 'plID' }, + 'albumid' => { 408 => 'plID' }, 'albumtitle' => { 186 => 'WM/AlbumTitle' }, - 'alreadyapplied' => { 521 => 'AlreadyApplied', 523 => 'AlreadyApplied' }, - 'alternatetitle' => { 540 => 'alternateTitle' }, - 'alternatetitlea-lang' => { 540 => [\'alternateTitle','alternateTitleA-lang'] }, - 'alternatetitlea-platform' => { 540 => [\'alternateTitle','alternateTitleA-platform'] }, - 'alternatetitletext' => { 540 => [\'alternateTitle','alternateTitleText'] }, + 'alreadyapplied' => { 523 => 'AlreadyApplied', 525 => 'AlreadyApplied' }, + 'alternatetitle' => { 542 => 'alternateTitle' }, + 'alternatetitlea-lang' => { 542 => [\'alternateTitle','alternateTitleA-lang'] }, + 'alternatetitlea-platform' => { 542 => [\'alternateTitle','alternateTitleA-platform'] }, + 'alternatetitletext' => { 542 => [\'alternateTitle','alternateTitleText'] }, 'altitude' => { 204 => 0x6 }, - 'alttapename' => { 550 => 'altTapeName' }, - 'alttextaccessibility' => { 534 => 'AltTextAccessibility' }, - 'alttimecode' => { 550 => 'altTimecode' }, - 'alttimecodetimeformat' => { 550 => [\'altTimecode','altTimecodeTimeFormat'] }, - 'alttimecodetimevalue' => { 550 => [\'altTimecode','altTimecodeTimeValue'] }, - 'alttimecodevalue' => { 550 => [\'altTimecode','altTimecodeValue'] }, + 'alttapename' => { 552 => 'altTapeName' }, + 'alttextaccessibility' => { 536 => 'AltTextAccessibility' }, + 'alttimecode' => { 552 => 'altTimecode' }, + 'alttimecodetimeformat' => { 552 => [\'altTimecode','altTimecodeTimeFormat'] }, + 'alttimecodetimevalue' => { 552 => [\'altTimecode','altTimecodeTimeValue'] }, + 'alttimecodevalue' => { 552 => [\'altTimecode','altTimecodeValue'] }, 'ambienceselection' => { 4 => 0x1 }, - 'ambientinfrared' => { 418 => 0x5c }, - 'ambientlight' => { 418 => 0x5e }, - 'ambienttemperature' => { 125 => 0x9400, 416 => 0x14, 417 => 0x46, 418 => 0x50, 482 => 0x4, 528 => 'Temperature' }, - 'ambienttemperaturefahrenheit' => { 416 => 0x13, 417 => 0x44, 418 => 0x4e }, + 'ambientinfrared' => { 420 => 0x5c }, + 'ambientlight' => { 420 => 0x5e }, + 'ambienttemperature' => { 125 => 0x9400, 418 => 0x14, 419 => 0x46, 420 => 0x50, 484 => 0x4, 530 => 'Temperature' }, + 'ambienttemperaturefahrenheit' => { 418 => 0x13, 419 => 0x44, 420 => 0x4e }, 'analogbalance' => { 125 => 0xc627 }, 'analogcaptureiso' => { 145 => 0x89e }, 'analogisotable' => { 145 => 0x89d }, - 'androidcapturefps' => { 409 => 'com.android.capture.fps' }, - 'androidmake' => { 409 => 'com.android.manufacturer' }, - 'androidmodel' => { 409 => 'com.android.model' }, - 'androidversion' => { 409 => 'com.android.version' }, + 'androidcapturefps' => { 410 => 'com.android.capture.fps' }, + 'androidmake' => { 410 => 'com.android.manufacturer' }, + 'androidmodel' => { 410 => 'com.android.model' }, + 'androidversion' => { 410 => 'com.android.version' }, 'angleadj' => { 109 => 0x10003, 115 => 0x8b }, - 'angleinforoll' => { 517 => 'AngleInfoRoll' }, - 'angleinfoyaw' => { 517 => 'AngleInfoYaw' }, - 'anti-blur' => { 456 => 0xb04b }, + 'angleinforoll' => { 519 => 'AngleInfoRoll' }, + 'angleinfoyaw' => { 519 => 'AngleInfoYaw' }, + 'anti-blur' => { 458 => 0xb04b }, 'antialiasstrength' => { 125 => 0xc632 }, 'antiflicker' => { 61 => 0x20 }, 'aperturelock' => { 310 => '38.2', 312 => '38.2', 313 => '38.2', 322 => '38.2', 323 => '38.2', 325 => 0xbc, 326 => 0xb8, 327 => 0xb8, 328 => 0xb8 }, - 'aperturemode' => { 415 => 'apmd' }, + 'aperturemode' => { 416 => 'apmd' }, 'aperturerange' => { 90 => 0x10d }, 'apertureringuse' => { 370 => '1.4' }, - 'aperturesetting' => { 191 => 0x7, 442 => 0x30, 443 => 0x29, 444 => 0x1 }, - 'aperturevalue' => { 99 => 0x2, 125 => 0x9202, 335 => 0x1002, 399 => 0x401, 527 => 'ApertureValue' }, - 'appinfo' => { 497 => 'AppInfo' }, - 'appinfoapplication' => { 497 => [\'AppInfo','AppInfoApplication'] }, - 'appinfoitemuri' => { 497 => [\'AppInfo','AppInfoItemURI'] }, - 'appinfoversion' => { 497 => [\'AppInfo','AppInfoVersion'] }, + 'aperturesetting' => { 191 => 0x7, 444 => 0x30, 445 => 0x29, 446 => 0x1 }, + 'aperturevalue' => { 99 => 0x2, 125 => 0x9202, 335 => 0x1002, 399 => 0x401, 529 => 'ApertureValue' }, + 'appinfo' => { 499 => 'AppInfo' }, + 'appinfoapplication' => { 499 => [\'AppInfo','AppInfoApplication'] }, + 'appinfoitemuri' => { 499 => [\'AppInfo','AppInfoItemURI'] }, + 'appinfoversion' => { 499 => [\'AppInfo','AppInfoVersion'] }, 'apple_0x004e' => { 1 => 0x4e }, 'apple_0x004f' => { 1 => 0x4f }, 'applekeywords' => { 339 => 'AAPL:Keywords' }, - 'applephotosvariationidentifier' => { 409 => 'apple.photos.variation-identifier' }, - 'applestoreaccount' => { 407 => 'apID' }, - 'applestoreaccounttype' => { 407 => 'akID' }, - 'applestorecatalogid' => { 407 => 'cnID' }, - 'applestorecountry' => { 407 => 'sfID' }, + 'applephotosvariationidentifier' => { 410 => 'apple.photos.variation-identifier' }, + 'applestoreaccount' => { 408 => 'apID' }, + 'applestoreaccounttype' => { 408 => 'akID' }, + 'applestorecatalogid' => { 408 => 'cnID' }, + 'applestorecountry' => { 408 => 'sfID' }, 'applicationkeystring' => { 145 => 0x400 }, 'applicationnotes' => { 125 => 0x2bc, 359 => 0x2bc }, 'applicationrecordversion' => { 138 => 0x0 }, 'applyautomatically' => { 344 => 'ApplyAutomatically' }, 'applyshootingmeteringmode' => { 90 => 0x10e }, - 'approved' => { 529 => 'Approved' }, - 'approvedby' => { 529 => 'ApprovedBy' }, + 'approved' => { 531 => 'Approved' }, + 'approvedby' => { 531 => 'ApprovedBy' }, 'approximatefnumber' => { 349 => 0x313, 356 => 0x3406 }, - 'approximatefocusdistance' => { 518 => 'ApproximateFocusDistance' }, - 'appversion' => { 533 => 'AppVersion' }, - 'aps-csizecapture' => { 475 => 0x114, 476 => [0x114,0x1eb,0x1ee,0x21a,0x21c] }, + 'approximatefocusdistance' => { 520 => 'ApproximateFocusDistance' }, + 'appversion' => { 535 => 'AppVersion' }, + 'aps-csizecapture' => { 477 => 0x114, 478 => [0x114,0x1eb,0x1ee,0x21a,0x21c] }, 'aquahsl' => { 109 => 0x20914 }, 'armidentifier' => { 139 => 0x78 }, 'armversion' => { 139 => 0x7a }, - 'arranger' => { 407 => "\xa9arg", 415 => "\xa9arg" }, - 'arrangerkeywords' => { 415 => "\xa9ark" }, - 'artdirector' => { 407 => "\xa9ard" }, + 'arranger' => { 408 => "\xa9arg", 416 => "\xa9arg" }, + 'arrangerkeywords' => { 416 => "\xa9ark" }, + 'artdirector' => { 408 => "\xa9ard" }, 'artfilter' => { 330 => 0x529 }, 'artfiltereffect' => { 330 => 0x52f }, - 'artist' => { 125 => 0x13b, 343 => 'Artist', 359 => 0x13b, 390 => 0x22e, 407 => "\xa9ART", 409 => 'artist', 415 => "\xa9ART", 546 => 'Artist', 550 => 'artist' }, - 'artistid' => { 407 => 'atID' }, + 'artist' => { 125 => 0x13b, 343 => 'Artist', 359 => 0x13b, 390 => 0x22e, 408 => "\xa9ART", 410 => 'artist', 416 => "\xa9ART", 548 => 'Artist', 552 => 'artist' }, + 'artistid' => { 408 => 'atID' }, 'artmode' => { 119 => 0x301b }, 'artmodeparameters' => { 119 => 0x310b }, - 'artwork' => { 409 => 'artwork' }, - 'artworkcircadatecreated' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCircaDateCreated'] }, - 'artworkcontentdescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOContentDescription'] }, - 'artworkcontributiondescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOContributionDescription'] }, - 'artworkcopyrightnotice' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCopyrightNotice'] }, - 'artworkcopyrightownerid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerId'] }, - 'artworkcopyrightownername' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerName'] }, - 'artworkcreator' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCreator'] }, - 'artworkcreatorid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCreatorId'] }, - 'artworkdatecreated' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAODateCreated'] }, - 'artworklicensorid' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorId'] }, - 'artworklicensorname' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorName'] }, - 'artworkorobject' => { 535 => 'ArtworkOrObject' }, - 'artworkphysicaldescription' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOPhysicalDescription'] }, - 'artworksource' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSource'] }, - 'artworksourceinventoryno' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvNo'] }, - 'artworksourceinvurl' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvURL'] }, - 'artworkstyleperiod' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOStylePeriod'] }, - 'artworktitle' => { 535 => [\'ArtworkOrObject','ArtworkOrObjectAOTitle'] }, + 'artwork' => { 410 => 'artwork' }, + 'artworkcircadatecreated' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCircaDateCreated'] }, + 'artworkcontentdescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOContentDescription'] }, + 'artworkcontributiondescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOContributionDescription'] }, + 'artworkcopyrightnotice' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCopyrightNotice'] }, + 'artworkcopyrightownerid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerId'] }, + 'artworkcopyrightownername' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentCopyrightOwnerName'] }, + 'artworkcreator' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCreator'] }, + 'artworkcreatorid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCreatorId'] }, + 'artworkdatecreated' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAODateCreated'] }, + 'artworklicensorid' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorId'] }, + 'artworklicensorname' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOCurrentLicensorName'] }, + 'artworkorobject' => { 537 => 'ArtworkOrObject' }, + 'artworkphysicaldescription' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOPhysicalDescription'] }, + 'artworksource' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSource'] }, + 'artworksourceinventoryno' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvNo'] }, + 'artworksourceinvurl' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOSourceInvURL'] }, + 'artworkstyleperiod' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOStylePeriod'] }, + 'artworktitle' => { 537 => [\'ArtworkOrObject','ArtworkOrObjectAOTitle'] }, 'aspectframe' => { 334 => 0x1113 }, - 'aspectratio' => { 5 => 0x0, 334 => 0x1112, 390 => 0x80, 442 => 0x55, 443 => 0x55, 444 => 0xa, 469 => [0x192c,0x1a88], 470 => 0x192c, 471 => 0x1958, 472 => 0x192c, 473 => 0x188c }, - 'assetid' => { 509 => 'AssetID' }, + 'aspectratio' => { 5 => 0x0, 334 => 0x1112, 390 => 0x80, 444 => 0x55, 445 => 0x55, 446 => 0xa, 471 => [0x192c,0x1a88], 472 => 0x192c, 473 => 0x1958, 474 => 0x192c, 475 => 0x188c }, + 'assetid' => { 511 => 'AssetID' }, 'asshoticcprofile' => { 125 => 0xc68f }, 'asshotneutral' => { 125 => 0xc628 }, 'asshotpreprofilematrix' => { 125 => 0xc690 }, @@ -1093,44 +1096,44 @@ my %tagLookup = ( 'assignremotefnbutton' => { 310 => '54.1', 322 => '51.1' }, 'assistbuttonfunction' => { 88 => 0xd }, 'atcaptureusercrop' => { 145 => 0x943 }, - 'attributionname' => { 519 => 'attributionName' }, - 'attributionurl' => { 519 => 'attributionURL' }, + 'attributionname' => { 521 => 'attributionName' }, + 'attributionurl' => { 521 => 'attributionURL' }, 'audio' => { 354 => 0x20 }, - 'audiobitrate' => { 72 => 0x6c, 535 => 'audioBitRate' }, - 'audiobitratemode' => { 535 => 'audioBitRateMode' }, - 'audiobitspersample' => { 535 => 'audioBitsPerSample' }, + 'audiobitrate' => { 72 => 0x6c, 537 => 'audioBitRate' }, + 'audiobitratemode' => { 537 => 'audioBitRateMode' }, + 'audiobitspersample' => { 537 => 'audioBitsPerSample' }, 'audiobutton' => { 327 => 0x17b, 328 => 0x193 }, 'audiobuttonplaybackmode' => { 327 => 0x1b9, 328 => 0x1d1 }, - 'audiochannelcount' => { 535 => 'audioChannelCount' }, + 'audiochannelcount' => { 537 => 'audioChannelCount' }, 'audiochannels' => { 72 => 0x70 }, - 'audiochanneltype' => { 550 => 'audioChannelType' }, + 'audiochanneltype' => { 552 => 'audioChannelType' }, 'audiocompression' => { 90 => 0x816, 162 => 'Compression' }, - 'audiocompressor' => { 550 => 'audioCompressor' }, - 'audiodata' => { 500 => 'Data' }, + 'audiocompressor' => { 552 => 'audioCompressor' }, + 'audiodata' => { 502 => 'Data' }, 'audioduration' => { 138 => 0x99 }, - 'audiogain' => { 409 => 'player.movie.audio.gain' }, - 'audiomimetype' => { 500 => 'Mime' }, - 'audiomoddate' => { 550 => 'audioModDate' }, + 'audiogain' => { 407 => 'player.movie.audio.gain', 410 => 'player.movie.audio.gain' }, + 'audiomimetype' => { 502 => 'Mime' }, + 'audiomoddate' => { 552 => 'audioModDate' }, 'audiooutcue' => { 138 => 0x9a }, - 'audiosamplerate' => { 72 => 0x6e, 550 => 'audioSampleRate' }, - 'audiosampletype' => { 550 => 'audioSampleType' }, + 'audiosamplerate' => { 72 => 0x6e, 552 => 'audioSampleRate' }, + 'audiosampletype' => { 552 => 'audioSampleType' }, 'audiosamplingrate' => { 138 => 0x97 }, 'audiosamplingresolution' => { 138 => 0x98 }, 'audiotype' => { 138 => 0x96 }, - 'author' => { 164 => 'Author', 339 => 'Author', 343 => 'Author', 406 => 'Author', 407 => ['auth',"\xa9aut"], 409 => 'author', 415 => 'auth', 515 => 'author', 537 => 'Author', 548 => 'Author' }, - 'authorsposition' => { 538 => 'AuthorsPosition' }, + 'author' => { 164 => 'Author', 339 => 'Author', 343 => 'Author', 406 => 'Author', 408 => ['auth',"\xa9aut"], 410 => 'author', 416 => 'auth', 517 => 'author', 539 => 'Author', 550 => 'Author' }, + 'authorsposition' => { 540 => 'AuthorsPosition' }, 'authorurl' => { 186 => 'WM/AuthorURL' }, 'autoafpointcolortracking' => { 90 => 0x51c }, 'autoafpointseleositraf' => { 2 => 0xa }, 'autoaperture' => { 380 => '0.1' }, - 'autobracket' => { 432 => 0x19 }, - 'autobracketing' => { 133 => 0x1100, 390 => 0x18, 422 => 0x1007 }, + 'autobracket' => { 434 => 0x19 }, + 'autobracketing' => { 133 => 0x1100, 390 => 0x18, 424 => 0x1007 }, 'autobracketingmode' => { 321 => '12.3' }, 'autobracketingset' => { 321 => '12.1' }, 'autobracketmodem' => { 309 => '21.2', 310 => '13.3', 312 => '13.2', 313 => '13.2', 318 => '26.2', 322 => '13.3', 323 => '13.2', 325 => 0x63, 326 => 0x5f, 327 => 0x5f, 328 => 0x5f }, 'autobracketorder' => { 191 => 0x43, 309 => '21.3', 310 => '13.2', 312 => '13.1', 313 => '13.1', 318 => '26.3', 319 => '12.2', 320 => '2.2', 321 => '12.2', 322 => '13.2', 323 => '13.1', 324 => '13.2', 325 => 0x65, 326 => 0x61, 327 => 0x61, 328 => 0x61 }, 'autobracketset' => { 309 => '21.1', 310 => '13.1', 314 => '11.1', 315 => '12.1', 316 => '12.1', 318 => '26.1', 319 => '12.1', 320 => '2.1', 322 => '13.1', 324 => '13.1' }, - 'autobrightness' => { 521 => 'AutoBrightness', 523 => 'AutoBrightness' }, + 'autobrightness' => { 523 => 'AutoBrightness', 525 => 'AutoBrightness' }, 'autocapturecriteria' => { 203 => 0x1 }, 'autocapturecriteriamotiondirection' => { 203 => 0x5f }, 'autocapturecriteriamotionsize' => { 203 => 0x64 }, @@ -1143,10 +1146,10 @@ my %tagLookup = ( 'autocapturepreset' => { 253 => 0x746 }, 'autocapturerecordingtime' => { 203 => 0x37 }, 'autocapturewaittime' => { 203 => 0x38 }, - 'autocontrast' => { 521 => 'AutoContrast', 523 => 'AutoContrast' }, + 'autocontrast' => { 523 => 'AutoContrast', 525 => 'AutoContrast' }, 'autodistortioncontrol' => { 217 => 0x4, 247 => 0x2cf, 248 => 0x143 }, 'autodynamicrange' => { 133 => 0x140b }, - 'autoexposure' => { 521 => 'AutoExposure', 523 => 'AutoExposure' }, + 'autoexposure' => { 523 => 'AutoExposure', 525 => 'AutoExposure' }, 'autoexposurebracketing' => { 82 => 0x10 }, 'autoflashisosensitivity' => { 312 => '38.5', 313 => '38.5', 323 => '38.5', 325 => 0x5f, 326 => 0x5b, 327 => 0x5b, 328 => 0x5b }, 'autofocus' => { 333 => 0x209 }, @@ -1155,18 +1158,18 @@ my %tagLookup = ( 'autoiso' => { 82 => 0x1, 119 => 0x3008, 247 => 0x288, 249 => 0x152, 250 => 0x152, 251 => 0x142, 252 => 0x156, 253 => 0x156, 311 => '1.1', 320 => '1.1' }, 'autoisomax' => { 311 => '1.2', 320 => '1.2' }, 'autoisominshutterspeed' => { 311 => '1.3', 320 => '1.3' }, - 'autolateralca' => { 521 => 'AutoLateralCA', 523 => 'AutoLateralCA' }, + 'autolateralca' => { 523 => 'AutoLateralCA', 525 => 'AutoLateralCA' }, 'autolightingoptimizer' => { 16 => 0xbe, 17 => 0xbf, 20 => 0xbf, 67 => 0x2, 90 => 0x204, 109 => 0x20500, 115 => 0x6f }, 'autolightingoptimizeron' => { 109 => '0x20500.0', 115 => 0x6e }, - 'autoportraitframed' => { 456 => 0x2016 }, + 'autoportraitframed' => { 458 => 0x2016 }, 'autoredeye' => { 302 => 0xfe28a44f }, 'autorotate' => { 82 => 0x1b }, - 'autoshadows' => { 521 => 'AutoShadows', 523 => 'AutoShadows' }, - 'autotone' => { 521 => 'AutoTone', 523 => 'AutoTone' }, - 'autotonedigest' => { 521 => 'AutoToneDigest', 523 => 'AutoToneDigest' }, - 'autotonedigestnosat' => { 521 => 'AutoToneDigestNoSat', 523 => 'AutoToneDigestNoSat' }, - 'autowhiteversion' => { 521 => 'AutoWhiteVersion', 523 => 'AutoWhiteVersion' }, - 'auxiliaryimagetype' => { 516 => 'AuxiliaryImageType' }, + 'autoshadows' => { 523 => 'AutoShadows', 525 => 'AutoShadows' }, + 'autotone' => { 523 => 'AutoTone', 525 => 'AutoTone' }, + 'autotonedigest' => { 523 => 'AutoToneDigest', 525 => 'AutoToneDigest' }, + 'autotonedigestnosat' => { 523 => 'AutoToneDigestNoSat', 525 => 'AutoToneDigestNoSat' }, + 'autowhiteversion' => { 523 => 'AutoWhiteVersion', 525 => 'AutoWhiteVersion' }, + 'auxiliaryimagetype' => { 518 => 'AuxiliaryImageType' }, 'auxiliarylens' => { 243 => 0x82 }, 'avaperturesetting' => { 370 => 0x13 }, 'averageblacklevel' => { 49 => 0xe7, 51 => 0xfb, 52 => 0x114, 53 => 0x146 }, @@ -1175,10 +1178,10 @@ my %tagLookup = ( 'azimuth' => { 172 => 'Azimuth' }, 'babyage' => { 354 => [0x8010,0x33] }, 'babyname' => { 354 => 0x66 }, - 'backgroundalpha' => { 545 => 'bgalpha' }, - 'balance' => { 409 => 'player.movie.audio.balance' }, + 'backgroundalpha' => { 547 => 'bgalpha' }, + 'balance' => { 407 => 'player.movie.audio.balance', 410 => 'player.movie.audio.balance' }, 'baseexposurecompensation' => { 370 => 0x15 }, - 'baseiso' => { 82 => 0x2, 103 => 0x101c, 145 => 0x903, 356 => 0x312a, 488 => 0x6 }, + 'baseiso' => { 82 => 0x2, 103 => 0x101c, 145 => 0x903, 356 => 0x312a, 490 => 0x6 }, 'baseisodaylight' => { 145 => 0x910 }, 'baseisoflash' => { 145 => 0x913 }, 'baseisofluorescent' => { 145 => 0x912 }, @@ -1187,31 +1190,31 @@ my %tagLookup = ( 'baselineexposureoffset' => { 125 => 0xc7a5 }, 'baselinenoise' => { 125 => 0xc62b }, 'baselinesharpness' => { 125 => 0xc62c }, - 'baserenditionishdr' => { 532 => 'BaseRenditionIsHDR' }, - 'baseurl' => { 548 => 'BaseURL' }, - 'bass' => { 409 => 'player.movie.audio.bass' }, - 'batterylevel' => { 354 => 0x38, 442 => 0x51, 446 => 0xc, 447 => 0x4, 448 => 0x4, 489 => 0x7, 490 => 0x5 }, - 'batterylevel2' => { 490 => 0x7 }, - 'batterylevelgrip1' => { 489 => 0x6 }, - 'batterylevelgrip2' => { 489 => 0x8 }, + 'baserenditionishdr' => { 534 => 'BaseRenditionIsHDR' }, + 'baseurl' => { 550 => 'BaseURL' }, + 'bass' => { 407 => 'player.movie.audio.bass', 410 => 'player.movie.audio.bass' }, + 'batterylevel' => { 354 => 0x38, 444 => 0x51, 448 => 0xc, 449 => 0x4, 450 => 0x4, 491 => 0x7, 492 => 0x5 }, + 'batterylevel2' => { 492 => 0x7 }, + 'batterylevelgrip1' => { 491 => 0x6 }, + 'batterylevelgrip2' => { 491 => 0x8 }, 'batteryorder' => { 309 => '12.5', 318 => '13.2', 319 => '2.1', 322 => '3.1' }, - 'batterystate' => { 191 => 0x60, 442 => 0x50, 448 => 0x14 }, - 'batterytemperature' => { 446 => 0x1, 448 => 0x2, 489 => 0x5 }, - 'batterytype' => { 69 => 0x38, 418 => 0x66 }, - 'batteryunknown' => { 446 => 0x2, 448 => 0x0 }, - 'batteryvoltage' => { 145 => 0x408, 416 => 0x2a, 417 => 0x49, 418 => 0x62, 446 => 0x8 }, - 'batteryvoltage1' => { 448 => 0x6 }, - 'batteryvoltage2' => { 448 => 0x8 }, - 'batteryvoltageavg' => { 418 => 0x64 }, + 'batterystate' => { 191 => 0x60, 444 => 0x50, 450 => 0x14 }, + 'batterytemperature' => { 448 => 0x1, 450 => 0x2, 491 => 0x5 }, + 'batterytype' => { 69 => 0x38, 420 => 0x66 }, + 'batteryunknown' => { 448 => 0x2, 450 => 0x0 }, + 'batteryvoltage' => { 145 => 0x408, 418 => 0x2a, 419 => 0x49, 420 => 0x62, 448 => 0x8 }, + 'batteryvoltage1' => { 450 => 0x6 }, + 'batteryvoltage2' => { 450 => 0x8 }, + 'batteryvoltageavg' => { 420 => 0x64 }, 'bayergreensplit' => { 125 => 0xc62d }, 'bayerpattern' => { 144 => 0xf902, 195 => 0x17 }, - 'beatsperminute' => { 407 => 'tmpo' }, - 'beatspliceparams' => { 550 => 'beatSpliceParams' }, - 'beatspliceparamsriseindecibel' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInDecibel'] }, - 'beatspliceparamsriseintimeduration' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDuration'] }, - 'beatspliceparamsriseintimedurationscale' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationScale'] }, - 'beatspliceparamsriseintimedurationvalue' => { 550 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationValue'] }, - 'beatspliceparamsusefilebeatsmarker' => { 550 => [\'beatSpliceParams','beatSpliceParamsUseFileBeatsMarker'] }, + 'beatsperminute' => { 408 => 'tmpo' }, + 'beatspliceparams' => { 552 => 'beatSpliceParams' }, + 'beatspliceparamsriseindecibel' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInDecibel'] }, + 'beatspliceparamsriseintimeduration' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDuration'] }, + 'beatspliceparamsriseintimedurationscale' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationScale'] }, + 'beatspliceparamsriseintimedurationvalue' => { 552 => [\'beatSpliceParams','beatSpliceParamsRiseInTimeDurationValue'] }, + 'beatspliceparamsusefilebeatsmarker' => { 552 => [\'beatSpliceParams','beatSpliceParamsUseFileBeatsMarker'] }, 'beep' => { 309 => '13.1', 310 => '5.4', 311 => '0.1', 314 => '2.1', 315 => '3.1', 316 => '3.1', 318 => '10.1', 320 => '0.1', 322 => '5.5', 324 => '4.1' }, 'beeppitch' => { 319 => '3.1' }, 'beepvolume' => { 319 => '4.5' }, @@ -1219,9 +1222,9 @@ my %tagLookup = ( 'bestshotmode' => { 119 => 0x3007 }, 'bitdepth' => { 169 => 'BitDepth', 195 => 0x11, 268 => 0x41 }, 'bitspercomponent' => { 140 => 0x87 }, - 'bitspersample' => { 125 => 0x102, 359 => 0xa, 546 => 'BitsPerSample' }, + 'bitspersample' => { 125 => 0x102, 359 => 0xa, 548 => 'BitsPerSample' }, 'blackacquirerows' => { 145 => 0x18ba }, - 'blacklevel' => { 125 => [0x7310,0xc61a], 214 => 0x20, 243 => 0x3d, 335 => [0x401,0x1012], 399 => 0x21d, 463 => [0x7300,0x7310] }, + 'blacklevel' => { 125 => [0x7310,0xc61a], 214 => 0x20, 243 => 0x3d, 335 => [0x401,0x1012], 399 => 0x21d, 465 => [0x7300,0x7310] }, 'blacklevel2' => { 334 => 0x600, 338 => 0x600 }, 'blacklevelblue' => { 359 => 0x1e }, 'blacklevelbottom' => { 145 => 0x3f0 }, @@ -1236,19 +1239,19 @@ my %tagLookup = ( 'blacklevels' => { 38 => 0x1d }, 'blackleveltop' => { 145 => 0x3ef }, 'blackpoint' => { 390 => 0x200 }, - 'blacks2012' => { 521 => 'Blacks2012', 523 => 'Blacks2012' }, - 'blacksadj' => { 493 => 0x9018 }, + 'blacks2012' => { 523 => 'Blacks2012', 525 => 'Blacks2012' }, + 'blacksadj' => { 495 => 0x9018 }, 'bleachbypasstoning' => { 390 => 0x7f }, 'blockshotafresponse' => { 312 => '1.5', 313 => '1.5', 323 => '1.5', 325 => 0x7, 326 => 0x7, 327 => 0x7, 328 => 0x7 }, - 'blogtitle' => { 540 => 'blogTitle' }, - 'blogurl' => { 540 => 'blogURL' }, + 'blogtitle' => { 542 => 'blogTitle' }, + 'blogurl' => { 542 => 'blogURL' }, 'bluebalance' => { 335 => 0x1018, 359 => 0x12, 390 => 0x1b }, 'bluecurvelimits' => { 114 => 0x1fe }, 'bluecurvepoints' => { 113 => 0x79, 114 => 0x1d4 }, 'bluehsl' => { 109 => 0x20915 }, - 'bluehue' => { 521 => 'BlueHue', 523 => 'BlueHue' }, - 'bluesaturation' => { 521 => 'BlueSaturation', 523 => 'BlueSaturation' }, - 'bluratinfinity' => { 505 => 'BlurAtInfinity' }, + 'bluehue' => { 523 => 'BlueHue', 525 => 'BlueHue' }, + 'bluesaturation' => { 523 => 'BlueSaturation', 525 => 'BlueSaturation' }, + 'bluratinfinity' => { 507 => 'BlurAtInfinity' }, 'blurcontrol' => { 390 => 0x82 }, 'blurwarning' => { 133 => 0x1300 }, 'bodybatteryadload' => { 368 => 0x3 }, @@ -1260,11 +1263,11 @@ my %tagLookup = ( 'bodybatteryvoltage2' => { 368 => 0x4 }, 'bodybatteryvoltage3' => { 368 => 0x6 }, 'bodybatteryvoltage4' => { 368 => 0x8 }, - 'bodyfirmware' => { 423 => 0x0 }, + 'bodyfirmware' => { 425 => 0x0 }, 'bodyfirmwareversion' => { 331 => 0x104, 332 => 0x100, 335 => 0x104 }, - 'bodyserialnumber' => { 423 => 0x10 }, - 'bookedition' => { 540 => 'bookEdition' }, - 'bootloaderversion' => { 417 => 0x26 }, + 'bodyserialnumber' => { 425 => 0x10 }, + 'bookedition' => { 542 => 'bookEdition' }, + 'bootloaderversion' => { 419 => 0x26 }, 'bracketbutton' => { 250 => 0x808, 253 => 0x80c }, 'bracketbuttonplaybackmode' => { 250 => 0x810, 253 => 0x816 }, 'bracketincrement' => { 247 => 0x34a, 249 => 0x22e, 250 => 0x22e, 251 => 0x21a, 252 => 0x22e, 253 => 0x22e }, @@ -1273,22 +1276,22 @@ my %tagLookup = ( 'bracketsequence' => { 119 => 0x301d }, 'bracketset' => { 247 => 0x346, 249 => 0x22a, 250 => 0x22a, 251 => 0x216, 252 => 0x22a, 253 => 0x22a }, 'bracketsettings' => { 354 => 0x45 }, - 'bracketshotnumber' => { 61 => 0x5, 370 => 0x9, 453 => 0x2b }, - 'bracketshotnumber2' => { 453 => 0x2d }, + 'bracketshotnumber' => { 61 => 0x5, 370 => 0x9, 455 => 0x2b }, + 'bracketshotnumber2' => { 455 => 0x2d }, 'bracketstep' => { 188 => 0xe }, 'bracketvalue' => { 61 => 0x4 }, - 'brightness' => { 125 => 0xfe53, 163 => 'Brightness', 183 => 'Brightness', 188 => 0x2c, 260 => 0x34, 261 => 0x39, 262 => 0x41, 409 => 'player.movie.visual.brightness', 416 => 0x25, 418 => 0x54, 442 => 0x22, 456 => 0x2007, 521 => 'Brightness', 523 => 'Brightness' }, - 'brightnessadj' => { 114 => 0x114, 295 => 0x0, 305 => 0x2d, 493 => 0x8018 }, - 'brightnessvalue' => { 125 => 0x9203, 194 => [0x691,0x49c3], 335 => 0x1003, 461 => 0x1e, 465 => 0x1140, 466 => 0x1140, 467 => 0x111c, 468 => 0x1198, 469 => 0x1174, 470 => 0x102c, 471 => 0x224, 472 => 0x224, 473 => 0x219, 527 => 'BrightnessValue' }, + 'brightness' => { 125 => 0xfe53, 163 => 'Brightness', 183 => 'Brightness', 188 => 0x2c, 260 => 0x34, 261 => 0x39, 262 => 0x41, 410 => 'player.movie.visual.brightness', 418 => 0x25, 420 => 0x54, 444 => 0x22, 458 => 0x2007, 523 => 'Brightness', 525 => 'Brightness' }, + 'brightnessadj' => { 114 => 0x114, 295 => 0x0, 305 => 0x2d, 495 => 0x8018 }, + 'brightnessvalue' => { 125 => 0x9203, 194 => [0x691,0x49c3], 335 => 0x1003, 463 => 0x1e, 467 => 0x1140, 468 => 0x1140, 469 => 0x111c, 470 => 0x1198, 471 => 0x1174, 472 => 0x102c, 473 => 0x224, 474 => 0x224, 475 => 0x219, 529 => 'BrightnessValue' }, 'buildnumber' => { 198 => 0x5500 }, 'bulbduration' => { 82 => 0x18 }, 'burstcount' => { 145 => 0x40d }, 'burstgroupid' => { 245 => 0x4 }, - 'burstid' => { 501 => 'BurstID' }, + 'burstid' => { 503 => 'BurstID' }, 'burstmode' => { 147 => 0xa, 354 => 0x2a }, 'burstmode2' => { 147 => 0x18 }, - 'burstprimary' => { 501 => 'BurstPrimary' }, - 'burstshot' => { 432 => 0x34 }, + 'burstprimary' => { 503 => 'BurstPrimary' }, + 'burstshot' => { 434 => 0x34 }, 'burstspeed' => { 354 => 0x77 }, 'burstuuid' => { 1 => 0xb }, 'buttonfunctioncontroloff' => { 90 => 0x70a }, @@ -1298,27 +1301,27 @@ my %tagLookup = ( 'bwmode' => { 335 => 0x203 }, 'by-line' => { 138 => 0x50 }, 'by-linetitle' => { 138 => 0x55 }, - 'bytecount' => { 540 => 'byteCount' }, + 'bytecount' => { 542 => 'byteCount' }, 'c14configuration' => { 145 => 0x1964 }, 'cacheversion' => { 125 => 0xc7aa }, 'calibratedfocallength' => { 122 => 'CalibratedFocalLength' }, 'calibratedopticalcenterx' => { 122 => 'CalibratedOpticalCenterX' }, 'calibratedopticalcentery' => { 122 => 'CalibratedOpticalCenterY' }, - 'calibration' => { 432 => [0x24,0x30] }, + 'calibration' => { 434 => [0x24,0x30] }, 'calibrationhistory' => { 145 => 0x9c9 }, 'calibrationilluminant1' => { 125 => 0xc65a }, 'calibrationilluminant2' => { 125 => 0xc65b }, 'calibrationilluminant3' => { 125 => 0xcd31 }, 'calibrationversion' => { 145 => 0x9c6 }, - 'callforimage' => { 509 => 'CallForImage' }, - 'camera' => { 497 => [\'Cameras','CamerasCamera'] }, - 'cameraangle' => { 415 => 'angl', 550 => 'cameraAngle' }, - 'cameraappinfo' => { 497 => [\'Cameras','CamerasCameraAppInfo'] }, - 'cameraappinfoapplication' => { 497 => [\'Cameras','CamerasCameraAppInfoApplication'] }, - 'cameraappinfoitemuri' => { 497 => [\'Cameras','CamerasCameraAppInfoItemURI'] }, - 'cameraappinfoversion' => { 497 => [\'Cameras','CamerasCameraAppInfoVersion'] }, - 'cameraburstid' => { 503 => 'CameraBurstID' }, - 'cameracalibration' => { 432 => 0x11f }, + 'callforimage' => { 511 => 'CallForImage' }, + 'camera' => { 499 => [\'Cameras','CamerasCamera'] }, + 'cameraangle' => { 416 => 'angl', 552 => 'cameraAngle' }, + 'cameraappinfo' => { 499 => [\'Cameras','CamerasCameraAppInfo'] }, + 'cameraappinfoapplication' => { 499 => [\'Cameras','CamerasCameraAppInfoApplication'] }, + 'cameraappinfoitemuri' => { 499 => [\'Cameras','CamerasCameraAppInfoItemURI'] }, + 'cameraappinfoversion' => { 499 => [\'Cameras','CamerasCameraAppInfoVersion'] }, + 'cameraburstid' => { 505 => 'CameraBurstID' }, + 'cameracalibration' => { 434 => 0x11f }, 'cameracalibration1' => { 125 => 0xc623 }, 'cameracalibration2' => { 125 => 0xc624 }, 'cameracalibration3' => { 125 => 0xcd32 }, @@ -1338,95 +1341,95 @@ my %tagLookup = ( 'cameracolorcalibration13' => { 39 => 0x30, 40 => 0x3c }, 'cameracolorcalibration14' => { 39 => 0x34, 40 => 0x41 }, 'cameracolorcalibration15' => { 39 => 0x38, 40 => 0x46 }, - 'cameradepthmap' => { 497 => [\'Cameras','CamerasCameraDepthMap'] }, - 'cameradepthmapconfidenceuri' => { 497 => [\'Cameras','CamerasCameraDepthMapConfidenceURI'] }, - 'cameradepthmapdepthuri' => { 497 => [\'Cameras','CamerasCameraDepthMapDepthURI'] }, - 'cameradepthmapfar' => { 497 => [\'Cameras','CamerasCameraDepthMapFar'] }, - 'cameradepthmapfocaltable' => { 497 => [\'Cameras','CamerasCameraDepthMapFocalTable'] }, - 'cameradepthmapfocaltableentrycount' => { 497 => [\'Cameras','CamerasCameraDepthMapFocalTableEntryCount'] }, - 'cameradepthmapformat' => { 497 => [\'Cameras','CamerasCameraDepthMapFormat'] }, - 'cameradepthmapitemsemantic' => { 497 => [\'Cameras','CamerasCameraDepthMapItemSemantic'] }, - 'cameradepthmapmeasuretype' => { 497 => [\'Cameras','CamerasCameraDepthMapMeasureType'] }, - 'cameradepthmapnear' => { 497 => [\'Cameras','CamerasCameraDepthMapNear'] }, - 'cameradepthmapsoftware' => { 497 => [\'Cameras','CamerasCameraDepthMapSoftware'] }, - 'cameradepthmapunits' => { 497 => [\'Cameras','CamerasCameraDepthMapUnits'] }, - 'cameradirection' => { 409 => 'direction.facing' }, - 'camerae-mountversion' => { 492 => 0xb }, - 'cameraelevationangle' => { 125 => 0x9405, 528 => 'CameraElevationAngle' }, - 'camerafilename' => { 509 => 'CameraFilename' }, - 'camerafirmware' => { 125 => 0xa439, 528 => 'CameraFirmware' }, - 'cameraid' => { 335 => 0x209, 415 => 'cmid', 431 => 0x209 }, - 'cameraidentifier' => { 409 => 'camera.identifier' }, - 'cameraimage' => { 497 => [\'Cameras','CamerasCameraImage'] }, - 'cameraimageitemsemantic' => { 497 => [\'Cameras','CamerasCameraImageItemSemantic'] }, - 'cameraimageitemuri' => { 497 => [\'Cameras','CamerasCameraImageItemURI'] }, - 'cameraimagingmodel' => { 497 => [\'Cameras','CamerasCameraImagingModel'] }, - 'cameraimagingmodeldistortion' => { 497 => [\'Cameras','CamerasCameraImagingModelDistortion'] }, - 'cameraimagingmodeldistortioncount' => { 497 => [\'Cameras','CamerasCameraImagingModelDistortionCount'] }, - 'cameraimagingmodelfocallengthx' => { 497 => [\'Cameras','CamerasCameraImagingModelFocalLengthX'] }, - 'cameraimagingmodelfocallengthy' => { 497 => [\'Cameras','CamerasCameraImagingModelFocalLengthY'] }, - 'cameraimagingmodelimageheight' => { 497 => [\'Cameras','CamerasCameraImagingModelImageHeight'] }, - 'cameraimagingmodelimagewidth' => { 497 => [\'Cameras','CamerasCameraImagingModelImageWidth'] }, - 'cameraimagingmodelpixelaspectratio' => { 497 => [\'Cameras','CamerasCameraImagingModelPixelAspectRatio'] }, - 'cameraimagingmodelprincipalpointx' => { 497 => [\'Cameras','CamerasCameraImagingModelPrincipalPointX'] }, - 'cameraimagingmodelprincipalpointy' => { 497 => [\'Cameras','CamerasCameraImagingModelPrincipalPointY'] }, - 'cameraimagingmodelskew' => { 497 => [\'Cameras','CamerasCameraImagingModelSkew'] }, + 'cameradepthmap' => { 499 => [\'Cameras','CamerasCameraDepthMap'] }, + 'cameradepthmapconfidenceuri' => { 499 => [\'Cameras','CamerasCameraDepthMapConfidenceURI'] }, + 'cameradepthmapdepthuri' => { 499 => [\'Cameras','CamerasCameraDepthMapDepthURI'] }, + 'cameradepthmapfar' => { 499 => [\'Cameras','CamerasCameraDepthMapFar'] }, + 'cameradepthmapfocaltable' => { 499 => [\'Cameras','CamerasCameraDepthMapFocalTable'] }, + 'cameradepthmapfocaltableentrycount' => { 499 => [\'Cameras','CamerasCameraDepthMapFocalTableEntryCount'] }, + 'cameradepthmapformat' => { 499 => [\'Cameras','CamerasCameraDepthMapFormat'] }, + 'cameradepthmapitemsemantic' => { 499 => [\'Cameras','CamerasCameraDepthMapItemSemantic'] }, + 'cameradepthmapmeasuretype' => { 499 => [\'Cameras','CamerasCameraDepthMapMeasureType'] }, + 'cameradepthmapnear' => { 499 => [\'Cameras','CamerasCameraDepthMapNear'] }, + 'cameradepthmapsoftware' => { 499 => [\'Cameras','CamerasCameraDepthMapSoftware'] }, + 'cameradepthmapunits' => { 499 => [\'Cameras','CamerasCameraDepthMapUnits'] }, + 'cameradirection' => { 410 => 'direction.facing' }, + 'camerae-mountversion' => { 494 => 0xb }, + 'cameraelevationangle' => { 125 => 0x9405, 530 => 'CameraElevationAngle' }, + 'camerafilename' => { 511 => 'CameraFilename' }, + 'camerafirmware' => { 125 => 0xa439, 530 => 'CameraFirmware' }, + 'cameraid' => { 335 => 0x209, 416 => 'cmid', 433 => 0x209 }, + 'cameraidentifier' => { 417 => 'camera.identifier' }, + 'cameraimage' => { 499 => [\'Cameras','CamerasCameraImage'] }, + 'cameraimageitemsemantic' => { 499 => [\'Cameras','CamerasCameraImageItemSemantic'] }, + 'cameraimageitemuri' => { 499 => [\'Cameras','CamerasCameraImageItemURI'] }, + 'cameraimagingmodel' => { 499 => [\'Cameras','CamerasCameraImagingModel'] }, + 'cameraimagingmodeldistortion' => { 499 => [\'Cameras','CamerasCameraImagingModelDistortion'] }, + 'cameraimagingmodeldistortioncount' => { 499 => [\'Cameras','CamerasCameraImagingModelDistortionCount'] }, + 'cameraimagingmodelfocallengthx' => { 499 => [\'Cameras','CamerasCameraImagingModelFocalLengthX'] }, + 'cameraimagingmodelfocallengthy' => { 499 => [\'Cameras','CamerasCameraImagingModelFocalLengthY'] }, + 'cameraimagingmodelimageheight' => { 499 => [\'Cameras','CamerasCameraImagingModelImageHeight'] }, + 'cameraimagingmodelimagewidth' => { 499 => [\'Cameras','CamerasCameraImagingModelImageWidth'] }, + 'cameraimagingmodelpixelaspectratio' => { 499 => [\'Cameras','CamerasCameraImagingModelPixelAspectRatio'] }, + 'cameraimagingmodelprincipalpointx' => { 499 => [\'Cameras','CamerasCameraImagingModelPrincipalPointX'] }, + 'cameraimagingmodelprincipalpointy' => { 499 => [\'Cameras','CamerasCameraImagingModelPrincipalPointY'] }, + 'cameraimagingmodelskew' => { 499 => [\'Cameras','CamerasCameraImagingModelSkew'] }, 'cameraiso' => { 37 => 0x10 }, - 'cameralabel' => { 125 => 0xc7a1, 550 => 'cameraLabel' }, - 'cameralightestimate' => { 497 => [\'Cameras','CamerasCameraLightEstimate'] }, - 'cameralightestimatecolorcorrectionb' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionB'] }, - 'cameralightestimatecolorcorrectiong' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionG'] }, - 'cameralightestimatecolorcorrectionr' => { 497 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionR'] }, - 'cameralightestimatepixelintensity' => { 497 => [\'Cameras','CamerasCameraLightEstimatePixelIntensity'] }, - 'cameramakemodel' => { 509 => 'CameraMakeModel' }, - 'cameramodel' => { 399 => 0x410, 550 => 'cameraModel' }, + 'cameralabel' => { 125 => 0xc7a1, 552 => 'cameraLabel' }, + 'cameralightestimate' => { 499 => [\'Cameras','CamerasCameraLightEstimate'] }, + 'cameralightestimatecolorcorrectionb' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionB'] }, + 'cameralightestimatecolorcorrectiong' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionG'] }, + 'cameralightestimatecolorcorrectionr' => { 499 => [\'Cameras','CamerasCameraLightEstimateColorCorrectionR'] }, + 'cameralightestimatepixelintensity' => { 499 => [\'Cameras','CamerasCameraLightEstimatePixelIntensity'] }, + 'cameramakemodel' => { 511 => 'CameraMakeModel' }, + 'cameramodel' => { 399 => 0x410, 552 => 'cameraModel' }, 'cameramodelid' => { 183 => 'CameraModelID' }, - 'cameramodelrestriction' => { 521 => 'CameraModelRestriction', 523 => 'CameraModelRestriction' }, - 'cameramotion' => { 409 => 'direction.motion' }, - 'cameramove' => { 550 => 'cameraMove' }, - 'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => [0x36,0x3a], 24 => 0x7d, 25 => 0x83, 26 => 0x84, 27 => 0x96, 28 => 0x35, 29 => 0x96, 354 => 0x8f, 389 => 0x1, 394 => 0x1, 399 => 0x100, 448 => [0x16,0x18], 479 => 0x28, 480 => 0x24, 481 => 0x29 }, + 'cameramodelrestriction' => { 523 => 'CameraModelRestriction', 525 => 'CameraModelRestriction' }, + 'cameramotion' => { 410 => 'direction.motion' }, + 'cameramove' => { 552 => 'cameraMove' }, + 'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => [0x36,0x3a], 24 => 0x7d, 25 => 0x83, 26 => 0x84, 27 => 0x96, 28 => 0x35, 29 => 0x96, 354 => 0x8f, 389 => 0x1, 394 => 0x1, 399 => 0x100, 450 => [0x16,0x18], 481 => 0x28, 482 => 0x24, 483 => 0x29 }, 'cameraowner' => { 148 => 0xc353 }, 'cameraparameters' => { 335 => 0x2050 }, 'camerapicturestyle' => { 28 => 0xaf }, - 'camerapitch' => { 121 => 0x9, 415 => "\xa9gpt" }, - 'camerapointcloud' => { 497 => [\'Cameras','CamerasCameraPointCloud'] }, - 'camerapointcloudmetric' => { 497 => [\'Cameras','CamerasCameraPointCloudMetric'] }, - 'camerapointcloudpointcloud' => { 497 => [\'Cameras','CamerasCameraPointCloudPointCloud'] }, - 'camerapointcloudpoints' => { 497 => [\'Cameras','CamerasCameraPointCloudPoints'] }, - 'camerapose' => { 497 => [\'Cameras','CamerasCameraPose'] }, - 'cameraposepositionx' => { 497 => [\'Cameras','CamerasCameraPosePositionX'] }, - 'cameraposepositiony' => { 497 => [\'Cameras','CamerasCameraPosePositionY'] }, - 'cameraposepositionz' => { 497 => [\'Cameras','CamerasCameraPosePositionZ'] }, - 'cameraposerotationw' => { 497 => [\'Cameras','CamerasCameraPoseRotationW'] }, - 'cameraposerotationx' => { 497 => [\'Cameras','CamerasCameraPoseRotationX'] }, - 'cameraposerotationy' => { 497 => [\'Cameras','CamerasCameraPoseRotationY'] }, - 'cameraposerotationz' => { 497 => [\'Cameras','CamerasCameraPoseRotationZ'] }, - 'cameraposetimestamp' => { 497 => [\'Cameras','CamerasCameraPoseTimestamp'] }, - 'cameraprofile' => { 521 => 'CameraProfile', 523 => 'CameraProfile' }, - 'cameraprofiledigest' => { 521 => 'CameraProfileDigest', 523 => 'CameraProfileDigest' }, - 'cameraprofiles' => { 538 => 'CameraProfiles' }, - 'cameraprofilesaperturevalue' => { 538 => [\'CameraProfiles','CameraProfilesApertureValue'] }, - 'cameraprofilesauthor' => { 538 => [\'CameraProfiles','CameraProfilesAuthor'] }, - 'cameraprofilesautoscale' => { 538 => [\'CameraProfiles','CameraProfilesAutoScale'] }, - 'cameraprofilescameraprettyname' => { 538 => [\'CameraProfiles','CameraProfilesCameraPrettyName'] }, - 'cameraprofilescamerarawprofile' => { 538 => [\'CameraProfiles','CameraProfilesCameraRawProfile'] }, - 'cameraprofilesfocallength' => { 538 => [\'CameraProfiles','CameraProfilesFocalLength'] }, - 'cameraprofilesfocusdistance' => { 538 => [\'CameraProfiles','CameraProfilesFocusDistance'] }, - 'cameraprofileslens' => { 538 => [\'CameraProfiles','CameraProfilesLens'] }, - 'cameraprofileslensprettyname' => { 538 => [\'CameraProfiles','CameraProfilesLensPrettyName'] }, - 'cameraprofilesmake' => { 538 => [\'CameraProfiles','CameraProfilesMake'] }, - 'cameraprofilesmodel' => { 538 => [\'CameraProfiles','CameraProfilesModel'] }, - 'cameraprofilesperspectivemodel' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModel'] }, - 'cameraprofilesperspectivemodelimagexcenter' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageXCenter'] }, - 'cameraprofilesperspectivemodelimageycenter' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageYCenter'] }, - 'cameraprofilesperspectivemodelradialdistortparam1' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam1'] }, - 'cameraprofilesperspectivemodelradialdistortparam2' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam2'] }, - 'cameraprofilesperspectivemodelradialdistortparam3' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam3'] }, - 'cameraprofilesperspectivemodelscalefactor' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelScaleFactor'] }, - 'cameraprofilesperspectivemodelversion' => { 538 => [\'CameraProfiles','CameraProfilesPerspectiveModelVersion'] }, - 'cameraprofilesprofilename' => { 538 => [\'CameraProfiles','CameraProfilesProfileName'] }, - 'cameraprofilessensorformatfactor' => { 538 => [\'CameraProfiles','CameraProfilesSensorFormatFactor'] }, - 'cameraprofilesuniquecameramodel' => { 538 => [\'CameraProfiles','CameraProfilesUniqueCameraModel'] }, + 'camerapitch' => { 121 => 0x9, 416 => "\xa9gpt" }, + 'camerapointcloud' => { 499 => [\'Cameras','CamerasCameraPointCloud'] }, + 'camerapointcloudmetric' => { 499 => [\'Cameras','CamerasCameraPointCloudMetric'] }, + 'camerapointcloudpointcloud' => { 499 => [\'Cameras','CamerasCameraPointCloudPointCloud'] }, + 'camerapointcloudpoints' => { 499 => [\'Cameras','CamerasCameraPointCloudPoints'] }, + 'camerapose' => { 499 => [\'Cameras','CamerasCameraPose'] }, + 'cameraposepositionx' => { 499 => [\'Cameras','CamerasCameraPosePositionX'] }, + 'cameraposepositiony' => { 499 => [\'Cameras','CamerasCameraPosePositionY'] }, + 'cameraposepositionz' => { 499 => [\'Cameras','CamerasCameraPosePositionZ'] }, + 'cameraposerotationw' => { 499 => [\'Cameras','CamerasCameraPoseRotationW'] }, + 'cameraposerotationx' => { 499 => [\'Cameras','CamerasCameraPoseRotationX'] }, + 'cameraposerotationy' => { 499 => [\'Cameras','CamerasCameraPoseRotationY'] }, + 'cameraposerotationz' => { 499 => [\'Cameras','CamerasCameraPoseRotationZ'] }, + 'cameraposetimestamp' => { 499 => [\'Cameras','CamerasCameraPoseTimestamp'] }, + 'cameraprofile' => { 523 => 'CameraProfile', 525 => 'CameraProfile' }, + 'cameraprofiledigest' => { 523 => 'CameraProfileDigest', 525 => 'CameraProfileDigest' }, + 'cameraprofiles' => { 540 => 'CameraProfiles' }, + 'cameraprofilesaperturevalue' => { 540 => [\'CameraProfiles','CameraProfilesApertureValue'] }, + 'cameraprofilesauthor' => { 540 => [\'CameraProfiles','CameraProfilesAuthor'] }, + 'cameraprofilesautoscale' => { 540 => [\'CameraProfiles','CameraProfilesAutoScale'] }, + 'cameraprofilescameraprettyname' => { 540 => [\'CameraProfiles','CameraProfilesCameraPrettyName'] }, + 'cameraprofilescamerarawprofile' => { 540 => [\'CameraProfiles','CameraProfilesCameraRawProfile'] }, + 'cameraprofilesfocallength' => { 540 => [\'CameraProfiles','CameraProfilesFocalLength'] }, + 'cameraprofilesfocusdistance' => { 540 => [\'CameraProfiles','CameraProfilesFocusDistance'] }, + 'cameraprofileslens' => { 540 => [\'CameraProfiles','CameraProfilesLens'] }, + 'cameraprofileslensprettyname' => { 540 => [\'CameraProfiles','CameraProfilesLensPrettyName'] }, + 'cameraprofilesmake' => { 540 => [\'CameraProfiles','CameraProfilesMake'] }, + 'cameraprofilesmodel' => { 540 => [\'CameraProfiles','CameraProfilesModel'] }, + 'cameraprofilesperspectivemodel' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModel'] }, + 'cameraprofilesperspectivemodelimagexcenter' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageXCenter'] }, + 'cameraprofilesperspectivemodelimageycenter' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelImageYCenter'] }, + 'cameraprofilesperspectivemodelradialdistortparam1' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam1'] }, + 'cameraprofilesperspectivemodelradialdistortparam2' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam2'] }, + 'cameraprofilesperspectivemodelradialdistortparam3' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelRadialDistortParam3'] }, + 'cameraprofilesperspectivemodelscalefactor' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelScaleFactor'] }, + 'cameraprofilesperspectivemodelversion' => { 540 => [\'CameraProfiles','CameraProfilesPerspectiveModelVersion'] }, + 'cameraprofilesprofilename' => { 540 => [\'CameraProfiles','CameraProfilesProfileName'] }, + 'cameraprofilessensorformatfactor' => { 540 => [\'CameraProfiles','CameraProfilesSensorFormatFactor'] }, + 'cameraprofilesuniquecameramodel' => { 540 => [\'CameraProfiles','CameraProfilesUniqueCameraModel'] }, 'camerarawcolortone' => { 115 => 0xe1 }, 'camerarawcontrast' => { 115 => 0xe3 }, 'camerarawhighlightpoint' => { 115 => 0xe6 }, @@ -1436,23 +1439,23 @@ my %tagLookup = ( 'camerarawsaturation' => { 115 => 0xe2 }, 'camerarawshadowpoint' => { 115 => 0xe7 }, 'camerarawsharpness' => { 115 => 0xe5 }, - 'cameraroll' => { 121 => 0xb, 415 => "\xa9grl" }, - 'cameras' => { 497 => 'Cameras' }, - 'cameraserialnumber' => { 125 => 0xc62f, 185 => 'CameraSerialNumber', 509 => 'CameraSerialNumber' }, + 'cameraroll' => { 121 => 0xb, 416 => "\xa9grl" }, + 'cameras' => { 499 => 'Cameras' }, + 'cameraserialnumber' => { 125 => 0xc62f, 185 => 'CameraSerialNumber', 511 => 'CameraSerialNumber' }, 'camerasettingsversion' => { 330 => 0x0 }, - 'cameratemperature' => { 7 => 0x18, 9 => 0x1b, 11 => 0x18, 13 => 0x19, 14 => 0x18, 15 => 0x18, 16 => 0x19, 17 => 0x19, 18 => 0x19, 19 => 0x17, 20 => 0x19, 21 => 0x1b, 22 => 0x19, 23 => 0x19, 24 => 0x1b, 25 => 0x1b, 26 => 0x1b, 27 => 0x1b, 28 => 0x19, 29 => 0x1b, 31 => [0x87,0x91], 32 => [0x99,0x9f,0xa4,0xa8,0x105], 36 => ['-3',0x64,0x47,0x53,0x5b,0x5c], 82 => 0xc, 145 => 0x406, 334 => 0x1306, 349 => 0x320, 356 => 0x3402, 390 => 0x47, 429 => 0x43, 483 => 0x5 }, + 'cameratemperature' => { 7 => 0x18, 9 => 0x1b, 11 => 0x18, 13 => 0x19, 14 => 0x18, 15 => 0x18, 16 => 0x19, 17 => 0x19, 18 => 0x19, 19 => 0x17, 20 => 0x19, 21 => 0x1b, 22 => 0x19, 23 => 0x19, 24 => 0x1b, 25 => 0x1b, 26 => 0x1b, 27 => 0x1b, 28 => 0x19, 29 => 0x1b, 31 => [0x87,0x91], 32 => [0x99,0x9f,0xa4,0xa8,0x105], 36 => ['-3',0x64,0x47,0x53,0x5b,0x5c], 82 => 0xc, 145 => 0x406, 334 => 0x1306, 349 => 0x320, 356 => 0x3402, 390 => 0x47, 431 => 0x43, 485 => 0x5 }, 'cameratemperature4' => { 395 => 0x14 }, 'cameratemperature5' => { 395 => 0x16 }, 'cameratemperaturerangemax' => { 127 => 0x5 }, 'cameratemperaturerangemin' => { 127 => 0x6 }, - 'cameratrait' => { 497 => [\'Cameras','CamerasCameraTrait'] }, + 'cameratrait' => { 499 => [\'Cameras','CamerasCameraTrait'] }, 'cameratype' => { 1 => 0x2e, 82 => 0x1a, 335 => 0x207 }, 'cameratype2' => { 331 => 0x100 }, - 'cameravendorinfo' => { 497 => [\'Cameras','CamerasCameraVendorInfo'] }, - 'cameravendorinfomanufacturer' => { 497 => [\'Cameras','CamerasCameraVendorInfoManufacturer'] }, - 'cameravendorinfomodel' => { 497 => [\'Cameras','CamerasCameraVendorInfoModel'] }, - 'cameravendorinfonotes' => { 497 => [\'Cameras','CamerasCameraVendorInfoNotes'] }, - 'camerayaw' => { 121 => 0xa, 415 => "\xa9gyw" }, + 'cameravendorinfo' => { 499 => [\'Cameras','CamerasCameraVendorInfo'] }, + 'cameravendorinfomanufacturer' => { 499 => [\'Cameras','CamerasCameraVendorInfoManufacturer'] }, + 'cameravendorinfomodel' => { 499 => [\'Cameras','CamerasCameraVendorInfoModel'] }, + 'cameravendorinfonotes' => { 499 => [\'Cameras','CamerasCameraVendorInfoNotes'] }, + 'camerayaw' => { 121 => 0xa, 416 => "\xa9gyw" }, 'camreverse' => { 122 => 'CamReverse' }, 'canondr4' => { 126 => 'CanonDR4' }, 'canonexposuremode' => { 37 => 0x14 }, @@ -1466,248 +1469,248 @@ my %tagLookup = ( 'canonlogversion' => { 68 => 0xb }, 'canonmodelid' => { 69 => 0x10, 103 => 0x1834 }, 'canonvrd' => { 126 => 'CanonVRD' }, - 'caption' => { 515 => 'caption' }, + 'caption' => { 517 => 'caption' }, 'caption-abstract' => { 138 => 0x78 }, - 'captionsauthornames' => { 526 => 'CaptionsAuthorNames' }, - 'captionsdatetimestamps' => { 526 => 'CaptionsDateTimeStamps' }, - 'captionwriter' => { 538 => 'CaptionWriter' }, + 'captionsauthornames' => { 528 => 'CaptionsAuthorNames' }, + 'captionsdatetimestamps' => { 528 => 'CaptionsDateTimeStamps' }, + 'captionwriter' => { 540 => 'CaptionWriter' }, 'captureframerate' => { 119 => 0x4001 }, 'captureheightnormal' => { 145 => 0x1839 }, 'capturelook' => { 145 => 0xc48 }, - 'capturemode' => { 409 => 'com.apple.photos.captureMode' }, - 'capturesoftware' => { 507 => 'CaptureSoftware' }, + 'capturemode' => { 417 => 'com.apple.photos.captureMode' }, + 'capturesoftware' => { 509 => 'CaptureSoftware' }, 'capturewidthnormal' => { 145 => 0x1838 }, 'capturewidthtest' => { 145 => 0x1842 }, 'cardshutterlock' => { 191 => 0x49 }, 'casioimagesize' => { 119 => 0x9 }, - 'catalogsets' => { 138 => 0xff, 499 => 'CatalogSets', 513 => 'CatalogSets' }, - 'categories' => { 69 => 0x23, 515 => 'categories' }, - 'category' => { 138 => 0xf, 186 => 'WM/Category', 329 => 0x30, 407 => 'catg', 538 => 'Category' }, - 'cbcrgain' => { 429 => 0xa036 }, - 'cbcrgaindefault' => { 429 => 0xa035 }, - 'cbcrmatrix' => { 429 => 0xa034 }, - 'cbcrmatrixdefault' => { 429 => 0xa033 }, + 'catalogsets' => { 138 => 0xff, 501 => 'CatalogSets', 515 => 'CatalogSets' }, + 'categories' => { 69 => 0x23, 517 => 'categories' }, + 'category' => { 138 => 0xf, 186 => 'WM/Category', 329 => 0x30, 408 => 'catg', 540 => 'Category' }, + 'cbcrgain' => { 431 => 0xa036 }, + 'cbcrgaindefault' => { 431 => 0xa035 }, + 'cbcrmatrix' => { 431 => 0xa034 }, + 'cbcrmatrixdefault' => { 431 => 0xa033 }, 'ccdboardversion' => { 349 => 0x331 }, 'ccdscanmode' => { 335 => 0x1039 }, 'ccdsensitivity' => { 291 => 0x6 }, 'ccdversion' => { 349 => 0x330 }, - 'ccvavgluminancenits' => { 531 => 'ccv_avg_luminance_nits' }, - 'ccvmaxluminancenits' => { 531 => 'ccv_max_luminance_nits' }, - 'ccvminluminancenits' => { 531 => 'ccv_min_luminance_nits' }, - 'ccvprimariesxy' => { 531 => 'ccv_primaries_xy' }, - 'ccvwhitexy' => { 531 => 'ccv_white_xy' }, - 'cellglobalid' => { 520 => 'cgi' }, + 'ccvavgluminancenits' => { 533 => 'ccv_avg_luminance_nits' }, + 'ccvmaxluminancenits' => { 533 => 'ccv_max_luminance_nits' }, + 'ccvminluminancenits' => { 533 => 'ccv_min_luminance_nits' }, + 'ccvprimariesxy' => { 533 => 'ccv_primaries_xy' }, + 'ccvwhitexy' => { 533 => 'ccv_white_xy' }, + 'cellglobalid' => { 522 => 'cgi' }, 'celllength' => { 125 => 0x109 }, - 'cellr' => { 520 => 'r' }, - 'celltowerid' => { 520 => 'cellid' }, + 'cellr' => { 522 => 'r' }, + 'celltowerid' => { 522 => 'cellid' }, 'cellwidth' => { 125 => 0x108 }, 'centerafarea' => { 320 => '15.1' }, 'centerfocuspoint' => { 324 => '2.2' }, 'centerpixel' => { 145 => 0x40c }, 'centerweightedareasize' => { 309 => '7.1', 310 => '8.1', 312 => '8.1', 313 => '8.1', 317 => '7.1', 318 => '5.1', 319 => '7.1', 320 => '6.3', 322 => '8.1', 323 => '8.1', 324 => '8.1', 325 => 0x21, 326 => 0x1f, 327 => 0x1f, 328 => 0x1f }, - 'certificate' => { 554 => 'Certificate' }, + 'certificate' => { 556 => 'Certificate' }, 'cfainterpolationalgorithm' => { 145 => 0xe60 }, 'cfainterpolationmetric' => { 145 => 0xe61 }, 'cfaoffsetcols' => { 145 => 0xc71 }, 'cfaoffsetrows' => { 145 => 0xc6f }, - 'cfapattern' => { 125 => 0xa302, 359 => 0x9, 527 => 'CFAPattern' }, + 'cfapattern' => { 125 => 0xa302, 359 => 0x9, 529 => 'CFAPattern' }, 'cfapattern2' => { 125 => 0x828e }, - 'cfapatterncolumns' => { 527 => [\'CFAPattern','CFAPatternColumns'] }, - 'cfapatternrows' => { 527 => [\'CFAPattern','CFAPatternRows'] }, - 'cfapatternvalues' => { 527 => [\'CFAPattern','CFAPatternValues'] }, + 'cfapatterncolumns' => { 529 => [\'CFAPattern','CFAPatternColumns'] }, + 'cfapatternrows' => { 529 => [\'CFAPattern','CFAPatternRows'] }, + 'cfapatternvalues' => { 529 => [\'CFAPattern','CFAPatternValues'] }, 'cfarepeatpatterndim' => { 125 => 0x828d }, 'cfazipperfixthreshold' => { 145 => 0xe62 }, - 'channel' => { 540 => 'channel' }, - 'channela-lang' => { 540 => [\'channel','channelA-lang'] }, - 'channelchannel' => { 540 => [\'channel','channelChannel'] }, + 'channel' => { 542 => 'channel' }, + 'channela-lang' => { 542 => [\'channel','channelA-lang'] }, + 'channelchannel' => { 542 => [\'channel','channelChannel'] }, 'channels' => { 162 => 'Channels' }, - 'channelsubchannel1' => { 540 => [\'channel','channelSubchannel1'] }, - 'channelsubchannel2' => { 540 => [\'channel','channelSubchannel2'] }, - 'channelsubchannel3' => { 540 => [\'channel','channelSubchannel3'] }, - 'channelsubchannel4' => { 540 => [\'channel','channelSubchannel4'] }, - 'chapterlist' => { 415 => 'chpl' }, + 'channelsubchannel1' => { 542 => [\'channel','channelSubchannel1'] }, + 'channelsubchannel2' => { 542 => [\'channel','channelSubchannel2'] }, + 'channelsubchannel3' => { 542 => [\'channel','channelSubchannel3'] }, + 'channelsubchannel4' => { 542 => [\'channel','channelSubchannel4'] }, + 'chapterlist' => { 416 => 'chpl' }, 'checkmark' => { 109 => 0x10101, 114 => 0x26a }, 'checkmark2' => { 115 => 0x8e }, - 'childfontfiles' => { 555 => [\'Fonts','FontsChildFontFiles'] }, + 'childfontfiles' => { 557 => [\'Fonts','FontsChildFontFiles'] }, 'chmodeshootingspeed' => { 309 => '10.3', 310 => '11.2', 326 => 0x10b, 327 => 0x10b, 328 => 0x121 }, 'chromablurradius' => { 125 => 0xc631 }, 'chromanoisecolorspace' => { 145 => 0xe6d }, 'chromanoiseedgemapthresh' => { 145 => 0xe6c }, 'chromanoisehighfthresh' => { 145 => 0xe6a }, 'chromanoiselowfthresh' => { 145 => 0xe6b }, - 'chromaticaberration' => { 109 => 0x20703, 115 => 0x66, 429 => 0xa051 }, - 'chromaticaberrationb' => { 521 => 'ChromaticAberrationB', 523 => 'ChromaticAberrationB' }, + 'chromaticaberration' => { 109 => 0x20703, 115 => 0x66, 431 => 0xa051 }, + 'chromaticaberrationb' => { 523 => 'ChromaticAberrationB', 525 => 'ChromaticAberrationB' }, 'chromaticaberrationblue' => { 109 => 0x20708, 115 => 0x6b }, 'chromaticaberrationcorr' => { 84 => [0x4,0x5] }, - 'chromaticaberrationcorrection' => { 125 => 0x7034, 379 => 0x1, 493 => 0x900d }, - 'chromaticaberrationcorrparams' => { 125 => 0x7035, 487 => 0x66a, 488 => [0x37c,0x384,0x39c,0x3b0,0x3b8] }, + 'chromaticaberrationcorrection' => { 125 => 0x7034, 379 => 0x1, 495 => 0x900d }, + 'chromaticaberrationcorrparams' => { 125 => 0x7035, 489 => 0x66a, 490 => [0x37c,0x384,0x39c,0x3b0,0x3b8] }, 'chromaticaberrationon' => { 109 => '0x20703.0', 115 => 0x62 }, - 'chromaticaberrationr' => { 521 => 'ChromaticAberrationR', 523 => 'ChromaticAberrationR' }, + 'chromaticaberrationr' => { 523 => 'ChromaticAberrationR', 525 => 'ChromaticAberrationR' }, 'chromaticaberrationred' => { 109 => 0x20707, 115 => 0x6a }, 'chromaticaberrationsetting' => { 85 => 0x6 }, - 'chrominancenoisereduction' => { 109 => 0x20601, 115 => 0x5e, 432 => 0x1a }, + 'chrominancenoisereduction' => { 109 => 0x20601, 115 => 0x5e, 434 => 0x1a }, 'chrominancenr_tiff_jpeg' => { 115 => 0x60 }, - 'circadatecreated' => { 535 => 'CircaDateCreated' }, - 'circgradbasedcorractive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'] }, - 'circgradbasedcorramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'] }, - 'circgradbasedcorrblacks2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'] }, - 'circgradbasedcorrbrightness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'] }, - 'circgradbasedcorrclarity' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'] }, - 'circgradbasedcorrclarity2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'] }, - 'circgradbasedcorrcontrast' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'] }, - 'circgradbasedcorrcontrast2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'] }, - 'circgradbasedcorrcorrectionname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'] }, - 'circgradbasedcorrcorrectionsyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'] }, - 'circgradbasedcorrdefringe' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'] }, - 'circgradbasedcorrdehaze' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'] }, - 'circgradbasedcorrexposure' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'] }, - 'circgradbasedcorrexposure2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'] }, - 'circgradbasedcorrhighlights2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'] }, - 'circgradbasedcorrhue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'] }, - 'circgradbasedcorrluminancenoise' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'] }, - 'circgradbasedcorrmaskalpha' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'] }, - 'circgradbasedcorrmaskangle' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'] }, - 'circgradbasedcorrmaskbottom' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'] }, - 'circgradbasedcorrmaskcentervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'] }, - 'circgradbasedcorrmaskcenterweight' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'circgradbasedcorrmaskdabs' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'] }, - 'circgradbasedcorrmaskfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'] }, - 'circgradbasedcorrmaskflipped' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'] }, - 'circgradbasedcorrmaskflow' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'] }, - 'circgradbasedcorrmaskfullx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'] }, - 'circgradbasedcorrmaskfully' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'] }, - 'circgradbasedcorrmaskinputdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'] }, - 'circgradbasedcorrmaskleft' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'] }, - 'circgradbasedcorrmaskmaskactive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'] }, - 'circgradbasedcorrmaskmaskblendmode' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'circgradbasedcorrmaskmaskdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'circgradbasedcorrmaskmaskinverted' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'circgradbasedcorrmaskmaskname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'] }, - 'circgradbasedcorrmaskmasks' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'] }, - 'circgradbasedcorrmaskmasksalpha' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'circgradbasedcorrmaskmasksangle' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'circgradbasedcorrmaskmasksbottom' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'circgradbasedcorrmaskmaskscentervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'circgradbasedcorrmaskmaskscenterweight' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'circgradbasedcorrmaskmasksdabs' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'circgradbasedcorrmaskmasksfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'circgradbasedcorrmaskmasksflipped' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'circgradbasedcorrmaskmasksflow' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'circgradbasedcorrmaskmasksfullx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'circgradbasedcorrmaskmasksfully' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'circgradbasedcorrmaskmasksinputdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'circgradbasedcorrmaskmasksleft' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'circgradbasedcorrmaskmasksmaskactive' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'circgradbasedcorrmaskmasksmaskblendmode' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'circgradbasedcorrmaskmasksmaskdigest' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'circgradbasedcorrmaskmasksmaskinverted' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'circgradbasedcorrmaskmasksmaskname' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'circgradbasedcorrmaskmasksmasksubtype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'circgradbasedcorrmaskmasksmasksyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'circgradbasedcorrmaskmasksmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'circgradbasedcorrmaskmasksmidpoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'circgradbasedcorrmaskmasksorigin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'circgradbasedcorrmaskmasksperimetervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'circgradbasedcorrmaskmasksradius' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'circgradbasedcorrmaskmasksreferencepoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'circgradbasedcorrmaskmasksright' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'] }, - 'circgradbasedcorrmaskmasksroundness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'circgradbasedcorrmaskmaskssizex' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'circgradbasedcorrmaskmaskssizey' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'circgradbasedcorrmaskmaskstop' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'] }, - 'circgradbasedcorrmaskmasksubtype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'circgradbasedcorrmaskmasksvalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'circgradbasedcorrmaskmasksversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'circgradbasedcorrmaskmaskswhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'circgradbasedcorrmaskmaskswholeimagearea' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'circgradbasedcorrmaskmasksx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'] }, - 'circgradbasedcorrmaskmasksy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'] }, - 'circgradbasedcorrmaskmasksyncid' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'circgradbasedcorrmaskmaskszerox' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'circgradbasedcorrmaskmaskszeroy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'circgradbasedcorrmaskmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'circgradbasedcorrmaskmidpoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'] }, - 'circgradbasedcorrmaskorigin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'] }, - 'circgradbasedcorrmaskperimetervalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'circgradbasedcorrmaskradius' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'] }, - 'circgradbasedcorrmaskrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'circgradbasedcorrmaskrangeareamodels' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'circgradbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'circgradbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'circgradbasedcorrmaskrangecoloramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'circgradbasedcorrmaskrangedepthfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'circgradbasedcorrmaskrangedepthmax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'circgradbasedcorrmaskrangedepthmin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'circgradbasedcorrmaskrangeinvert' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'circgradbasedcorrmaskrangelumfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'circgradbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'circgradbasedcorrmaskrangelummax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'circgradbasedcorrmaskrangelummin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'circgradbasedcorrmaskrangelumrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'circgradbasedcorrmaskrangesampletype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'circgradbasedcorrmaskrangetype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'circgradbasedcorrmaskrangeversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'circgradbasedcorrmaskreferencepoint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'circgradbasedcorrmaskright' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'] }, - 'circgradbasedcorrmaskroundness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'] }, - 'circgradbasedcorrmasks' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'] }, - 'circgradbasedcorrmasksizex' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'] }, - 'circgradbasedcorrmasksizey' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'] }, - 'circgradbasedcorrmasktop' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'] }, - 'circgradbasedcorrmaskvalue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'] }, - 'circgradbasedcorrmaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'] }, - 'circgradbasedcorrmaskwhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'] }, - 'circgradbasedcorrmaskwholeimagearea' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'circgradbasedcorrmaskx' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'] }, - 'circgradbasedcorrmasky' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'] }, - 'circgradbasedcorrmaskzerox' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'] }, - 'circgradbasedcorrmaskzeroy' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'] }, - 'circgradbasedcorrmoire' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'] }, - 'circgradbasedcorrrangemask' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'] }, - 'circgradbasedcorrrangemaskareamodels' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'circgradbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'circgradbasedcorrrangemaskareamodelscomponents' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'circgradbasedcorrrangemaskcoloramount' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'circgradbasedcorrrangemaskdepthfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'circgradbasedcorrrangemaskdepthmax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'circgradbasedcorrrangemaskdepthmin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'circgradbasedcorrrangemaskinvert' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'circgradbasedcorrrangemasklumfeather' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'circgradbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'circgradbasedcorrrangemasklummax' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'circgradbasedcorrrangemasklummin' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'circgradbasedcorrrangemasklumrange' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'circgradbasedcorrrangemasksampletype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'circgradbasedcorrrangemasktype' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'] }, - 'circgradbasedcorrrangemaskversion' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'circgradbasedcorrsaturation' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'] }, - 'circgradbasedcorrshadows2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'] }, - 'circgradbasedcorrsharpness' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'] }, - 'circgradbasedcorrtemperature' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'] }, - 'circgradbasedcorrtexture' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'] }, - 'circgradbasedcorrtint' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'] }, - 'circgradbasedcorrtoninghue' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'] }, - 'circgradbasedcorrtoningsaturation' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'] }, - 'circgradbasedcorrwhat' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'] }, - 'circgradbasedcorrwhites2012' => { 521 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'], 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'] }, - 'circulargradientbasedcorrections' => { 521 => 'CircularGradientBasedCorrections', 523 => 'CircularGradientBasedCorrections' }, - 'city' => { 138 => 0x5a, 168 => 'City', 354 => 0x6d, 538 => 'City' }, + 'circadatecreated' => { 537 => 'CircaDateCreated' }, + 'circgradbasedcorractive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionActive'] }, + 'circgradbasedcorramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionAmount'] }, + 'circgradbasedcorrblacks2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBlacks2012'] }, + 'circgradbasedcorrbrightness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalBrightness'] }, + 'circgradbasedcorrclarity' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity'] }, + 'circgradbasedcorrclarity2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalClarity2012'] }, + 'circgradbasedcorrcontrast' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast'] }, + 'circgradbasedcorrcontrast2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalContrast2012'] }, + 'circgradbasedcorrcorrectionname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionName'] }, + 'circgradbasedcorrcorrectionsyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionSyncID'] }, + 'circgradbasedcorrdefringe' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDefringe'] }, + 'circgradbasedcorrdehaze' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalDehaze'] }, + 'circgradbasedcorrexposure' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure'] }, + 'circgradbasedcorrexposure2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalExposure2012'] }, + 'circgradbasedcorrhighlights2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHighlights2012'] }, + 'circgradbasedcorrhue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalHue'] }, + 'circgradbasedcorrluminancenoise' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalLuminanceNoise'] }, + 'circgradbasedcorrmaskalpha' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAlpha'] }, + 'circgradbasedcorrmaskangle' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksAngle'] }, + 'circgradbasedcorrmaskbottom' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksBottom'] }, + 'circgradbasedcorrmaskcentervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterValue'] }, + 'circgradbasedcorrmaskcenterweight' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'circgradbasedcorrmaskdabs' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksDabs'] }, + 'circgradbasedcorrmaskfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFeather'] }, + 'circgradbasedcorrmaskflipped' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlipped'] }, + 'circgradbasedcorrmaskflow' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFlow'] }, + 'circgradbasedcorrmaskfullx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullX'] }, + 'circgradbasedcorrmaskfully' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksFullY'] }, + 'circgradbasedcorrmaskinputdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksInputDigest'] }, + 'circgradbasedcorrmaskleft' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksLeft'] }, + 'circgradbasedcorrmaskmaskactive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskActive'] }, + 'circgradbasedcorrmaskmaskblendmode' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'circgradbasedcorrmaskmaskdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'circgradbasedcorrmaskmaskinverted' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'circgradbasedcorrmaskmaskname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskName'] }, + 'circgradbasedcorrmaskmasks' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasks'] }, + 'circgradbasedcorrmaskmasksalpha' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'circgradbasedcorrmaskmasksangle' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'circgradbasedcorrmaskmasksbottom' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'circgradbasedcorrmaskmaskscentervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'circgradbasedcorrmaskmaskscenterweight' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'circgradbasedcorrmaskmasksdabs' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'circgradbasedcorrmaskmasksfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'circgradbasedcorrmaskmasksflipped' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'circgradbasedcorrmaskmasksflow' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'circgradbasedcorrmaskmasksfullx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'circgradbasedcorrmaskmasksfully' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'circgradbasedcorrmaskmasksinputdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'circgradbasedcorrmaskmasksleft' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'circgradbasedcorrmaskmasksmaskactive' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'circgradbasedcorrmaskmasksmaskblendmode' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'circgradbasedcorrmaskmasksmaskdigest' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'circgradbasedcorrmaskmasksmaskinverted' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'circgradbasedcorrmaskmasksmaskname' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'circgradbasedcorrmaskmasksmasksubtype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'circgradbasedcorrmaskmasksmasksyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'circgradbasedcorrmaskmasksmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'circgradbasedcorrmaskmasksmidpoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'circgradbasedcorrmaskmasksorigin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'circgradbasedcorrmaskmasksperimetervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'circgradbasedcorrmaskmasksradius' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'circgradbasedcorrmaskmasksreferencepoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'circgradbasedcorrmaskmasksright' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRight'] }, + 'circgradbasedcorrmaskmasksroundness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'circgradbasedcorrmaskmaskssizex' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'circgradbasedcorrmaskmaskssizey' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'circgradbasedcorrmaskmaskstop' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksTop'] }, + 'circgradbasedcorrmaskmasksubtype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'circgradbasedcorrmaskmasksvalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'circgradbasedcorrmaskmasksversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'circgradbasedcorrmaskmaskswhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'circgradbasedcorrmaskmaskswholeimagearea' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'circgradbasedcorrmaskmasksx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksX'] }, + 'circgradbasedcorrmaskmasksy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksY'] }, + 'circgradbasedcorrmaskmasksyncid' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'circgradbasedcorrmaskmaskszerox' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'circgradbasedcorrmaskmaskszeroy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'circgradbasedcorrmaskmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'circgradbasedcorrmaskmidpoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMidpoint'] }, + 'circgradbasedcorrmaskorigin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksOrigin'] }, + 'circgradbasedcorrmaskperimetervalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'circgradbasedcorrmaskradius' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRadius'] }, + 'circgradbasedcorrmaskrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'circgradbasedcorrmaskrangeareamodels' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'circgradbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'circgradbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'circgradbasedcorrmaskrangecoloramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'circgradbasedcorrmaskrangedepthfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'circgradbasedcorrmaskrangedepthmax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'circgradbasedcorrmaskrangedepthmin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'circgradbasedcorrmaskrangeinvert' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'circgradbasedcorrmaskrangelumfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'circgradbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'circgradbasedcorrmaskrangelummax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'circgradbasedcorrmaskrangelummin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'circgradbasedcorrmaskrangelumrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'circgradbasedcorrmaskrangesampletype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'circgradbasedcorrmaskrangetype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'circgradbasedcorrmaskrangeversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'circgradbasedcorrmaskreferencepoint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'circgradbasedcorrmaskright' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRight'] }, + 'circgradbasedcorrmaskroundness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksRoundness'] }, + 'circgradbasedcorrmasks' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasks'] }, + 'circgradbasedcorrmasksizex' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeX'] }, + 'circgradbasedcorrmasksizey' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksSizeY'] }, + 'circgradbasedcorrmasktop' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksTop'] }, + 'circgradbasedcorrmaskvalue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksMaskValue'] }, + 'circgradbasedcorrmaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksVersion'] }, + 'circgradbasedcorrmaskwhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWhat'] }, + 'circgradbasedcorrmaskwholeimagearea' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'circgradbasedcorrmaskx' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksX'] }, + 'circgradbasedcorrmasky' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksY'] }, + 'circgradbasedcorrmaskzerox' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroX'] }, + 'circgradbasedcorrmaskzeroy' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionMasksZeroY'] }, + 'circgradbasedcorrmoire' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalMoire'] }, + 'circgradbasedcorrrangemask' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMask'] }, + 'circgradbasedcorrrangemaskareamodels' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'circgradbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'circgradbasedcorrrangemaskareamodelscomponents' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'circgradbasedcorrrangemaskcoloramount' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'circgradbasedcorrrangemaskdepthfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'circgradbasedcorrrangemaskdepthmax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'circgradbasedcorrrangemaskdepthmin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'circgradbasedcorrrangemaskinvert' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'circgradbasedcorrrangemasklumfeather' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'circgradbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'circgradbasedcorrrangemasklummax' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'circgradbasedcorrrangemasklummin' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'circgradbasedcorrrangemasklumrange' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'circgradbasedcorrrangemasksampletype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'circgradbasedcorrrangemasktype' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskType'] }, + 'circgradbasedcorrrangemaskversion' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'circgradbasedcorrsaturation' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSaturation'] }, + 'circgradbasedcorrshadows2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalShadows2012'] }, + 'circgradbasedcorrsharpness' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalSharpness'] }, + 'circgradbasedcorrtemperature' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTemperature'] }, + 'circgradbasedcorrtexture' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTexture'] }, + 'circgradbasedcorrtint' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalTint'] }, + 'circgradbasedcorrtoninghue' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningHue'] }, + 'circgradbasedcorrtoningsaturation' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalToningSaturation'] }, + 'circgradbasedcorrwhat' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsWhat'] }, + 'circgradbasedcorrwhites2012' => { 523 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'], 525 => [\'CircularGradientBasedCorrections','CircularGradientBasedCorrectionsLocalWhites2012'] }, + 'circulargradientbasedcorrections' => { 523 => 'CircularGradientBasedCorrections', 525 => 'CircularGradientBasedCorrections' }, + 'city' => { 138 => 0x5a, 168 => 'City', 354 => 0x6d, 540 => 'City' }, 'city2' => { 354 => 0x80 }, - 'clarity' => { 37 => 0x33, 133 => 0x100f, 261 => 0x35, 262 => 0x3d, 456 => 0x2036, 521 => 'Clarity', 523 => 'Clarity' }, - 'clarity2012' => { 521 => 'Clarity2012', 523 => 'Clarity2012' }, + 'clarity' => { 37 => 0x33, 133 => 0x100f, 261 => 0x35, 262 => 0x3d, 458 => 0x2036, 523 => 'Clarity', 525 => 'Clarity' }, + 'clarity2012' => { 523 => 'Clarity2012', 525 => 'Clarity2012' }, 'claritycontrol' => { 390 => 0x96 }, - 'classification' => { 415 => 'clsf' }, + 'classification' => { 416 => 'clsf' }, 'classifystate' => { 138 => 0xe1 }, 'clearretouch' => { 354 => 0x7c }, 'clearretouchvalue' => { 354 => 0xa3 }, - 'client' => { 550 => 'client' }, - 'clientname' => { 529 => 'ClientName' }, - 'clipboardaspectratio' => { 521 => 'ClipboardAspectRatio', 523 => 'ClipboardAspectRatio' }, - 'clipboardorientation' => { 521 => 'ClipboardOrientation', 523 => 'ClipboardOrientation' }, - 'clipfilename' => { 415 => 'clfn' }, - 'clipid' => { 415 => 'clid' }, + 'client' => { 552 => 'client' }, + 'clientname' => { 531 => 'ClientName' }, + 'clipboardaspectratio' => { 523 => 'ClipboardAspectRatio', 525 => 'ClipboardAspectRatio' }, + 'clipboardorientation' => { 523 => 'ClipboardOrientation', 525 => 'ClipboardOrientation' }, + 'clipfilename' => { 416 => 'clfn' }, + 'clipid' => { 416 => 'clid' }, 'clmodeshootingspeed' => { 309 => '10.2', 310 => '11.3', 312 => '11.2', 313 => '11.2', 318 => '11.2', 319 => '10.2', 322 => '11.2', 323 => '11.2', 324 => '11.1', 325 => 0x3f, 326 => 0x3b, 327 => 0x3b, 328 => 0x3b }, - 'cluster' => { 521 => 'Cluster', 523 => 'Cluster' }, + 'cluster' => { 523 => 'Cluster', 525 => 'Cluster' }, 'cmcontrast' => { 338 => 0x2022 }, 'cmddialsreverserotation' => { 325 => 0xbe, 326 => 0xba, 327 => 0xba, 328 => 0xba }, 'cmexposurecompensation' => { 338 => 0x2000 }, @@ -1719,31 +1722,31 @@ my %tagLookup = ( 'cmwhitebalancegraypoint' => { 338 => 0x2010 }, 'codec' => { 176 => 'Codec' }, 'codedcharacterset' => { 139 => 0x5a }, - 'codeversion' => { 415 => 'cver' }, + 'codeversion' => { 416 => 'cver' }, 'collection' => { 343 => 'Collection' }, - 'collectionname' => { 177 => [\'Collections','CollectionsCollectionName'], 415 => 'coll' }, - 'collections' => { 177 => 'Collections', 515 => 'collections' }, + 'collectionname' => { 177 => [\'Collections','CollectionsCollectionName'], 416 => 'coll' }, + 'collections' => { 177 => 'Collections', 517 => 'collections' }, 'collectionuri' => { 177 => [\'Collections','CollectionsCollectionURI'] }, - 'color' => { 409 => 'player.movie.visual.color', 539 => 'color' }, + 'color' => { 410 => 'player.movie.visual.color', 541 => 'color' }, 'coloraberrationcontrol' => { 302 => 0xc89224b }, - 'coloradjustment' => { 432 => 0x14 }, - 'coloradjustmentmode' => { 431 => 0x210 }, - 'coloranta' => { 555 => [\'Colorants','ColorantsA'] }, - 'colorantb' => { 555 => [\'Colorants','ColorantsB'] }, - 'colorantblack' => { 555 => [\'Colorants','ColorantsBlack'] }, - 'colorantblue' => { 555 => [\'Colorants','ColorantsBlue'] }, - 'colorantcyan' => { 555 => [\'Colorants','ColorantsCyan'] }, - 'colorantgray' => { 555 => [\'Colorants','ColorantsGray'] }, - 'colorantgreen' => { 555 => [\'Colorants','ColorantsGreen'] }, - 'colorantl' => { 555 => [\'Colorants','ColorantsL'] }, - 'colorantmagenta' => { 555 => [\'Colorants','ColorantsMagenta'] }, - 'colorantmode' => { 555 => [\'Colorants','ColorantsMode'] }, - 'colorantred' => { 555 => [\'Colorants','ColorantsRed'] }, - 'colorants' => { 555 => 'Colorants' }, - 'colorantswatchname' => { 555 => [\'Colorants','ColorantsSwatchName'] }, - 'coloranttint' => { 555 => [\'Colorants','ColorantsTint'] }, - 'coloranttype' => { 555 => [\'Colorants','ColorantsType'] }, - 'colorantyellow' => { 555 => [\'Colorants','ColorantsYellow'] }, + 'coloradjustment' => { 434 => 0x14 }, + 'coloradjustmentmode' => { 433 => 0x210 }, + 'coloranta' => { 557 => [\'Colorants','ColorantsA'] }, + 'colorantb' => { 557 => [\'Colorants','ColorantsB'] }, + 'colorantblack' => { 557 => [\'Colorants','ColorantsBlack'] }, + 'colorantblue' => { 557 => [\'Colorants','ColorantsBlue'] }, + 'colorantcyan' => { 557 => [\'Colorants','ColorantsCyan'] }, + 'colorantgray' => { 557 => [\'Colorants','ColorantsGray'] }, + 'colorantgreen' => { 557 => [\'Colorants','ColorantsGreen'] }, + 'colorantl' => { 557 => [\'Colorants','ColorantsL'] }, + 'colorantmagenta' => { 557 => [\'Colorants','ColorantsMagenta'] }, + 'colorantmode' => { 557 => [\'Colorants','ColorantsMode'] }, + 'colorantred' => { 557 => [\'Colorants','ColorantsRed'] }, + 'colorants' => { 557 => 'Colorants' }, + 'colorantswatchname' => { 557 => [\'Colorants','ColorantsSwatchName'] }, + 'coloranttint' => { 557 => [\'Colorants','ColorantsTint'] }, + 'coloranttype' => { 557 => [\'Colorants','ColorantsType'] }, + 'colorantyellow' => { 557 => [\'Colorants','ColorantsYellow'] }, 'colorbalance' => { 163 => 'ColorBalance' }, 'colorbalanceadj' => { 302 => 0x76a43202 }, 'colorbalanceblue' => { 188 => 0x1e }, @@ -1758,56 +1761,56 @@ my %tagLookup = ( 'colorchromeeffect' => { 133 => 0x1048 }, 'colorchromefxblue' => { 133 => 0x104e }, 'colorclass' => { 401 => 0xde, 402 => 'ColorClass' }, - 'colorcompensationfilter' => { 191 => [0x3a,0x5f], 193 => 0x111, 456 => 0xb022 }, - 'colorcompensationfiltercustom' => { 442 => 0xd, 443 => 0xc }, - 'colorcompensationfilterset' => { 442 => 0x8, 443 => 0x7, 444 => 0x18, 461 => 0xf }, + 'colorcompensationfilter' => { 191 => [0x3a,0x5f], 193 => 0x111, 458 => 0xb022 }, + 'colorcompensationfiltercustom' => { 444 => 0xd, 445 => 0xc }, + 'colorcompensationfilterset' => { 444 => 0x8, 445 => 0x7, 446 => 0x18, 463 => 0xf }, 'colorcontrol' => { 335 => 0x102b }, - 'colorcorrection' => { 493 => 0x8015 }, + 'colorcorrection' => { 495 => 0x8015 }, 'colorcorrectionmatrix' => { 1 => 0x3e }, 'colorcreatoreffect' => { 330 => 0x532 }, 'colordataversion' => { 44 => 0x0, 45 => 0x0, 46 => 0x0, 48 => 0x0, 49 => 0x0, 50 => 0x0, 51 => 0x0, 52 => 0x0, 53 => 0x0, 54 => 0x0 }, 'coloreffect' => { 354 => 0x28 }, 'colorfilter' => { 118 => 0x17, 119 => 0x3017, 188 => 0x29, 196 => [0x38,0x4d,0x4f], 397 => 0x17 }, 'colorgain' => { 268 => 0x51 }, - 'colorgradeblending' => { 521 => 'ColorGradeBlending', 523 => 'ColorGradeBlending' }, - 'colorgradeglobalhue' => { 521 => 'ColorGradeGlobalHue', 523 => 'ColorGradeGlobalHue' }, - 'colorgradegloballum' => { 521 => 'ColorGradeGlobalLum', 523 => 'ColorGradeGlobalLum' }, - 'colorgradeglobalsat' => { 521 => 'ColorGradeGlobalSat', 523 => 'ColorGradeGlobalSat' }, - 'colorgradehighlightlum' => { 521 => 'ColorGradeHighlightLum', 523 => 'ColorGradeHighlightLum' }, - 'colorgrademidtonehue' => { 521 => 'ColorGradeMidtoneHue', 523 => 'ColorGradeMidtoneHue' }, - 'colorgrademidtonelum' => { 521 => 'ColorGradeMidtoneLum', 523 => 'ColorGradeMidtoneLum' }, - 'colorgrademidtonesat' => { 521 => 'ColorGradeMidtoneSat', 523 => 'ColorGradeMidtoneSat' }, - 'colorgradeshadowlum' => { 521 => 'ColorGradeShadowLum', 523 => 'ColorGradeShadowLum' }, + 'colorgradeblending' => { 523 => 'ColorGradeBlending', 525 => 'ColorGradeBlending' }, + 'colorgradeglobalhue' => { 523 => 'ColorGradeGlobalHue', 525 => 'ColorGradeGlobalHue' }, + 'colorgradegloballum' => { 523 => 'ColorGradeGlobalLum', 525 => 'ColorGradeGlobalLum' }, + 'colorgradeglobalsat' => { 523 => 'ColorGradeGlobalSat', 525 => 'ColorGradeGlobalSat' }, + 'colorgradehighlightlum' => { 523 => 'ColorGradeHighlightLum', 525 => 'ColorGradeHighlightLum' }, + 'colorgrademidtonehue' => { 523 => 'ColorGradeMidtoneHue', 525 => 'ColorGradeMidtoneHue' }, + 'colorgrademidtonelum' => { 523 => 'ColorGradeMidtoneLum', 525 => 'ColorGradeMidtoneLum' }, + 'colorgrademidtonesat' => { 523 => 'ColorGradeMidtoneSat', 525 => 'ColorGradeMidtoneSat' }, + 'colorgradeshadowlum' => { 523 => 'ColorGradeShadowLum', 525 => 'ColorGradeShadowLum' }, 'colorhue' => { 109 => 0x20900, 243 => 0x8d }, 'colorimetricreference' => { 125 => 0xc6bf }, - 'colorlabel' => { 526 => 'ColorLabel' }, - 'colormatrix' => { 68 => 0xa, 334 => 0x200, 335 => 0x1011, 429 => 0xa030 }, + 'colorlabel' => { 528 => 'ColorLabel' }, + 'colormatrix' => { 68 => 0xa, 334 => 0x200, 335 => 0x1011, 431 => 0xa030 }, 'colormatrix1' => { 125 => 0xc621, 399 => 0x106 }, 'colormatrix2' => { 125 => 0xc622, 338 => 0x200, 399 => 0x226 }, 'colormatrix3' => { 125 => 0xcd33 }, 'colormatrixa' => { 390 => 0x203 }, 'colormatrixa2' => { 390 => 0x21c }, - 'colormatrixadobergb' => { 429 => 0xa032 }, + 'colormatrixadobergb' => { 431 => 0xa032 }, 'colormatrixb' => { 390 => 0x204 }, 'colormatrixb2' => { 390 => 0x21d }, 'colormatrixnumber' => { 335 => 0x1019 }, - 'colormatrixsrgb' => { 429 => 0xa031 }, - 'colormode' => { 119 => 0x3015, 133 => 0x1210, 147 => 0x66, 188 => 0x28, 191 => 0x16, 193 => 0x101, 194 => 0x36, 196 => 0x7, 243 => 0x3, 291 => 0x4, 354 => 0x32, 432 => 0x2c, 456 => 0xb029, 538 => 'ColorMode' }, + 'colormatrixsrgb' => { 431 => 0xa031 }, + 'colormode' => { 119 => 0x3015, 133 => 0x1210, 147 => 0x66, 188 => 0x28, 191 => 0x16, 193 => 0x101, 194 => 0x36, 196 => 0x7, 243 => 0x3, 291 => 0x4, 354 => 0x32, 434 => 0x2c, 458 => 0xb029, 540 => 'ColorMode' }, 'colormoirereduction' => { 109 => 0x20670, 303 => 0x15 }, 'colormoirereductionmode' => { 303 => 0x5 }, 'colormoirereductionon' => { 109 => '0x20670.0' }, - 'colornoisereduction' => { 493 => 0x8029, 521 => 'ColorNoiseReduction', 523 => 'ColorNoiseReduction' }, - 'colornoisereductiondetail' => { 521 => 'ColorNoiseReductionDetail', 523 => 'ColorNoiseReductionDetail' }, + 'colornoisereduction' => { 495 => 0x8029, 523 => 'ColorNoiseReduction', 525 => 'ColorNoiseReduction' }, + 'colornoisereductiondetail' => { 523 => 'ColorNoiseReductionDetail', 525 => 'ColorNoiseReductionDetail' }, 'colornoisereductionintensity' => { 303 => 0x18 }, 'colornoisereductionsharpness' => { 303 => 0x1c }, - 'colornoisereductionsmoothness' => { 521 => 'ColorNoiseReductionSmoothness', 523 => 'ColorNoiseReductionSmoothness' }, + 'colornoisereductionsmoothness' => { 523 => 'ColorNoiseReductionSmoothness', 525 => 'ColorNoiseReductionSmoothness' }, 'colorplanes' => { 129 => 0x2 }, 'colorprofile' => { 188 => 0x33 }, 'colorprofilesettings' => { 330 => 0x539 }, 'colorrepresentation' => { 140 => 0x3c }, 'colorsaturationadj' => { 109 => 0x20305 }, 'colorsequence' => { 140 => 0x41 }, - 'colorspace' => { 55 => 0x3, 69 => 0xb4, 103 => 0x10b4, 125 => 0xa001, 142 => 0x3, 169 => 'ColorSpace', 189 => 0x2f, 190 => 0x25, 191 => 0x17, 243 => 0x1e, 330 => 0x507, 390 => 0x37, 429 => 0xa011, 432 => 0xb, 442 => 0x1b, 443 => 0x83, 444 => 0xe, 461 => 0x6, 527 => 'ColorSpace' }, + 'colorspace' => { 55 => 0x3, 69 => 0xb4, 103 => 0x10b4, 125 => 0xa001, 142 => 0x3, 169 => 'ColorSpace', 189 => 0x2f, 190 => 0x25, 191 => 0x17, 243 => 0x1e, 330 => 0x507, 390 => 0x37, 431 => 0xa011, 434 => 0xb, 444 => 0x1b, 445 => 0x83, 446 => 0xe, 463 => 0x6, 529 => 'ColorSpace' }, 'colorspace2' => { 68 => 0x9 }, 'colorspecapproximation' => { 142 => 0x2 }, 'colorspecdata' => { 142 => 0x3 }, @@ -1820,21 +1823,21 @@ my %tagLookup = ( 'colortempcustom1' => { 43 => 0x45 }, 'colortempcustom2' => { 43 => 0x4a }, 'colortempdaylight' => { 41 => 0x18, 42 => 0x27, 43 => 0x27, 44 => 0x9a, 45 => 0xd1, 46 => 0x72, 47 => 0x2b, 48 => 0x52, 51 => 0x6b, 52 => 0x84, 53 => 0x89, 54 => 0x8c, 390 => 0x53 }, - 'colortemperature' => { 1 => 0x2d, 7 => 0x73, 8 => [0x48,0x4e], 9 => 0xc0, 10 => 0x37, 11 => 0x62, 12 => 0x37, 13 => 0x7c, 14 => 0x73, 15 => 0x73, 16 => 0x77, 17 => 0x73, 18 => 0x7c, 19 => 0x58, 20 => 0x73, 21 => 0xc0, 22 => 0x7f, 23 => 0x7d, 24 => 0xc0, 25 => 0xc6, 26 => 0xc7, 27 => 0x135, 28 => 0x7b, 29 => 0x13a, 69 => 0xae, 79 => 0x9, 103 => 0x10ae, 133 => 0x1005, 145 => 0x846, 163 => 'ColorTemperature', 189 => [0x6e,0x49], 190 => 0x3f, 191 => [0x39,0x5e], 193 => 0x10b, 196 => [0x3c,0x4c,0x4e], 349 => 0x321, 390 => 0x50, 422 => 0x1308, 456 => 0xb021, 521 => 'Temperature', 523 => 'Temperature' }, - 'colortemperatureadj' => { 493 => 0x8013 }, + 'colortemperature' => { 1 => 0x2d, 7 => 0x73, 8 => [0x48,0x4e], 9 => 0xc0, 10 => 0x37, 11 => 0x62, 12 => 0x37, 13 => 0x7c, 14 => 0x73, 15 => 0x73, 16 => 0x77, 17 => 0x73, 18 => 0x7c, 19 => 0x58, 20 => 0x73, 21 => 0xc0, 22 => 0x7f, 23 => 0x7d, 24 => 0xc0, 25 => 0xc6, 26 => 0xc7, 27 => 0x135, 28 => 0x7b, 29 => 0x13a, 69 => 0xae, 79 => 0x9, 103 => 0x10ae, 133 => 0x1005, 145 => 0x846, 163 => 'ColorTemperature', 189 => [0x6e,0x49], 190 => 0x3f, 191 => [0x39,0x5e], 193 => 0x10b, 196 => [0x3c,0x4c,0x4e], 349 => 0x321, 390 => 0x50, 424 => 0x1308, 458 => 0xb021, 523 => 'Temperature', 525 => 'Temperature' }, + 'colortemperatureadj' => { 495 => 0x8013 }, 'colortemperatureauto' => { 243 => 0x4f }, 'colortemperaturebg' => { 335 => 0x1013 }, - 'colortemperaturecustom' => { 442 => 0xc, 443 => 0xb }, + 'colortemperaturecustom' => { 444 => 0xc, 445 => 0xb }, 'colortemperaturerg' => { 335 => 0x1014 }, - 'colortemperatureset' => { 442 => 0x7, 443 => 0x6 }, - 'colortemperaturesetting' => { 191 => 0x25, 444 => 0x17, 461 => 0xe }, + 'colortemperatureset' => { 444 => 0x7, 445 => 0x6 }, + 'colortemperaturesetting' => { 191 => 0x25, 446 => 0x17, 463 => 0xe }, 'colortempflash' => { 41 => 0x36, 42 => 0x57, 43 => 0x40, 44 => 0xb8, 45 => 0xef, 46 => 0x8b, 47 => 0x49, 48 => 0x70, 51 => 0x89, 52 => 0xa2, 53 => 0xa7, 54 => 0xaa, 390 => 0x5a }, 'colortempflashdata' => { 48 => 0x24a }, 'colortempfluorescent' => { 41 => 0x2c, 42 => 0x47, 43 => 0x3b, 44 => 0xae, 45 => 0xe5, 46 => 0x86, 47 => 0x3f, 48 => 0x66, 51 => 0x7f, 52 => 0x98, 53 => 0x9d, 54 => 0xa0 }, 'colortempfluorescentd' => { 390 => 0x57 }, 'colortempfluorescentn' => { 390 => 0x58 }, 'colortempfluorescentw' => { 390 => 0x59 }, - 'colortempkelvin' => { 41 => 0x31, 42 => 0x4f, 44 => 0xb3, 45 => 0xea, 47 => 0x44, 48 => 0x6b, 51 => 0x84, 52 => 0x9d, 53 => 0xa2, 54 => 0xa5, 354 => 0x44, 422 => 0x1307 }, + 'colortempkelvin' => { 41 => 0x31, 42 => 0x4f, 44 => 0xb3, 45 => 0xea, 47 => 0x44, 48 => 0x6b, 51 => 0x84, 52 => 0x9d, 53 => 0xa2, 54 => 0xa5, 354 => 0x44, 424 => 0x1307 }, 'colortempmeasured' => { 41 => 0xe, 42 => 0x17, 44 => 0x63, 45 => 0x77, 48 => 0x4d, 51 => 0x4d, 52 => 0x4d, 53 => 0x4d, 54 => 0x55 }, 'colortemppc1' => { 47 => 0x94, 48 => 0x75 }, 'colortemppc2' => { 47 => 0x99, 48 => 0x7a }, @@ -1913,42 +1916,42 @@ my %tagLookup = ( 'commanderinternalttlcompbuiltin' => { 318 => '20.1', 319 => '26.1' }, 'commanderinternalttlcompgroupa' => { 318 => '21.1', 319 => '27.1' }, 'commanderinternalttlcompgroupb' => { 318 => '22.1', 319 => '28.1' }, - 'comment' => { 0 => 0x2, 126 => 'Comment', 164 => 'Comment', 343 => 'Comment', 407 => "\xa9cmt", 409 => 'comment', 415 => "\xa9cmt" }, - 'compass' => { 425 => 0x4 }, - 'compatiblebrands' => { 409 => 'compatible_brands' }, - 'compatibleversion' => { 521 => 'CompatibleVersion', 523 => 'CompatibleVersion' }, - 'compilation' => { 407 => 'cpil' }, - 'compimageimagespersequence' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfImagesInSequences'] }, - 'compimagemaxexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfAll'] }, - 'compimagemaxexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfUsed'] }, - 'compimageminexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfAll'] }, - 'compimageminexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfUsed'] }, - 'compimagenumsequences' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfSequences'] }, - 'compimagesumexposureall' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfAll'] }, - 'compimagesumexposureused' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfUsed'] }, - 'compimagetotalexposureperiod' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesTotalExposurePeriod'] }, - 'compimagevalues' => { 528 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesValues'] }, - 'complianceprofile' => { 540 => 'complianceProfile' }, - 'componentsconfiguration' => { 125 => 0x9101, 169 => 'Components', 527 => 'ComponentsConfiguration' }, + 'comment' => { 0 => 0x2, 126 => 'Comment', 164 => 'Comment', 343 => 'Comment', 408 => "\xa9cmt", 410 => 'comment', 416 => "\xa9cmt" }, + 'compass' => { 427 => 0x4 }, + 'compatiblebrands' => { 410 => 'compatible_brands' }, + 'compatibleversion' => { 523 => 'CompatibleVersion', 525 => 'CompatibleVersion' }, + 'compilation' => { 408 => 'cpil' }, + 'compimageimagespersequence' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfImagesInSequences'] }, + 'compimagemaxexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfAll'] }, + 'compimagemaxexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMaxExposureTimesOfUsed'] }, + 'compimageminexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfAll'] }, + 'compimageminexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesMinExposureTimesOfUsed'] }, + 'compimagenumsequences' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesNumberOfSequences'] }, + 'compimagesumexposureall' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfAll'] }, + 'compimagesumexposureused' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesSumOfExposureTimesOfUsed'] }, + 'compimagetotalexposureperiod' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesTotalExposurePeriod'] }, + 'compimagevalues' => { 530 => [\'CompositeImageExposureTimes','CompositeImageExposureTimesValues'] }, + 'complianceprofile' => { 542 => 'complianceProfile' }, + 'componentsconfiguration' => { 125 => 0x9101, 169 => 'Components', 529 => 'ComponentsConfiguration' }, 'componentversion' => { 103 => 0x80c }, - 'composer' => { 186 => 'WM/Composer', 407 => ["\xa9com","\xa9wrt"], 415 => ["\xa9com","\xa9wrt"], 550 => 'composer' }, - 'composerid' => { 407 => 'cmID' }, - 'composerkeywords' => { 415 => "\xa9cok" }, - 'compositeimage' => { 125 => 0xa460, 528 => 'CompositeImage' }, - 'compositeimagecount' => { 125 => 0xa461, 528 => 'CompositeImageCount' }, - 'compositeimageexposuretimes' => { 125 => 0xa462, 528 => 'CompositeImageExposureTimes' }, - 'composition' => { 509 => 'Composition' }, + 'composer' => { 186 => 'WM/Composer', 408 => ["\xa9com","\xa9wrt"], 416 => ["\xa9com","\xa9wrt"], 552 => 'composer' }, + 'composerid' => { 408 => 'cmID' }, + 'composerkeywords' => { 416 => "\xa9cok" }, + 'compositeimage' => { 125 => 0xa460, 530 => 'CompositeImage' }, + 'compositeimagecount' => { 125 => 0xa461, 530 => 'CompositeImageCount' }, + 'compositeimageexposuretimes' => { 125 => 0xa462, 530 => 'CompositeImageExposureTimes' }, + 'composition' => { 511 => 'Composition' }, 'compositionadjust' => { 388 => '0.1' }, 'compositionadjustrotation' => { 388 => 0x7 }, 'compositionadjustx' => { 388 => 0x5 }, 'compositionadjusty' => { 388 => 0x6 }, - 'compressedbitsperpixel' => { 125 => 0x9102, 527 => 'CompressedBitsPerPixel' }, + 'compressedbitsperpixel' => { 125 => 0x9102, 529 => 'CompressedBitsPerPixel' }, 'compressedimagesize' => { 193 => 0x40, 335 => 0x40 }, - 'compression' => { 125 => 0x103, 359 => 0xb, 546 => 'Compression' }, + 'compression' => { 125 => 0x103, 359 => 0xb, 548 => 'Compression' }, 'compressionfactor' => { 330 => 0x50d }, 'compressionformat' => { 68 => 0x4 }, 'compressionratio' => { 169 => 'Compression', 335 => 0x1034 }, - 'compressorversion' => { 415 => 'CNCV' }, + 'compressorversion' => { 416 => 'CNCV' }, 'condadobvfactor' => { 145 => 0xf3e }, 'condadodaybvthresh' => { 145 => 0xf3c }, 'condadodayoffsets' => { 145 => 0xf42 }, @@ -1958,41 +1961,41 @@ my %tagLookup = ( 'condadoneurange' => { 145 => 0xf3d }, 'condadotunoffsets' => { 145 => 0xf43 }, 'condadotunthresh' => { 145 => 0xf40 }, - 'conductor' => { 186 => 'WM/Conductor', 407 => "\xa9con" }, - 'confidence' => { 504 => 'Confidence' }, - 'confidencelevel' => { 517 => 'ConfidenceLevel' }, - 'confidencemime' => { 504 => 'ConfidenceMime' }, + 'conductor' => { 186 => 'WM/Conductor', 408 => "\xa9con" }, + 'confidence' => { 506 => 'Confidence' }, + 'confidencelevel' => { 519 => 'ConfidenceLevel' }, + 'confidencemime' => { 506 => 'ConfidenceMime' }, 'constrainedcropheight' => { 114 => 0x266, 401 => 0xd6 }, 'constrainedcropwidth' => { 114 => 0x262, 401 => 0xd5 }, 'contact' => { 138 => 0x76 }, - 'contactinfo' => { 521 => 'ContactInfo', 523 => 'ContactInfo', 539 => 'contactInfo' }, - 'container' => { 497 => 'Container' }, - 'containerdirectory' => { 497 => [\'Container','ContainerDirectory'], 502 => 'Directory' }, - 'containerdirectoryitem' => { 497 => [\'Container','ContainerDirectoryItem'] }, - 'containerdirectoryitemdatauri' => { 497 => [\'Container','ContainerDirectoryItemDataURI'] }, - 'containerdirectoryitemlength' => { 497 => [\'Container','ContainerDirectoryItemLength'] }, - 'containerdirectoryitemmime' => { 497 => [\'Container','ContainerDirectoryItemMime'] }, - 'containerdirectoryitempadding' => { 497 => [\'Container','ContainerDirectoryItemPadding'] }, - 'containerformat' => { 535 => 'ContainerFormat' }, - 'containerformatidentifier' => { 535 => [\'ContainerFormat','ContainerFormatIdentifier'] }, - 'containerformatname' => { 535 => [\'ContainerFormat','ContainerFormatName'] }, - 'contentcreatedate' => { 407 => "\xa9day", 415 => ['@day',"\xa9day"] }, + 'contactinfo' => { 523 => 'ContactInfo', 525 => 'ContactInfo', 541 => 'contactInfo' }, + 'container' => { 499 => 'Container' }, + 'containerdirectory' => { 499 => [\'Container','ContainerDirectory'], 504 => 'Directory' }, + 'containerdirectoryitem' => { 499 => [\'Container','ContainerDirectoryItem'] }, + 'containerdirectoryitemdatauri' => { 499 => [\'Container','ContainerDirectoryItemDataURI'] }, + 'containerdirectoryitemlength' => { 499 => [\'Container','ContainerDirectoryItemLength'] }, + 'containerdirectoryitemmime' => { 499 => [\'Container','ContainerDirectoryItemMime'] }, + 'containerdirectoryitempadding' => { 499 => [\'Container','ContainerDirectoryItemPadding'] }, + 'containerformat' => { 537 => 'ContainerFormat' }, + 'containerformatidentifier' => { 537 => [\'ContainerFormat','ContainerFormatIdentifier'] }, + 'containerformatname' => { 537 => [\'ContainerFormat','ContainerFormatName'] }, + 'contentcreatedate' => { 408 => "\xa9day", 416 => ['@day',"\xa9day"] }, 'contentdistributor' => { 186 => 'WM/ContentDistributor' }, - 'contentdistributorid' => { 415 => 'cdis' }, - 'contentid' => { 415 => 'ccid' }, - 'contentidentifier' => { 1 => 0x11, 409 => 'content.identifier' }, + 'contentdistributorid' => { 416 => 'cdis' }, + 'contentid' => { 416 => 'ccid' }, + 'contentidentifier' => { 1 => 0x11, 410 => 'content.identifier' }, 'contentlocationcode' => { 138 => 0x1a }, 'contentlocationname' => { 138 => 0x1b }, - 'contenttype' => { 540 => 'contentType' }, + 'contenttype' => { 542 => 'contentType' }, 'continuousbracketing' => { 191 => 0x20 }, 'continuousdrive' => { 37 => 0x5 }, 'continuousmodedisplay' => { 325 => 0x55, 326 => 0x51, 327 => 0x51, 328 => 0x51 }, 'continuousmodeliveview' => { 323 => '77.2' }, 'continuousshootingspeed' => { 90 => 0x610 }, 'continuousshotlimit' => { 90 => 0x611 }, - 'contrast' => { 10 => 0x73, 12 => 0x75, 37 => 0xd, 118 => 0xc, 119 => [0x3012,0x20], 125 => [0xa408,0xfe54], 133 => [0x1004,0x1006], 163 => 'Contrast', 183 => 'Contrast', 188 => 0x20, 189 => 0x31, 190 => 0x27, 191 => 0x19, 196 => 0x2, 260 => 0x33, 261 => 0x37, 262 => 0x3f, 335 => 0x1029, 354 => 0x39, 356 => 0x300a, 390 => 0x20, 397 => 0xc, 409 => 'player.movie.visual.contrast', 416 => 0x24, 418 => 0x52, 422 => 0x1012, 432 => 0xd, 442 => 0x1d, 443 => 0x1a, 456 => 0x2004, 521 => 'Contrast', 523 => 'Contrast', 527 => 'Contrast' }, - 'contrast2012' => { 521 => 'Contrast2012', 523 => 'Contrast2012' }, - 'contrastadj' => { 109 => 0x20303, 114 => 0x115, 305 => 0x2c, 493 => 0x8017 }, + 'contrast' => { 10 => 0x73, 12 => 0x75, 37 => 0xd, 118 => 0xc, 119 => [0x3012,0x20], 125 => [0xa408,0xfe54], 133 => [0x1004,0x1006], 163 => 'Contrast', 183 => 'Contrast', 188 => 0x20, 189 => 0x31, 190 => 0x27, 191 => 0x19, 196 => 0x2, 260 => 0x33, 261 => 0x37, 262 => 0x3f, 335 => 0x1029, 354 => 0x39, 356 => 0x300a, 390 => 0x20, 397 => 0xc, 410 => 'player.movie.visual.contrast', 418 => 0x24, 420 => 0x52, 424 => 0x1012, 434 => 0xd, 444 => 0x1d, 445 => 0x1a, 458 => 0x2004, 523 => 'Contrast', 525 => 'Contrast', 529 => 'Contrast' }, + 'contrast2012' => { 523 => 'Contrast2012', 525 => 'Contrast2012' }, + 'contrastadj' => { 109 => 0x20303, 114 => 0x115, 305 => 0x2c, 495 => 0x8017 }, 'contrastauto' => { 76 => 0x90 }, 'contrastcurve' => { 243 => 0x8c }, 'contrastdetectaf' => { 200 => 0x4 }, @@ -2006,40 +2009,40 @@ my %tagLookup = ( 'contrastmonochrome' => { 19 => 0xed, 75 => 0x78, 76 => 0x78 }, 'contrastneutral' => { 19 => 0xeb, 75 => 0x48, 76 => 0x48 }, 'contrastportrait' => { 19 => 0xe9, 75 => 0x18, 76 => 0x18 }, - 'contrastsetting' => { 330 => 0x505, 338 => 0x1012, 444 => 0x10, 461 => 0x8 }, + 'contrastsetting' => { 330 => 0x505, 338 => 0x1012, 446 => 0x10, 463 => 0x8 }, 'contrastshadow' => { 390 => 0x6e }, 'contraststandard' => { 19 => 0xe8, 75 => 0x0, 76 => 0x0 }, 'contrastuserdef1' => { 19 => 0xee, 75 => 0x90, 76 => 0xa8 }, 'contrastuserdef2' => { 19 => 0xef, 75 => 0xa8, 76 => 0xc0 }, 'contrastuserdef3' => { 19 => 0xf0, 75 => 0xc0, 76 => 0xd8 }, - 'contributedmedia' => { 550 => 'contributedMedia' }, - 'contributedmediaduration' => { 550 => [\'contributedMedia','contributedMediaDuration'] }, - 'contributedmediadurationscale' => { 550 => [\'contributedMedia','contributedMediaDurationScale'] }, - 'contributedmediadurationvalue' => { 550 => [\'contributedMedia','contributedMediaDurationValue'] }, - 'contributedmediamanaged' => { 550 => [\'contributedMedia','contributedMediaManaged'] }, - 'contributedmediapath' => { 550 => [\'contributedMedia','contributedMediaPath'] }, - 'contributedmediastarttime' => { 550 => [\'contributedMedia','contributedMediaStartTime'] }, - 'contributedmediastarttimescale' => { 550 => [\'contributedMedia','contributedMediaStartTimeScale'] }, - 'contributedmediastarttimevalue' => { 550 => [\'contributedMedia','contributedMediaStartTimeValue'] }, - 'contributedmediatrack' => { 550 => [\'contributedMedia','contributedMediaTrack'] }, - 'contributedmediawebstatement' => { 550 => [\'contributedMedia','contributedMediaWebStatement'] }, - 'contributor' => { 524 => 'contributor', 535 => 'Contributor' }, - 'contributoridentifier' => { 535 => [\'Contributor','ContributorIdentifier'] }, - 'contributorname' => { 535 => [\'Contributor','ContributorName'] }, - 'contributorrole' => { 535 => [\'Contributor','ContributorRole'] }, + 'contributedmedia' => { 552 => 'contributedMedia' }, + 'contributedmediaduration' => { 552 => [\'contributedMedia','contributedMediaDuration'] }, + 'contributedmediadurationscale' => { 552 => [\'contributedMedia','contributedMediaDurationScale'] }, + 'contributedmediadurationvalue' => { 552 => [\'contributedMedia','contributedMediaDurationValue'] }, + 'contributedmediamanaged' => { 552 => [\'contributedMedia','contributedMediaManaged'] }, + 'contributedmediapath' => { 552 => [\'contributedMedia','contributedMediaPath'] }, + 'contributedmediastarttime' => { 552 => [\'contributedMedia','contributedMediaStartTime'] }, + 'contributedmediastarttimescale' => { 552 => [\'contributedMedia','contributedMediaStartTimeScale'] }, + 'contributedmediastarttimevalue' => { 552 => [\'contributedMedia','contributedMediaStartTimeValue'] }, + 'contributedmediatrack' => { 552 => [\'contributedMedia','contributedMediaTrack'] }, + 'contributedmediawebstatement' => { 552 => [\'contributedMedia','contributedMediaWebStatement'] }, + 'contributor' => { 526 => 'contributor', 537 => 'Contributor' }, + 'contributoridentifier' => { 537 => [\'Contributor','ContributorIdentifier'] }, + 'contributorname' => { 537 => [\'Contributor','ContributorName'] }, + 'contributorrole' => { 537 => [\'Contributor','ContributorRole'] }, 'contributors' => { 164 => 'Contributors' }, 'controldialset' => { 191 => 0x46 }, - 'controlledvocabularyterm' => { 535 => 'CVterm' }, + 'controlledvocabularyterm' => { 537 => 'CVterm' }, 'controllerboardversion' => { 349 => 0x332 }, 'controlmode' => { 82 => 0x12 }, 'controlringresponse' => { 325 => 0x1cf, 326 => 0x1d5, 327 => 0x1d5, 328 => 0x1ed }, 'controlringrotation' => { 90 => 0x712 }, 'conversionlens' => { 331 => 0x403, 354 => 0x35 }, - 'converter' => { 125 => 0xfe4d, 291 => 0xb, 521 => 'Converter', 523 => 'Converter' }, - 'converttograyscale' => { 521 => 'ConvertToGrayscale', 523 => 'ConvertToGrayscale' }, - 'cookingequipment' => { 542 => 'cookingEquipment' }, - 'cookingmethod' => { 542 => 'cookingMethod' }, - 'copyright' => { 0 => 0x3, 125 => 0x8298, 164 => 'Copyright', 343 => 'Copyright', 359 => 0x8298, 390 => 0x22f, 406 => 'Copyright', 407 => ['cprt',"\xa9cpy"], 409 => 'copyright', 415 => ['cprt',"\xa9cpy"], 521 => 'Copyright', 523 => 'Copyright', 537 => 'Copyright', 543 => 'copyright', 546 => 'Copyright', 550 => 'copyright' }, + 'converter' => { 125 => 0xfe4d, 291 => 0xb, 523 => 'Converter', 525 => 'Converter' }, + 'converttograyscale' => { 523 => 'ConvertToGrayscale', 525 => 'ConvertToGrayscale' }, + 'cookingequipment' => { 544 => 'cookingEquipment' }, + 'cookingmethod' => { 544 => 'cookingMethod' }, + 'copyright' => { 0 => 0x3, 125 => 0x8298, 164 => 'Copyright', 343 => 'Copyright', 359 => 0x8298, 390 => 0x22f, 406 => 'Copyright', 408 => ['cprt',"\xa9cpy"], 410 => 'copyright', 416 => ['cprt',"\xa9cpy"], 523 => 'Copyright', 525 => 'Copyright', 539 => 'Copyright', 545 => 'copyright', 548 => 'Copyright', 552 => 'copyright' }, 'copyrightflag' => { 404 => 0x40a }, 'copyrightnotice' => { 138 => 0x74 }, 'copyrightowner' => { 340 => 'CopyrightOwner' }, @@ -2048,70 +2051,70 @@ my %tagLookup = ( 'copyrightownername' => { 340 => [\'CopyrightOwner','CopyrightOwnerCopyrightOwnerName'] }, 'copyrightregistrationnumber' => { 340 => 'CopyrightRegistrationNumber' }, 'copyrightstatus' => { 340 => 'CopyrightStatus' }, - 'copyrightyear' => { 535 => 'CopyrightYear', 540 => 'copyrightYear' }, + 'copyrightyear' => { 537 => 'CopyrightYear', 542 => 'copyrightYear' }, 'coringfilter' => { 334 => 0x310, 335 => 0x102d, 338 => 0x310 }, 'coringvalues' => { 334 => 0x311, 338 => 0x311 }, - 'corporateentity' => { 540 => 'corporateEntity' }, + 'corporateentity' => { 542 => 'corporateEntity' }, 'correctionalreadyapplied' => { 344 => 'CorrectionAlreadyApplied' }, 'correlatedcolortemp' => { 353 => 0x35b }, - 'country' => { 168 => 'Country', 354 => 0x69, 538 => 'Country' }, + 'country' => { 168 => 'Country', 354 => 0x69, 540 => 'Country' }, 'country-primarylocationcode' => { 138 => 0x64 }, 'country-primarylocationname' => { 138 => 0x65 }, - 'countrycode' => { 242 => 0x5, 402 => 'CountryCode', 534 => 'CountryCode' }, - 'course' => { 542 => 'course' }, - 'coverage' => { 524 => 'coverage' }, - 'coverart' => { 407 => 'covr' }, - 'coverdate' => { 540 => 'coverDate' }, - 'coverdisplaydate' => { 540 => 'coverDisplayDate' }, - 'coveruri' => { 415 => 'cvru' }, + 'countrycode' => { 242 => 0x5, 402 => 'CountryCode', 536 => 'CountryCode' }, + 'course' => { 544 => 'course' }, + 'coverage' => { 526 => 'coverage' }, + 'coverart' => { 408 => 'covr' }, + 'coverdate' => { 542 => 'coverDate' }, + 'coverdisplaydate' => { 542 => 'coverDisplayDate' }, + 'coveruri' => { 416 => 'cvru' }, 'cpufirmwareversion' => { 390 => 0x28 }, - 'crc32' => { 525 => 'crc32' }, - 'createdate' => { 125 => 0x9004, 164 => 'CreateDate', 339 => 'CreationDate', 343 => 'create-date', 406 => 'CreationDate', 412 => 0x1, 548 => 'CreateDate' }, - 'creationdate' => { 409 => 'creationdate', 537 => 'CreationDate', 540 => 'creationDate' }, - 'creationtime' => { 343 => 'Creation Time', 409 => 'creation_time' }, - 'creativestyle' => { 442 => 0x1a, 443 => 0x18, 453 => 0x41, 456 => 0xb020, 488 => 0x4a }, - 'creativestylesetting' => { 444 => 0xf, 461 => 0x7 }, - 'creativestylewaschanged' => { 493 => 0x8001 }, - 'creator' => { 339 => 'Creator', 406 => 'Creator', 524 => 'creator', 535 => 'Creator', 537 => 'Creator' }, - 'creatoraddress' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrExtadr'] }, + 'crc32' => { 527 => 'crc32' }, + 'createdate' => { 125 => 0x9004, 164 => 'CreateDate', 339 => 'CreationDate', 343 => 'create-date', 406 => 'CreationDate', 413 => 0x1, 550 => 'CreateDate' }, + 'creationdate' => { 410 => 'creationdate', 539 => 'CreationDate', 542 => 'creationDate' }, + 'creationtime' => { 343 => 'Creation Time', 410 => 'creation_time' }, + 'creativestyle' => { 444 => 0x1a, 445 => 0x18, 455 => 0x41, 458 => 0xb020, 490 => 0x4a }, + 'creativestylesetting' => { 446 => 0xf, 463 => 0x7 }, + 'creativestylewaschanged' => { 495 => 0x8001 }, + 'creator' => { 339 => 'Creator', 406 => 'Creator', 526 => 'creator', 537 => 'Creator', 539 => 'Creator' }, + 'creatoraddress' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrExtadr'] }, 'creatorappid' => { 185 => 'CreatorAppId' }, - 'creatorcity' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCity'] }, - 'creatorcontactinfo' => { 534 => 'CreatorContactInfo' }, - 'creatorcountry' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCtry'] }, - 'creatoridentifier' => { 535 => [\'Creator','CreatorIdentifier'] }, + 'creatorcity' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCity'] }, + 'creatorcontactinfo' => { 536 => 'CreatorContactInfo' }, + 'creatorcountry' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrCtry'] }, + 'creatoridentifier' => { 537 => [\'Creator','CreatorIdentifier'] }, 'creatoridentity' => { 402 => 'CreatorIdentity' }, - 'creatorname' => { 535 => [\'Creator','CreatorName'] }, + 'creatorname' => { 537 => [\'Creator','CreatorName'] }, 'creatoropenwithuioptions' => { 185 => 'CreatorOpenWithUIOptions' }, - 'creatorpostalcode' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrPcode'] }, - 'creatorregion' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiAdrRegion'] }, - 'creatorrole' => { 535 => [\'Creator','CreatorRole'] }, - 'creatortool' => { 548 => 'CreatorTool' }, - 'creatorworkemail' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiEmailWork'] }, - 'creatorworktelephone' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiTelWork'] }, - 'creatorworkurl' => { 534 => [\'CreatorContactInfo','CreatorContactInfoCiUrlWork'] }, - 'credit' => { 138 => 0x6e, 538 => 'Credit' }, - 'creditline' => { 543 => 'creditLine' }, - 'creditlinereq' => { 553 => 'CreditLineReq' }, + 'creatorpostalcode' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrPcode'] }, + 'creatorregion' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiAdrRegion'] }, + 'creatorrole' => { 537 => [\'Creator','CreatorRole'] }, + 'creatortool' => { 550 => 'CreatorTool' }, + 'creatorworkemail' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiEmailWork'] }, + 'creatorworktelephone' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiTelWork'] }, + 'creatorworkurl' => { 536 => [\'CreatorContactInfo','CreatorContactInfoCiUrlWork'] }, + 'credit' => { 138 => 0x6e, 540 => 'Credit' }, + 'creditline' => { 545 => 'creditLine' }, + 'creditlinereq' => { 555 => 'CreditLineReq' }, 'creditlinerequired' => { 340 => 'CreditLineRequired' }, 'cropactive' => { 107 => 0x0, 114 => 0x244 }, - 'cropangle' => { 107 => 0x8, 521 => 'CropAngle', 523 => 'CropAngle' }, - 'croparea' => { 243 => 0x45, 493 => 0x9011 }, + 'cropangle' => { 107 => 0x8, 523 => 'CropAngle', 525 => 'CropAngle' }, + 'croparea' => { 243 => 0x45, 495 => 0x9011 }, 'cropaspectratio' => { 109 => 0x30101, 114 => 0x260 }, 'cropaspectratiocustom' => { 109 => 0x30102 }, - 'cropbottom' => { 129 => 0x9, 297 => 0x36, 359 => 0x31, 401 => 0xdc, 521 => 'CropBottom', 523 => 'CropBottom' }, + 'cropbottom' => { 129 => 0x9, 297 => 0x36, 359 => 0x31, 401 => 0xdc, 523 => 'CropBottom', 525 => 'CropBottom' }, 'cropbottommargin' => { 57 => 0x3 }, 'cropcircleactive' => { 115 => 0xd6 }, 'cropcircleradius' => { 115 => 0xd9 }, 'cropcirclex' => { 115 => 0xd7 }, 'cropcircley' => { 115 => 0xd8 }, - 'cropconstraintowarp' => { 521 => 'CropConstrainToWarp', 523 => 'CropConstrainToWarp' }, + 'cropconstraintowarp' => { 523 => 'CropConstrainToWarp', 525 => 'CropConstrainToWarp' }, 'cropflag' => { 133 => 0x1051 }, - 'croph' => { 514 => 'CropH' }, - 'cropheight' => { 107 => 0x6, 114 => 0x24c, 334 => 0x615, 338 => 0x615, 521 => 'CropHeight', 523 => 'CropHeight' }, + 'croph' => { 516 => 'CropH' }, + 'cropheight' => { 107 => 0x6, 114 => 0x24c, 334 => 0x615, 338 => 0x615, 523 => 'CropHeight', 525 => 'CropHeight' }, 'crophispeed' => { 243 => 0x1b }, - 'cropleft' => { 114 => 0x246, 129 => 0x6, 297 => 0x1e, 334 => 0x612, 338 => 0x612, 359 => 0x30, 401 => 0xd9, 521 => 'CropLeft', 523 => 'CropLeft' }, + 'cropleft' => { 114 => 0x246, 129 => 0x6, 297 => 0x1e, 334 => 0x612, 338 => 0x612, 359 => 0x30, 401 => 0xd9, 523 => 'CropLeft', 525 => 'CropLeft' }, 'cropleftmargin' => { 57 => 0x0 }, - 'cropmode' => { 133 => 0x104d, 422 => 0x1018 }, + 'cropmode' => { 133 => 0x104d, 424 => 0x1018 }, 'croporiginalheight' => { 107 => 0xb }, 'croporiginalwidth' => { 107 => 0xa }, 'cropoutputheight' => { 297 => 0xce }, @@ -2121,16 +2124,16 @@ my %tagLookup = ( 'cropoutputscale' => { 297 => 0xbe }, 'cropoutputwidth' => { 297 => 0xc6 }, 'cropoutputwidthinches' => { 297 => 0x8e }, - 'croppedareaimageheightpixels' => { 507 => 'CroppedAreaImageHeightPixels', 508 => 'CroppedAreaImageHeightPixels' }, - 'croppedareaimagewidthpixels' => { 507 => 'CroppedAreaImageWidthPixels', 508 => 'CroppedAreaImageWidthPixels' }, - 'croppedarealeftpixels' => { 507 => 'CroppedAreaLeftPixels', 508 => 'CroppedAreaLeftPixels' }, - 'croppedareatoppixels' => { 507 => 'CroppedAreaTopPixels', 508 => 'CroppedAreaTopPixels' }, - 'croppedimageheight' => { 5 => 0x2, 422 => 0x1604 }, + 'croppedareaimageheightpixels' => { 509 => 'CroppedAreaImageHeightPixels', 510 => 'CroppedAreaImageHeightPixels' }, + 'croppedareaimagewidthpixels' => { 509 => 'CroppedAreaImageWidthPixels', 510 => 'CroppedAreaImageWidthPixels' }, + 'croppedarealeftpixels' => { 509 => 'CroppedAreaLeftPixels', 510 => 'CroppedAreaLeftPixels' }, + 'croppedareatoppixels' => { 509 => 'CroppedAreaTopPixels', 510 => 'CroppedAreaTopPixels' }, + 'croppedimageheight' => { 5 => 0x2, 424 => 0x1604 }, 'croppedimageleft' => { 5 => 0x3 }, 'croppedimagetop' => { 5 => 0x4 }, - 'croppedimagewidth' => { 5 => 0x1, 422 => 0x1603 }, - 'cropping' => { 493 => 0x9010 }, - 'cropright' => { 129 => 0x8, 297 => 0x2e, 359 => 0x32, 401 => 0xdb, 521 => 'CropRight', 523 => 'CropRight' }, + 'croppedimagewidth' => { 5 => 0x1, 424 => 0x1603 }, + 'cropping' => { 495 => 0x9010 }, + 'cropright' => { 129 => 0x8, 297 => 0x2e, 359 => 0x32, 401 => 0xdb, 523 => 'CropRight', 525 => 'CropRight' }, 'croprightmargin' => { 57 => 0x1 }, 'croprotatedoriginalheight' => { 107 => 0x2 }, 'croprotatedoriginalwidth' => { 107 => 0x1 }, @@ -2138,31 +2141,31 @@ my %tagLookup = ( 'cropscaledresolution' => { 297 => 0x9e }, 'cropsize' => { 133 => 0x1053 }, 'cropsourceresolution' => { 297 => 0xae }, - 'croptop' => { 114 => 0x248, 129 => 0x7, 297 => 0x26, 334 => 0x613, 338 => 0x613, 359 => 0x2f, 401 => 0xda, 521 => 'CropTop', 523 => 'CropTop' }, + 'croptop' => { 114 => 0x248, 129 => 0x7, 297 => 0x26, 334 => 0x613, 338 => 0x613, 359 => 0x2f, 401 => 0xda, 523 => 'CropTop', 525 => 'CropTop' }, 'croptopleft' => { 133 => 0x1052 }, 'croptopmargin' => { 57 => 0x2 }, - 'cropunit' => { 521 => 'CropUnit', 523 => 'CropUnit' }, - 'cropunits' => { 521 => 'CropUnits', 523 => 'CropUnits' }, - 'cropw' => { 514 => 'CropW' }, - 'cropwidth' => { 107 => 0x5, 114 => 0x24a, 334 => 0x614, 338 => 0x614, 521 => 'CropWidth', 523 => 'CropWidth' }, - 'cropx' => { 107 => 0x3, 514 => 'CropX' }, - 'cropy' => { 107 => 0x4, 514 => 'CropY' }, + 'cropunit' => { 523 => 'CropUnit', 525 => 'CropUnit' }, + 'cropunits' => { 523 => 'CropUnits', 525 => 'CropUnits' }, + 'cropw' => { 516 => 'CropW' }, + 'cropwidth' => { 107 => 0x5, 114 => 0x24a, 334 => 0x614, 338 => 0x614, 523 => 'CropWidth', 525 => 'CropWidth' }, + 'cropx' => { 107 => 0x3, 516 => 'CropX' }, + 'cropy' => { 107 => 0x4, 516 => 'CropY' }, 'crossprocess' => { 390 => 0x7b }, 'crossprocessparams' => { 390 => 0x235 }, - 'cuisine' => { 542 => 'cuisine' }, + 'cuisine' => { 544 => 'cuisine' }, 'currenticcprofile' => { 125 => 0xc691 }, 'currentpreprofilematrix' => { 125 => 0xc692 }, - 'currentversion' => { 493 => 0xd000 }, - 'curve0x' => { 514 => 'Curve0x' }, - 'curve0y' => { 514 => 'Curve0y' }, - 'curve1x' => { 514 => 'Curve1x' }, - 'curve1y' => { 514 => 'Curve1y' }, - 'curve2x' => { 514 => 'Curve2x' }, - 'curve2y' => { 514 => 'Curve2y' }, - 'curve3x' => { 514 => 'Curve3x' }, - 'curve3y' => { 514 => 'Curve3y' }, - 'curve4x' => { 514 => 'Curve4x' }, - 'curve4y' => { 514 => 'Curve4y' }, + 'currentversion' => { 495 => 0xd000 }, + 'curve0x' => { 516 => 'Curve0x' }, + 'curve0y' => { 516 => 'Curve0y' }, + 'curve1x' => { 516 => 'Curve1x' }, + 'curve1y' => { 516 => 'Curve1y' }, + 'curve2x' => { 516 => 'Curve2x' }, + 'curve2y' => { 516 => 'Curve2y' }, + 'curve3x' => { 516 => 'Curve3x' }, + 'curve3y' => { 516 => 'Curve3y' }, + 'curve4x' => { 516 => 'Curve4x' }, + 'curve4y' => { 516 => 'Curve4y' }, 'curves' => { 302 => 0x76a43201 }, 'custom1' => { 340 => 'Custom1' }, 'custom10' => { 340 => 'Custom10' }, @@ -2192,7 +2195,7 @@ my %tagLookup = ( 'customrawhighlightpoint' => { 115 => 0x51 }, 'customrawshadow' => { 115 => 0x85 }, 'customrawshadowpoint' => { 115 => 0x52 }, - 'customrendered' => { 125 => 0xa401, 198 => 0x6420, 527 => 'CustomRendered' }, + 'customrendered' => { 125 => 0xa401, 198 => 0x6420, 529 => 'CustomRendered' }, 'customsaturation' => { 115 => 0x4d, 330 => 0x503 }, 'customsettingsalldefault' => { 309 => '0.2', 318 => '0.2' }, 'customsettingsbank' => { 309 => '0.1', 310 => '0.1', 312 => '0.1', 313 => '0.1', 318 => '0.1', 322 => '0.2', 323 => '0.2', 326 => 0x1, 327 => 0x1, 328 => 0x1 }, @@ -2200,15 +2203,15 @@ my %tagLookup = ( 'customunsharpmaskfineness' => { 115 => 0xb8 }, 'customunsharpmaskstrength' => { 115 => 0xb6 }, 'customunsharpmaskthreshold' => { 115 => 0xba }, - 'customwb_rblevels' => { 461 => 0x1a }, - 'customwb_rgblevels' => { 443 => 0x8, 444 => 0x19 }, + 'customwb_rblevels' => { 463 => 0x1a }, + 'customwb_rgblevels' => { 445 => 0x8, 446 => 0x19 }, 'customwbbluelevel' => { 191 => 0x36 }, 'customwberror' => { 191 => 0x37 }, 'customwbgreenlevel' => { 191 => 0x35 }, 'customwbredlevel' => { 191 => 0x34 }, 'customwbsetting' => { 191 => 0x26 }, - 'cx' => { 415 => '_cx_' }, - 'cy' => { 415 => '_cy_' }, + 'cx' => { 416 => '_cx_' }, + 'cy' => { 416 => '_cy_' }, 'd-lightinghq' => { 302 => 0x2175eb78 }, 'd-lightinghqcolorboost' => { 298 => 0x2 }, 'd-lightinghqhighlight' => { 298 => 0x1 }, @@ -2217,10 +2220,10 @@ my %tagLookup = ( 'd-lightinghs' => { 302 => 0xce5554aa }, 'd-lightinghsadjustment' => { 299 => 0x0 }, 'd-lightinghscolorboost' => { 299 => 0x1 }, - 'd-rangeoptimizerhighlight' => { 493 => 0x8024 }, - 'd-rangeoptimizermode' => { 493 => 0x8022 }, - 'd-rangeoptimizershadow' => { 493 => 0x802d }, - 'd-rangeoptimizervalue' => { 493 => 0x8023 }, + 'd-rangeoptimizerhighlight' => { 495 => 0x8024 }, + 'd-rangeoptimizermode' => { 495 => 0x8022 }, + 'd-rangeoptimizershadow' => { 495 => 0x802d }, + 'd-rangeoptimizervalue' => { 495 => 0x8023 }, 'darkblacksegrows' => { 145 => 0x18d8 }, 'darkfocusenvironment' => { 354 => 0x8003 }, 'darkframecountfactor' => { 145 => 0xc85 }, @@ -2230,32 +2233,32 @@ my %tagLookup = ( 'datacompressionmethod' => { 140 => 0x6e }, 'dataimprint' => { 188 => 0x34 }, 'datamining' => { 340 => 'DataMining' }, - 'dataonscreen' => { 535 => 'DataOnScreen' }, - 'dataonscreenregion' => { 535 => [\'DataOnScreen','DataOnScreenRegion'] }, - 'dataonscreenregiond' => { 535 => [\'DataOnScreen','DataOnScreenRegionD'] }, - 'dataonscreenregionh' => { 535 => [\'DataOnScreen','DataOnScreenRegionH'] }, - 'dataonscreenregiontext' => { 535 => [\'DataOnScreen','DataOnScreenRegionText'] }, - 'dataonscreenregionunit' => { 535 => [\'DataOnScreen','DataOnScreenRegionUnit'] }, - 'dataonscreenregionw' => { 535 => [\'DataOnScreen','DataOnScreenRegionW'] }, - 'dataonscreenregionx' => { 535 => [\'DataOnScreen','DataOnScreenRegionX'] }, - 'dataonscreenregiony' => { 535 => [\'DataOnScreen','DataOnScreenRegionY'] }, + 'dataonscreen' => { 537 => 'DataOnScreen' }, + 'dataonscreenregion' => { 537 => [\'DataOnScreen','DataOnScreenRegion'] }, + 'dataonscreenregiond' => { 537 => [\'DataOnScreen','DataOnScreenRegionD'] }, + 'dataonscreenregionh' => { 537 => [\'DataOnScreen','DataOnScreenRegionH'] }, + 'dataonscreenregiontext' => { 537 => [\'DataOnScreen','DataOnScreenRegionText'] }, + 'dataonscreenregionunit' => { 537 => [\'DataOnScreen','DataOnScreenRegionUnit'] }, + 'dataonscreenregionw' => { 537 => [\'DataOnScreen','DataOnScreenRegionW'] }, + 'dataonscreenregionx' => { 537 => [\'DataOnScreen','DataOnScreenRegionX'] }, + 'dataonscreenregiony' => { 537 => [\'DataOnScreen','DataOnScreenRegionY'] }, 'datascaling' => { 390 => 0x3d }, - 'date' => { 390 => 0x6, 524 => 'date' }, + 'date' => { 390 => 0x6, 526 => 'date' }, 'dateacquired' => { 185 => 'DateAcquired', 186 => '{2CBAA8F5-D81F-47CA-B17A-F8D822300131} 100' }, - 'datecreated' => { 138 => 0x37, 538 => 'DateCreated' }, + 'datecreated' => { 138 => 0x37, 540 => 'DateCreated' }, 'datedisplayformat' => { 294 => 0x3 }, 'dateidentified' => { 124 => [\'Identification','IdentificationDateIdentified'] }, 'dateimprint' => { 314 => '4.2' }, - 'daterecieved' => { 540 => 'dateRecieved' }, + 'daterecieved' => { 542 => 'dateRecieved' }, 'datesent' => { 139 => 0x46 }, 'datestampmode' => { 69 => 0x1c, 243 => 0x9d }, - 'datetime' => { 515 => 'datetime', 546 => 'DateTime' }, - 'datetimedigitized' => { 527 => 'DateTimeDigitized' }, - 'datetimeoriginal' => { 106 => 0x0, 125 => 0x9003, 161 => 0x14, 164 => 'OriginalDate', 410 => 'IDIT', 415 => 'date', 416 => 0xb, 417 => 0x3b, 418 => 0x3e, 527 => 'DateTimeOriginal' }, + 'datetime' => { 517 => 'datetime', 548 => 'DateTime' }, + 'datetimedigitized' => { 529 => 'DateTimeDigitized' }, + 'datetimeoriginal' => { 106 => 0x0, 125 => 0x9003, 161 => 0x14, 164 => 'OriginalDate', 411 => 'IDIT', 416 => 'date', 418 => 0xb, 419 => 0x3b, 420 => 0x3e, 529 => 'DateTimeOriginal' }, 'datetimestamp' => { 147 => 0x64 }, 'datetimeutc' => { 330 => 0x908 }, 'daylightsavings' => { 83 => 0x3, 294 => 0x2 }, - 'dayofweek' => { 417 => 0x42, 418 => 0x4a }, + 'dayofweek' => { 419 => 0x42, 420 => 0x4a }, 'dccontinent' => { 124 => [\'dctermsLocation','dctermsLocationContinent'] }, 'dccoordinateprecision' => { 124 => [\'dctermsLocation','dctermsLocationCoordinatePrecision'] }, 'dccoordinateuncertaintyinmeters' => { 124 => [\'dctermsLocation','dctermsLocationCoordinateUncertaintyInMeters'] }, @@ -2305,173 +2308,173 @@ my %tagLookup = ( 'dcwaterbody' => { 124 => [\'dctermsLocation','dctermsLocationWaterBody'] }, 'declination' => { 172 => 'Declination' }, 'decposition' => { 188 => 0x32 }, - 'defaultautogray' => { 521 => 'DefaultAutoGray', 523 => 'DefaultAutoGray' }, - 'defaultautotone' => { 521 => 'DefaultAutoTone', 523 => 'DefaultAutoTone' }, + 'defaultautogray' => { 523 => 'DefaultAutoGray', 525 => 'DefaultAutoGray' }, + 'defaultautotone' => { 523 => 'DefaultAutoTone', 525 => 'DefaultAutoTone' }, 'defaultblackrender' => { 125 => 0xc7a6 }, 'defaultcroporigin' => { 125 => 0xc61f }, 'defaultcropsize' => { 125 => 0xc620 }, 'defaulteraseoption' => { 90 => 0x813 }, 'defaultscale' => { 125 => 0xc61e }, - 'defaultsspecifictoiso' => { 521 => 'DefaultsSpecificToISO', 523 => 'DefaultsSpecificToISO' }, - 'defaultsspecifictoserial' => { 521 => 'DefaultsSpecificToSerial', 523 => 'DefaultsSpecificToSerial' }, + 'defaultsspecifictoiso' => { 523 => 'DefaultsSpecificToISO', 525 => 'DefaultsSpecificToISO' }, + 'defaultsspecifictoserial' => { 523 => 'DefaultsSpecificToSerial', 525 => 'DefaultsSpecificToSerial' }, 'defaultusercrop' => { 125 => 0xc7b5 }, 'defectisocode' => { 145 => 0x90f }, - 'defringe' => { 521 => 'Defringe', 523 => 'Defringe' }, - 'defringegreenamount' => { 521 => 'DefringeGreenAmount', 523 => 'DefringeGreenAmount' }, - 'defringegreenhuehi' => { 521 => 'DefringeGreenHueHi', 523 => 'DefringeGreenHueHi' }, - 'defringegreenhuelo' => { 521 => 'DefringeGreenHueLo', 523 => 'DefringeGreenHueLo' }, - 'defringepurpleamount' => { 521 => 'DefringePurpleAmount', 523 => 'DefringePurpleAmount' }, - 'defringepurplehuehi' => { 521 => 'DefringePurpleHueHi', 523 => 'DefringePurpleHueHi' }, - 'defringepurplehuelo' => { 521 => 'DefringePurpleHueLo', 523 => 'DefringePurpleHueLo' }, - 'dehaze' => { 521 => 'Dehaze', 523 => 'Dehaze' }, + 'defringe' => { 523 => 'Defringe', 525 => 'Defringe' }, + 'defringegreenamount' => { 523 => 'DefringeGreenAmount', 525 => 'DefringeGreenAmount' }, + 'defringegreenhuehi' => { 523 => 'DefringeGreenHueHi', 525 => 'DefringeGreenHueHi' }, + 'defringegreenhuelo' => { 523 => 'DefringeGreenHueLo', 525 => 'DefringeGreenHueLo' }, + 'defringepurpleamount' => { 523 => 'DefringePurpleAmount', 525 => 'DefringePurpleAmount' }, + 'defringepurplehuehi' => { 523 => 'DefringePurpleHueHi', 525 => 'DefringePurpleHueHi' }, + 'defringepurplehuelo' => { 523 => 'DefringePurpleHueLo', 525 => 'DefringePurpleHueLo' }, + 'dehaze' => { 523 => 'Dehaze', 525 => 'Dehaze' }, 'deletedimagecount' => { 243 => 0xa6, 273 => 0x6e }, - 'deprecatedon' => { 519 => 'deprecatedOn' }, - 'depthbasedcorrcorrectionactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'] }, - 'depthbasedcorrcorrectionamount' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'] }, - 'depthbasedcorrcorrectionsyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'] }, - 'depthbasedcorrections' => { 521 => 'DepthBasedCorrections', 523 => 'DepthBasedCorrections' }, - 'depthbasedcorrlocalcorrecteddepth' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'] }, - 'depthbasedcorrlocalcurverefinesaturation' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'] }, - 'depthbasedcorrmask' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'] }, - 'depthbasedcorrmaskalpha' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'] }, - 'depthbasedcorrmaskangle' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'] }, - 'depthbasedcorrmaskbottom' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'] }, - 'depthbasedcorrmaskcentervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'] }, - 'depthbasedcorrmaskcenterweight' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'depthbasedcorrmaskdabs' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'] }, - 'depthbasedcorrmaskfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'] }, - 'depthbasedcorrmaskflipped' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'] }, - 'depthbasedcorrmaskflow' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'] }, - 'depthbasedcorrmaskfullx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'] }, - 'depthbasedcorrmaskfully' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'] }, - 'depthbasedcorrmaskinputdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'] }, - 'depthbasedcorrmaskleft' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'] }, - 'depthbasedcorrmaskmaskactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'] }, - 'depthbasedcorrmaskmaskblendmode' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'depthbasedcorrmaskmaskdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'depthbasedcorrmaskmaskinverted' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'depthbasedcorrmaskmaskname' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'] }, - 'depthbasedcorrmaskmasks' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'] }, - 'depthbasedcorrmaskmasksalpha' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'depthbasedcorrmaskmasksangle' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'depthbasedcorrmaskmasksbottom' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'depthbasedcorrmaskmaskscentervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'depthbasedcorrmaskmaskscenterweight' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'depthbasedcorrmaskmasksdabs' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'depthbasedcorrmaskmasksfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'depthbasedcorrmaskmasksflipped' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'depthbasedcorrmaskmasksflow' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'depthbasedcorrmaskmasksfullx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'depthbasedcorrmaskmasksfully' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'depthbasedcorrmaskmasksinputdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'depthbasedcorrmaskmasksleft' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'depthbasedcorrmaskmasksmaskactive' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'depthbasedcorrmaskmasksmaskblendmode' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'depthbasedcorrmaskmasksmaskdigest' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'depthbasedcorrmaskmasksmaskinverted' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'depthbasedcorrmaskmasksmaskname' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'depthbasedcorrmaskmasksmasksubtype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'depthbasedcorrmaskmasksmasksyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'depthbasedcorrmaskmasksmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'depthbasedcorrmaskmasksmidpoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'depthbasedcorrmaskmasksorigin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'depthbasedcorrmaskmasksperimetervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'depthbasedcorrmaskmasksradius' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'depthbasedcorrmaskmasksreferencepoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'depthbasedcorrmaskmasksright' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'] }, - 'depthbasedcorrmaskmasksroundness' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'depthbasedcorrmaskmaskssizex' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'depthbasedcorrmaskmaskssizey' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'depthbasedcorrmaskmaskstop' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'] }, - 'depthbasedcorrmaskmasksubtype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'depthbasedcorrmaskmasksvalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'depthbasedcorrmaskmasksversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'depthbasedcorrmaskmaskswhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'depthbasedcorrmaskmaskswholeimagearea' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'depthbasedcorrmaskmasksx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'] }, - 'depthbasedcorrmaskmasksy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'] }, - 'depthbasedcorrmaskmasksyncid' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'depthbasedcorrmaskmaskszerox' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'depthbasedcorrmaskmaskszeroy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'depthbasedcorrmaskmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'depthbasedcorrmaskmidpoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'] }, - 'depthbasedcorrmaskorigin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'] }, - 'depthbasedcorrmaskperimetervalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'depthbasedcorrmaskradius' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'] }, - 'depthbasedcorrmaskrange' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'depthbasedcorrmaskrangeareamodels' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'depthbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'depthbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'depthbasedcorrmaskrangecoloramount' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'depthbasedcorrmaskrangedepthfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'depthbasedcorrmaskrangedepthmax' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'depthbasedcorrmaskrangedepthmin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'depthbasedcorrmaskrangeinvert' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'depthbasedcorrmaskrangelumfeather' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'depthbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'depthbasedcorrmaskrangelummax' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'depthbasedcorrmaskrangelummin' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'depthbasedcorrmaskrangelumrange' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'depthbasedcorrmaskrangesampletype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'depthbasedcorrmaskrangetype' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'depthbasedcorrmaskrangeversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'depthbasedcorrmaskreferencepoint' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'depthbasedcorrmaskright' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'] }, - 'depthbasedcorrmaskroundness' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'] }, - 'depthbasedcorrmasksizex' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'] }, - 'depthbasedcorrmasksizey' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'] }, - 'depthbasedcorrmasktop' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'] }, - 'depthbasedcorrmaskvalue' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'] }, - 'depthbasedcorrmaskversion' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'] }, - 'depthbasedcorrmaskwhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'] }, - 'depthbasedcorrmaskwholeimagearea' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'depthbasedcorrmaskx' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'] }, - 'depthbasedcorrmasky' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'] }, - 'depthbasedcorrmaskzerox' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'] }, - 'depthbasedcorrmaskzeroy' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'] }, - 'depthbasedcorrwhat' => { 521 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'], 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'] }, + 'deprecatedon' => { 521 => 'deprecatedOn' }, + 'depthbasedcorrcorrectionactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionActive'] }, + 'depthbasedcorrcorrectionamount' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionAmount'] }, + 'depthbasedcorrcorrectionsyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionSyncID'] }, + 'depthbasedcorrections' => { 523 => 'DepthBasedCorrections', 525 => 'DepthBasedCorrections' }, + 'depthbasedcorrlocalcorrecteddepth' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCorrectedDepth'] }, + 'depthbasedcorrlocalcurverefinesaturation' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsLocalCurveRefineSaturation'] }, + 'depthbasedcorrmask' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasks'] }, + 'depthbasedcorrmaskalpha' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAlpha'] }, + 'depthbasedcorrmaskangle' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksAngle'] }, + 'depthbasedcorrmaskbottom' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksBottom'] }, + 'depthbasedcorrmaskcentervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterValue'] }, + 'depthbasedcorrmaskcenterweight' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'depthbasedcorrmaskdabs' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksDabs'] }, + 'depthbasedcorrmaskfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFeather'] }, + 'depthbasedcorrmaskflipped' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlipped'] }, + 'depthbasedcorrmaskflow' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFlow'] }, + 'depthbasedcorrmaskfullx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullX'] }, + 'depthbasedcorrmaskfully' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksFullY'] }, + 'depthbasedcorrmaskinputdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksInputDigest'] }, + 'depthbasedcorrmaskleft' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksLeft'] }, + 'depthbasedcorrmaskmaskactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskActive'] }, + 'depthbasedcorrmaskmaskblendmode' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'depthbasedcorrmaskmaskdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'depthbasedcorrmaskmaskinverted' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'depthbasedcorrmaskmaskname' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskName'] }, + 'depthbasedcorrmaskmasks' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasks'] }, + 'depthbasedcorrmaskmasksalpha' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'depthbasedcorrmaskmasksangle' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'depthbasedcorrmaskmasksbottom' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'depthbasedcorrmaskmaskscentervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'depthbasedcorrmaskmaskscenterweight' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'depthbasedcorrmaskmasksdabs' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'depthbasedcorrmaskmasksfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'depthbasedcorrmaskmasksflipped' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'depthbasedcorrmaskmasksflow' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'depthbasedcorrmaskmasksfullx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'depthbasedcorrmaskmasksfully' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'depthbasedcorrmaskmasksinputdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'depthbasedcorrmaskmasksleft' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'depthbasedcorrmaskmasksmaskactive' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'depthbasedcorrmaskmasksmaskblendmode' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'depthbasedcorrmaskmasksmaskdigest' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'depthbasedcorrmaskmasksmaskinverted' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'depthbasedcorrmaskmasksmaskname' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'depthbasedcorrmaskmasksmasksubtype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'depthbasedcorrmaskmasksmasksyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'depthbasedcorrmaskmasksmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'depthbasedcorrmaskmasksmidpoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'depthbasedcorrmaskmasksorigin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'depthbasedcorrmaskmasksperimetervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'depthbasedcorrmaskmasksradius' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'depthbasedcorrmaskmasksreferencepoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'depthbasedcorrmaskmasksright' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRight'] }, + 'depthbasedcorrmaskmasksroundness' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'depthbasedcorrmaskmaskssizex' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'depthbasedcorrmaskmaskssizey' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'depthbasedcorrmaskmaskstop' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksTop'] }, + 'depthbasedcorrmaskmasksubtype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'depthbasedcorrmaskmasksvalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'depthbasedcorrmaskmasksversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'depthbasedcorrmaskmaskswhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'depthbasedcorrmaskmaskswholeimagearea' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'depthbasedcorrmaskmasksx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksX'] }, + 'depthbasedcorrmaskmasksy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksY'] }, + 'depthbasedcorrmaskmasksyncid' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'depthbasedcorrmaskmaskszerox' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'depthbasedcorrmaskmaskszeroy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'depthbasedcorrmaskmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'depthbasedcorrmaskmidpoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMidpoint'] }, + 'depthbasedcorrmaskorigin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksOrigin'] }, + 'depthbasedcorrmaskperimetervalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'depthbasedcorrmaskradius' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRadius'] }, + 'depthbasedcorrmaskrange' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'depthbasedcorrmaskrangeareamodels' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'depthbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'depthbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'depthbasedcorrmaskrangecoloramount' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'depthbasedcorrmaskrangedepthfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'depthbasedcorrmaskrangedepthmax' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'depthbasedcorrmaskrangedepthmin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'depthbasedcorrmaskrangeinvert' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'depthbasedcorrmaskrangelumfeather' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'depthbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'depthbasedcorrmaskrangelummax' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'depthbasedcorrmaskrangelummin' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'depthbasedcorrmaskrangelumrange' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'depthbasedcorrmaskrangesampletype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'depthbasedcorrmaskrangetype' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'depthbasedcorrmaskrangeversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'depthbasedcorrmaskreferencepoint' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'depthbasedcorrmaskright' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRight'] }, + 'depthbasedcorrmaskroundness' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksRoundness'] }, + 'depthbasedcorrmasksizex' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeX'] }, + 'depthbasedcorrmasksizey' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksSizeY'] }, + 'depthbasedcorrmasktop' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksTop'] }, + 'depthbasedcorrmaskvalue' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksMaskValue'] }, + 'depthbasedcorrmaskversion' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksVersion'] }, + 'depthbasedcorrmaskwhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWhat'] }, + 'depthbasedcorrmaskwholeimagearea' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'depthbasedcorrmaskx' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksX'] }, + 'depthbasedcorrmasky' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksY'] }, + 'depthbasedcorrmaskzerox' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroX'] }, + 'depthbasedcorrmaskzeroy' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsCorrectionMasksZeroY'] }, + 'depthbasedcorrwhat' => { 523 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'], 525 => [\'DepthBasedCorrections','DepthBasedCorrectionsWhat'] }, 'depthfar' => { 125 => 0xc7eb }, 'depthformat' => { 125 => 0xc7e9 }, - 'depthimage' => { 504 => 'Data' }, - 'depthmapinfo' => { 521 => 'DepthMapInfo', 523 => 'DepthMapInfo' }, - 'depthmapinfobasehighlightguideinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'] }, - 'depthmapinfobasehighlightguidetable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'] }, - 'depthmapinfobasehighlightguideversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'] }, - 'depthmapinfobaselayereddepthinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'] }, - 'depthmapinfobaselayereddepthtable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'] }, - 'depthmapinfobaselayereddepthversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'] }, - 'depthmapinfobaserawdepthinputdigest' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'] }, - 'depthmapinfobaserawdepthtable' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'] }, - 'depthmapinfobaserawdepthversion' => { 521 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'], 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'] }, - 'depthmapinfodepthsource' => { 521 => [\'DepthMapInfo','DepthMapInfoDepthSource'], 523 => [\'DepthMapInfo','DepthMapInfoDepthSource'] }, + 'depthimage' => { 506 => 'Data' }, + 'depthmapinfo' => { 523 => 'DepthMapInfo', 525 => 'DepthMapInfo' }, + 'depthmapinfobasehighlightguideinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideInputDigest'] }, + 'depthmapinfobasehighlightguidetable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideTable'] }, + 'depthmapinfobasehighlightguideversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseHighlightGuideVersion'] }, + 'depthmapinfobaselayereddepthinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthInputDigest'] }, + 'depthmapinfobaselayereddepthtable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthTable'] }, + 'depthmapinfobaselayereddepthversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseLayeredDepthVersion'] }, + 'depthmapinfobaserawdepthinputdigest' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthInputDigest'] }, + 'depthmapinfobaserawdepthtable' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthTable'] }, + 'depthmapinfobaserawdepthversion' => { 523 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'], 525 => [\'DepthMapInfo','DepthMapInfoBaseRawDepthVersion'] }, + 'depthmapinfodepthsource' => { 523 => [\'DepthMapInfo','DepthMapInfoDepthSource'], 525 => [\'DepthMapInfo','DepthMapInfoDepthSource'] }, 'depthmeasuretype' => { 125 => 0xc7ed }, 'depthnear' => { 125 => 0xc7ea }, 'depthunits' => { 125 => 0xc7ec }, - 'derivedfrom' => { 551 => 'DerivedFrom' }, - 'derivedfromalternatepaths' => { 551 => [\'DerivedFrom','DerivedFromAlternatePaths'] }, - 'derivedfromdocumentid' => { 551 => [\'DerivedFrom','DerivedFromDocumentID'] }, - 'derivedfromfilepath' => { 551 => [\'DerivedFrom','DerivedFromFilePath'] }, - 'derivedfromfrompart' => { 551 => [\'DerivedFrom','DerivedFromFromPart'] }, - 'derivedfrominstanceid' => { 551 => [\'DerivedFrom','DerivedFromInstanceID'] }, - 'derivedfromlastmodifydate' => { 551 => [\'DerivedFrom','DerivedFromLastModifyDate'] }, - 'derivedfromlasturl' => { 551 => [\'DerivedFrom','DerivedFromLastURL'] }, - 'derivedfromlinkcategory' => { 551 => [\'DerivedFrom','DerivedFromLinkCategory'] }, - 'derivedfromlinkform' => { 551 => [\'DerivedFrom','DerivedFromLinkForm'] }, - 'derivedfrommanager' => { 551 => [\'DerivedFrom','DerivedFromManager'] }, - 'derivedfrommanagervariant' => { 551 => [\'DerivedFrom','DerivedFromManagerVariant'] }, - 'derivedfrommanageto' => { 551 => [\'DerivedFrom','DerivedFromManageTo'] }, - 'derivedfrommanageui' => { 551 => [\'DerivedFrom','DerivedFromManageUI'] }, - 'derivedfrommaskmarkers' => { 551 => [\'DerivedFrom','DerivedFromMaskMarkers'] }, - 'derivedfromoriginaldocumentid' => { 551 => [\'DerivedFrom','DerivedFromOriginalDocumentID'] }, - 'derivedfrompartmapping' => { 551 => [\'DerivedFrom','DerivedFromPartMapping'] }, - 'derivedfromplacedresolutionunit' => { 551 => [\'DerivedFrom','DerivedFromPlacedResolutionUnit'] }, - 'derivedfromplacedxresolution' => { 551 => [\'DerivedFrom','DerivedFromPlacedXResolution'] }, - 'derivedfromplacedyresolution' => { 551 => [\'DerivedFrom','DerivedFromPlacedYResolution'] }, - 'derivedfromrenditionclass' => { 551 => [\'DerivedFrom','DerivedFromRenditionClass'] }, - 'derivedfromrenditionparams' => { 551 => [\'DerivedFrom','DerivedFromRenditionParams'] }, - 'derivedfromtopart' => { 551 => [\'DerivedFrom','DerivedFromToPart'] }, - 'derivedfromversionid' => { 551 => [\'DerivedFrom','DerivedFromVersionID'] }, - 'description' => { 186 => 'Description', 343 => 'Description', 407 => ['desc','dscp',"\xa9des"], 409 => 'description', 415 => 'dscp', 521 => 'Description', 523 => 'Description', 524 => 'description', 548 => 'Description' }, + 'derivedfrom' => { 553 => 'DerivedFrom' }, + 'derivedfromalternatepaths' => { 553 => [\'DerivedFrom','DerivedFromAlternatePaths'] }, + 'derivedfromdocumentid' => { 553 => [\'DerivedFrom','DerivedFromDocumentID'] }, + 'derivedfromfilepath' => { 553 => [\'DerivedFrom','DerivedFromFilePath'] }, + 'derivedfromfrompart' => { 553 => [\'DerivedFrom','DerivedFromFromPart'] }, + 'derivedfrominstanceid' => { 553 => [\'DerivedFrom','DerivedFromInstanceID'] }, + 'derivedfromlastmodifydate' => { 553 => [\'DerivedFrom','DerivedFromLastModifyDate'] }, + 'derivedfromlasturl' => { 553 => [\'DerivedFrom','DerivedFromLastURL'] }, + 'derivedfromlinkcategory' => { 553 => [\'DerivedFrom','DerivedFromLinkCategory'] }, + 'derivedfromlinkform' => { 553 => [\'DerivedFrom','DerivedFromLinkForm'] }, + 'derivedfrommanager' => { 553 => [\'DerivedFrom','DerivedFromManager'] }, + 'derivedfrommanagervariant' => { 553 => [\'DerivedFrom','DerivedFromManagerVariant'] }, + 'derivedfrommanageto' => { 553 => [\'DerivedFrom','DerivedFromManageTo'] }, + 'derivedfrommanageui' => { 553 => [\'DerivedFrom','DerivedFromManageUI'] }, + 'derivedfrommaskmarkers' => { 553 => [\'DerivedFrom','DerivedFromMaskMarkers'] }, + 'derivedfromoriginaldocumentid' => { 553 => [\'DerivedFrom','DerivedFromOriginalDocumentID'] }, + 'derivedfrompartmapping' => { 553 => [\'DerivedFrom','DerivedFromPartMapping'] }, + 'derivedfromplacedresolutionunit' => { 553 => [\'DerivedFrom','DerivedFromPlacedResolutionUnit'] }, + 'derivedfromplacedxresolution' => { 553 => [\'DerivedFrom','DerivedFromPlacedXResolution'] }, + 'derivedfromplacedyresolution' => { 553 => [\'DerivedFrom','DerivedFromPlacedYResolution'] }, + 'derivedfromrenditionclass' => { 553 => [\'DerivedFrom','DerivedFromRenditionClass'] }, + 'derivedfromrenditionparams' => { 553 => [\'DerivedFrom','DerivedFromRenditionParams'] }, + 'derivedfromtopart' => { 553 => [\'DerivedFrom','DerivedFromToPart'] }, + 'derivedfromversionid' => { 553 => [\'DerivedFrom','DerivedFromVersionID'] }, + 'description' => { 186 => 'Description', 343 => 'Description', 408 => ['desc','dscp',"\xa9des"], 410 => 'description', 416 => 'dscp', 523 => 'Description', 525 => 'Description', 526 => 'description', 550 => 'Description' }, 'destination' => { 139 => 0x5 }, 'destinationcity' => { 390 => 0x24, 396 => 0x3 }, 'destinationcitycode' => { 397 => 0x1001 }, @@ -2487,16 +2490,16 @@ my %tagLookup = ( 'deviantwhiteflash' => { 145 => 0x841 }, 'deviantwhitefluorescent' => { 145 => 0x840 }, 'deviantwhitetungsten' => { 145 => 0x83f }, - 'device' => { 540 => 'device' }, - 'devicesettingdescription' => { 527 => 'DeviceSettingDescription' }, - 'devicesettingdescriptioncolumns' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionColumns'] }, - 'devicesettingdescriptionrows' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionRows'] }, - 'devicesettingdescriptionsettings' => { 527 => [\'DeviceSettingDescription','DeviceSettingDescriptionSettings'] }, - 'devicetype' => { 429 => 0x2 }, + 'device' => { 542 => 'device' }, + 'devicesettingdescription' => { 529 => 'DeviceSettingDescription' }, + 'devicesettingdescriptioncolumns' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionColumns'] }, + 'devicesettingdescriptionrows' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionRows'] }, + 'devicesettingdescriptionsettings' => { 529 => [\'DeviceSettingDescription','DeviceSettingDescriptionSettings'] }, + 'devicetype' => { 431 => 0x2 }, 'dewarpdata' => { 122 => 'DewarpData' }, 'dewarpflag' => { 122 => 'DewarpFlag' }, 'dialdirectiontvav' => { 90 => 0x706 }, - 'dietaryneeds' => { 542 => 'dietaryNeeds' }, + 'dietaryneeds' => { 544 => 'dietaryNeeds' }, 'diffractioncompensation' => { 232 => 0x20e, 247 => 0x2ce, 248 => 0x142, 249 => 0x1b2, 250 => 0x1b2, 251 => 0x1a2, 252 => 0x1b6, 253 => 0x1b6 }, 'diffractioncorrection' => { 354 => 0xbc, 379 => 0x3 }, 'diffractioncorrectionon' => { 109 => 0x2070b }, @@ -2505,7 +2508,7 @@ my %tagLookup = ( 'digitaldeehighlightadj' => { 268 => 0x202 }, 'digitaldeeshadowadj' => { 268 => 0x200 }, 'digitaldeethreshold' => { 268 => 0x201 }, - 'digitalfilter' => { 432 => 0x59 }, + 'digitalfilter' => { 434 => 0x59 }, 'digitalfilter01' => { 376 => 0x5 }, 'digitalfilter02' => { 376 => 0x16 }, 'digitalfilter03' => { 376 => 0x27 }, @@ -2529,57 +2532,57 @@ my %tagLookup = ( 'digitalgain' => { 79 => 0xb }, 'digitalgem' => { 227 => 0x0 }, 'digitalice' => { 268 => 0x100 }, - 'digitalimageguid' => { 535 => 'DigImageGUID' }, + 'digitalimageguid' => { 537 => 'DigImageGUID' }, 'digitallensoptimizer' => { 67 => 0xa }, 'digitallensoptimizersetting' => { 85 => 0x9 }, 'digitalroc' => { 265 => 0x0 }, - 'digitalsourcefiletype' => { 535 => 'DigitalSourcefileType' }, - 'digitalsourcetype' => { 535 => 'DigitalSourceType' }, - 'digitalzoom' => { 37 => 0xc, 118 => 0xa, 133 => 0x1044, 147 => 0x68, 158 => 0x22, 159 => 0x1e, 163 => 'DigitalZoom', 188 => 0xc, 243 => 0x86, 291 => 0xa, 335 => 0x204, 390 => 0x1e, 397 => 0xa, 431 => 0x204, 479 => 0x12, 480 => 0x12 }, - 'digitalzoomon' => { 431 => 0x21b }, - 'digitalzoomratio' => { 125 => 0xa404, 467 => 0x200, 469 => 0x21c, 527 => 'DigitalZoomRatio' }, - 'director' => { 186 => 'WM/Director', 407 => "\xa9dir", 409 => 'director', 415 => "\xa9dir", 550 => 'director' }, - 'directorphotography' => { 550 => 'directorPhotography' }, + 'digitalsourcefiletype' => { 537 => 'DigitalSourcefileType' }, + 'digitalsourcetype' => { 537 => 'DigitalSourceType' }, + 'digitalzoom' => { 37 => 0xc, 118 => 0xa, 133 => 0x1044, 147 => 0x68, 158 => 0x22, 159 => 0x1e, 163 => 'DigitalZoom', 188 => 0xc, 243 => 0x86, 291 => 0xa, 335 => 0x204, 390 => 0x1e, 397 => 0xa, 433 => 0x204, 481 => 0x12, 482 => 0x12 }, + 'digitalzoomon' => { 433 => 0x21b }, + 'digitalzoomratio' => { 125 => 0xa404, 469 => 0x200, 471 => 0x21c, 529 => 'DigitalZoomRatio' }, + 'director' => { 186 => 'WM/Director', 408 => "\xa9dir", 410 => 'director', 416 => "\xa9dir", 552 => 'director' }, + 'directorphotography' => { 552 => 'directorPhotography' }, 'directory' => { 126 => 'Directory' }, 'directoryindex' => { 7 => 0x137, 9 => 0x2dc, 11 => 0x17e, 13 => 0x238, 14 => 0x13f, 15 => 0x133, 16 => 0x1df, 17 => 0x1a7, 18 => 0x1f0, 19 => 0xcc, 20 => 0x1c7, 21 => 0x298, 22 => 0x1e7, 23 => 0x1e5, 24 => [0x27c,0x280], 25 => 0x2b6, 26 => 0x2bf, 28 => 0x1f7, 29 => 0x4ba, 30 => 0xb21 }, 'directoryindex2' => { 21 => 0x29c }, - 'directoryitem' => { 502 => [\'Directory','DirectoryItem'] }, - 'directoryitemlabel' => { 502 => [\'Directory','DirectoryItemLabel'] }, - 'directoryitemlength' => { 502 => [\'Directory','DirectoryItemLength'] }, - 'directoryitemmime' => { 502 => [\'Directory','DirectoryItemMime'] }, - 'directoryitempadding' => { 502 => [\'Directory','DirectoryItemPadding'] }, - 'directoryitemsemantic' => { 502 => [\'Directory','DirectoryItemSemantic'] }, - 'directoryitemuri' => { 502 => [\'Directory','DirectoryItemURI'] }, - 'directorynumber' => { 220 => 0x3, 418 => 0x12 }, - 'disableautocreation' => { 501 => 'DisableAutoCreation' }, - 'disablesuggestedaction' => { 501 => 'DisableSuggestedAction' }, + 'directoryitem' => { 504 => [\'Directory','DirectoryItem'] }, + 'directoryitemlabel' => { 504 => [\'Directory','DirectoryItemLabel'] }, + 'directoryitemlength' => { 504 => [\'Directory','DirectoryItemLength'] }, + 'directoryitemmime' => { 504 => [\'Directory','DirectoryItemMime'] }, + 'directoryitempadding' => { 504 => [\'Directory','DirectoryItemPadding'] }, + 'directoryitemsemantic' => { 504 => [\'Directory','DirectoryItemSemantic'] }, + 'directoryitemuri' => { 504 => [\'Directory','DirectoryItemURI'] }, + 'directorynumber' => { 220 => 0x3, 420 => 0x12 }, + 'disableautocreation' => { 503 => 'DisableAutoCreation' }, + 'disablesuggestedaction' => { 503 => 'DisableSuggestedAction' }, 'disclaimer' => { 343 => 'Disclaimer' }, - 'discnumber' => { 550 => 'discNumber' }, - 'dishtype' => { 542 => 'dishType' }, - 'disknumber' => { 407 => 'disk' }, + 'discnumber' => { 552 => 'discNumber' }, + 'dishtype' => { 544 => 'dishType' }, + 'disknumber' => { 408 => 'disk' }, 'dispbutton' => { 253 => 0x7d4, 326 => 0x2ab }, 'displayallafpoints' => { 90 => 0x514 }, 'displayaperture' => { 37 => 0x23 }, 'displayedunitsx' => { 405 => 0x2 }, 'displayedunitsy' => { 405 => 0x6 }, - 'displayname' => { 409 => 'displayname', 539 => 'displayName' }, + 'displayname' => { 410 => 'displayname', 541 => 'displayName' }, 'distance1' => { 147 => 0x28 }, 'distance2' => { 147 => 0x2c }, 'distance3' => { 147 => 0x30 }, 'distance4' => { 147 => 0x34 }, - 'distortion' => { 429 => 0xa050 }, - 'distortioncompensation' => { 493 => 0x8040 }, + 'distortion' => { 431 => 0xa050 }, + 'distortioncompensation' => { 495 => 0x8040 }, 'distortioncontrol' => { 273 => 0x10 }, - 'distortioncorrection' => { 84 => 0x3, 109 => 0x20705, 115 => 0x67, 125 => 0x7036, 218 => 0x4, 330 => 0x50b, 358 => '7.1', 379 => 0x0, 487 => 0x601, 488 => 0x5b }, + 'distortioncorrection' => { 84 => 0x3, 109 => 0x20705, 115 => 0x67, 125 => 0x7036, 218 => 0x4, 330 => 0x50b, 358 => '7.1', 379 => 0x0, 489 => 0x601, 490 => 0x5b }, 'distortioncorrection2' => { 334 => 0x1011 }, - 'distortioncorrectionalreadyapplied' => { 518 => 'DistortionCorrectionAlreadyApplied' }, + 'distortioncorrectionalreadyapplied' => { 520 => 'DistortionCorrectionAlreadyApplied' }, 'distortioncorrectionon' => { 109 => '0x20705.0', 115 => 0x63 }, - 'distortioncorrectionsetting' => { 85 => 0x7, 456 => 0x2013 }, + 'distortioncorrectionsetting' => { 85 => 0x7, 458 => 0x2013 }, 'distortioncorrectionvalue' => { 84 => 0x9 }, 'distortioncorrectionversion' => { 218 => 0x0 }, - 'distortioncorrparams' => { 125 => 0x7037, 466 => 0x1a23, 469 => 0x1870, 471 => 0x189c, 472 => 0x18cc, 473 => 0x17d0, 487 => 0x6ca, 488 => 0x64 }, - 'distortioncorrparamsnumber' => { 469 => 0x1899, 471 => 0x18c5, 472 => 0x18f5, 473 => 0x17f9 }, - 'distortioncorrparamspresent' => { 469 => 0x1898, 471 => 0x18c4, 472 => 0x18f4, 473 => 0x17f8, 475 => 0x10b, 476 => 0x10b, 487 => 0x600, 488 => 0x5a }, + 'distortioncorrparams' => { 125 => 0x7037, 468 => 0x1a23, 471 => 0x1870, 473 => 0x189c, 474 => 0x18cc, 475 => 0x17d0, 489 => 0x6ca, 490 => 0x64 }, + 'distortioncorrparamsnumber' => { 471 => 0x1899, 473 => 0x18c5, 474 => 0x18f5, 475 => 0x17f9 }, + 'distortioncorrparamspresent' => { 471 => 0x1898, 473 => 0x18c4, 474 => 0x18f4, 475 => 0x17f8, 477 => 0x10b, 478 => 0x10b, 489 => 0x600, 490 => 0x5a }, 'distortioneffect' => { 109 => 0x20709 }, 'distortionn' => { 358 => 0xc }, 'distortionparam02' => { 358 => 0x2 }, @@ -2588,36 +2591,36 @@ my %tagLookup = ( 'distortionparam09' => { 358 => 0x9 }, 'distortionparam11' => { 358 => 0xb }, 'distortionscale' => { 358 => 0x5 }, - 'distributor' => { 540 => 'distributor' }, - 'distributorproductid' => { 539 => 'distributorProductID' }, + 'distributor' => { 542 => 'distributor' }, + 'distributorproductid' => { 541 => 'distributorProductID' }, 'dloon' => { 109 => '0x20706.0', 115 => 0xdc }, 'dlosetting' => { 109 => 0x20706, 115 => 0xdd }, 'dlosettingapplied' => { 108 => 0x4 }, 'dloshootingdistance' => { 115 => 0xde }, 'dloversion' => { 108 => 0x5 }, - 'dmcomment' => { 550 => 'comment' }, + 'dmcomment' => { 552 => 'comment' }, 'dmdithermatrix' => { 145 => 0xc7a }, 'dmdithermatrixheight' => { 145 => 0xc7c }, 'dmdithermatrixwidth' => { 145 => 0xc7b }, 'dngadobedata' => { 125 => 0xc634 }, 'dngbackwardversion' => { 125 => 0xc613 }, - 'dngignoresidecars' => { 521 => 'DNGIgnoreSidecars', 523 => 'DNGIgnoreSidecars' }, + 'dngignoresidecars' => { 523 => 'DNGIgnoreSidecars', 525 => 'DNGIgnoreSidecars' }, 'dnglensinfo' => { 125 => 0xc630 }, 'dngprivatedata' => { 125 => 0xc634 }, 'dngversion' => { 125 => 0xc612 }, 'document' => { 343 => 'Document' }, - 'documentancestors' => { 538 => 'DocumentAncestors' }, + 'documentancestors' => { 540 => 'DocumentAncestors' }, 'documenthistory' => { 138 => 0xe7 }, - 'documentid' => { 551 => 'DocumentID' }, + 'documentid' => { 553 => 'DocumentID' }, 'documentname' => { 125 => 0x10d }, 'documentnotes' => { 138 => 0xe6 }, - 'doi' => { 540 => 'doi' }, - 'dopesheet' => { 535 => 'Dopesheet' }, - 'dopesheetlink' => { 535 => 'DopesheetLink' }, - 'dopesheetlinklink' => { 535 => [\'DopesheetLink','DopesheetLinkLink'] }, - 'dopesheetlinklinkqualifier' => { 535 => [\'DopesheetLink','DopesheetLinkLinkQualifier'] }, + 'doi' => { 542 => 'doi' }, + 'dopesheet' => { 537 => 'Dopesheet' }, + 'dopesheetlink' => { 537 => 'DopesheetLink' }, + 'dopesheetlinklink' => { 537 => [\'DopesheetLink','DopesheetLinkLink'] }, + 'dopesheetlinklinkqualifier' => { 537 => [\'DopesheetLink','DopesheetLinkLinkQualifier'] }, 'doublingmicrovolts' => { 145 => 0xc82 }, - 'dpp' => { 515 => 'dpp' }, + 'dpp' => { 517 => 'dpp' }, 'dprawbokehshift' => { 109 => 0x20b20 }, 'dprawbokehshiftarea' => { 109 => 0x20b21 }, 'dprawghostingreductionarea' => { 109 => 0x20b30 }, @@ -2627,15 +2630,15 @@ my %tagLookup = ( 'drangepriority' => { 133 => 0x1443 }, 'drangepriorityauto' => { 133 => 0x1444 }, 'drangepriorityfixed' => { 133 => 0x1445 }, - 'drivemode' => { 119 => 0x3103, 131 => '0.1', 188 => 0x6, 191 => 0x1e, 194 => 0xe, 198 => 0x64d0, 330 => 0x600, 390 => 0x34, 422 => 0x1002, 432 => 0x3, 442 => 0x4, 443 => 0x7e, 444 => 0x34 }, - 'drivemode2' => { 191 => 0xa, 370 => 0x7, 453 => 0xe, 461 => 0x1 }, - 'drivemodesetting' => { 444 => 0x4 }, + 'drivemode' => { 119 => 0x3103, 131 => '0.1', 188 => 0x6, 191 => 0x1e, 194 => 0xe, 198 => 0x64d0, 330 => 0x600, 390 => 0x34, 424 => 0x1002, 434 => 0x3, 444 => 0x4, 445 => 0x7e, 446 => 0x34 }, + 'drivemode2' => { 191 => 0xa, 370 => 0x7, 455 => 0xe, 463 => 0x1 }, + 'drivemodesetting' => { 446 => 0x4 }, 'drivespeed' => { 131 => '0.2' }, 'dspfirmwareversion' => { 390 => 0x27 }, 'dualpixelraw' => { 67 => 0xb }, - 'duration' => { 72 => 0x6a, 162 => 'Duration', 176 => 'Duration', 542 => 'duration', 550 => 'duration' }, - 'durationscale' => { 550 => [\'duration','durationScale'] }, - 'durationvalue' => { 550 => [\'duration','durationValue'] }, + 'duration' => { 72 => 0x6a, 162 => 'Duration', 176 => 'Duration', 544 => 'duration', 552 => 'duration' }, + 'durationscale' => { 552 => [\'duration','durationScale'] }, + 'durationvalue' => { 552 => [\'duration','durationValue'] }, 'dustremovaldata' => { 69 => 0x97 }, 'dxcropalert' => { 249 => 0x250, 250 => 0x250, 251 => 0x23c, 252 => 0x250, 253 => 0x250 }, 'dynamicafarea' => { 309 => '1.4', 318 => '1.4' }, @@ -2644,14 +2647,14 @@ my %tagLookup = ( 'dynamicareaafdisplay' => { 310 => '46.1', 312 => '47.1', 313 => '47.1', 322 => '47.1', 323 => '47.1' }, 'dynamicrange' => { 133 => 0x1400 }, 'dynamicrangeboost' => { 354 => 0xee }, - 'dynamicrangeexpansion' => { 390 => 0x69, 422 => 0x100e }, + 'dynamicrangeexpansion' => { 390 => 0x69, 424 => 0x100e }, 'dynamicrangemax' => { 114 => 0x7c }, 'dynamicrangemin' => { 114 => 0x7a }, - 'dynamicrangeoptimizer' => { 191 => 0x15, 456 => [0xb025,0xb04f], 465 => 0x1144, 466 => [0x1144,0x324], 467 => [0x1120,0x300], 468 => [0x119c,0x37c], 469 => [0x1178,0x328], 470 => [0x1030,0x50], 471 => [0x228,0x50], 472 => [0x228,0x50], 473 => [0x21b,0x4e] }, - 'dynamicrangeoptimizerbracket' => { 453 => 0x2e }, - 'dynamicrangeoptimizerlevel' => { 442 => 0x19, 443 => 0x17, 444 => 0xd, 453 => 0x79, 461 => 0x5 }, - 'dynamicrangeoptimizermode' => { 194 => 0x15, 442 => 0x18, 443 => 0x16, 453 => [0x77,0x15] }, - 'dynamicrangeoptimizersetting' => { 191 => 0x27, 444 => 0xc, 461 => 0x4 }, + 'dynamicrangeoptimizer' => { 191 => 0x15, 458 => [0xb025,0xb04f], 467 => 0x1144, 468 => [0x1144,0x324], 469 => [0x1120,0x300], 470 => [0x119c,0x37c], 471 => [0x1178,0x328], 472 => [0x1030,0x50], 473 => [0x228,0x50], 474 => [0x228,0x50], 475 => [0x21b,0x4e] }, + 'dynamicrangeoptimizerbracket' => { 455 => 0x2e }, + 'dynamicrangeoptimizerlevel' => { 444 => 0x19, 445 => 0x17, 446 => 0xd, 455 => 0x79, 463 => 0x5 }, + 'dynamicrangeoptimizermode' => { 194 => 0x15, 444 => 0x18, 445 => 0x16, 455 => [0x77,0x15] }, + 'dynamicrangeoptimizersetting' => { 191 => 0x27, 446 => 0xc, 463 => 0x4 }, 'dynamicrangesetting' => { 133 => 0x1402 }, 'e-dialinprogram' => { 370 => '1.3' }, 'earliestageorloweststage' => { 124 => [\'GeologicalContext','GeologicalContextEarliestAgeOrLowestStage'] }, @@ -2659,15 +2662,15 @@ my %tagLookup = ( 'earliestepochorlowestseries' => { 124 => [\'GeologicalContext','GeologicalContextEarliestEpochOrLowestSeries'] }, 'earliesteraorlowesterathem' => { 124 => [\'GeologicalContext','GeologicalContextEarliestEraOrLowestErathem'] }, 'earliestperiodorlowestsystem' => { 124 => [\'GeologicalContext','GeologicalContextEarliestPeriodOrLowestSystem'] }, - 'earthpos' => { 497 => 'EarthPos' }, - 'earthposaltitude' => { 497 => [\'EarthPos','EarthPosAltitude'] }, - 'earthposlatitude' => { 497 => [\'EarthPos','EarthPosLatitude'] }, - 'earthposlongitude' => { 497 => [\'EarthPos','EarthPosLongitude'] }, - 'earthposrotationw' => { 497 => [\'EarthPos','EarthPosRotationW'] }, - 'earthposrotationx' => { 497 => [\'EarthPos','EarthPosRotationX'] }, - 'earthposrotationy' => { 497 => [\'EarthPos','EarthPosRotationY'] }, - 'earthposrotationz' => { 497 => [\'EarthPos','EarthPosRotationZ'] }, - 'earthpostimestamp' => { 497 => [\'EarthPos','EarthPosTimestamp'] }, + 'earthpos' => { 499 => 'EarthPos' }, + 'earthposaltitude' => { 499 => [\'EarthPos','EarthPosAltitude'] }, + 'earthposlatitude' => { 499 => [\'EarthPos','EarthPosLatitude'] }, + 'earthposlongitude' => { 499 => [\'EarthPos','EarthPosLongitude'] }, + 'earthposrotationw' => { 499 => [\'EarthPos','EarthPosRotationW'] }, + 'earthposrotationx' => { 499 => [\'EarthPos','EarthPosRotationX'] }, + 'earthposrotationy' => { 499 => [\'EarthPos','EarthPosRotationY'] }, + 'earthposrotationz' => { 499 => [\'EarthPos','EarthPosRotationZ'] }, + 'earthpostimestamp' => { 499 => [\'EarthPos','EarthPosTimestamp'] }, 'easyexposurecomp' => { 324 => '6.1' }, 'easyexposurecompensation' => { 309 => '6.4', 310 => '6.5', 312 => '6.3', 313 => '6.3', 317 => '5.1', 318 => '4.4', 319 => '5.2', 322 => '6.3', 323 => '6.3', 325 => 0x1f, 326 => 0x1d, 327 => 0x1d, 328 => 0x1d }, 'easymode' => { 37 => 0xb }, @@ -2676,103 +2679,103 @@ my %tagLookup = ( 'edgemapx2' => { 145 => 0x932 }, 'edgemapx3' => { 145 => 0x934 }, 'edgemapx4' => { 145 => 0x935 }, - 'edgenoisereduction' => { 303 => 0x4, 493 => 0x8028 }, - 'edit1' => { 415 => "\xa9ed1" }, - 'edit2' => { 415 => "\xa9ed2" }, - 'edit3' => { 415 => "\xa9ed3" }, - 'edit4' => { 415 => "\xa9ed4" }, - 'edit5' => { 415 => "\xa9ed5" }, - 'edit6' => { 415 => "\xa9ed6" }, - 'edit7' => { 415 => "\xa9ed7" }, - 'edit8' => { 415 => "\xa9ed8" }, - 'edit9' => { 415 => "\xa9ed9" }, - 'edition' => { 540 => 'edition' }, + 'edgenoisereduction' => { 303 => 0x4, 495 => 0x8028 }, + 'edit1' => { 416 => "\xa9ed1" }, + 'edit2' => { 416 => "\xa9ed2" }, + 'edit3' => { 416 => "\xa9ed3" }, + 'edit4' => { 416 => "\xa9ed4" }, + 'edit5' => { 416 => "\xa9ed5" }, + 'edit6' => { 416 => "\xa9ed6" }, + 'edit7' => { 416 => "\xa9ed7" }, + 'edit8' => { 416 => "\xa9ed8" }, + 'edit9' => { 416 => "\xa9ed9" }, + 'edition' => { 542 => 'edition' }, 'editorialupdate' => { 138 => 0x8 }, - 'editstatus' => { 138 => 0x7, 402 => 'EditStatus', 515 => 'EditStatus' }, + 'editstatus' => { 138 => 0x7, 402 => 'EditStatus', 517 => 'EditStatus' }, 'editversionname' => { 302 => 0x3d136244 }, 'effectivelv' => { 390 => 0x2d }, 'effectivemaxaperture' => { 236 => 0x12, 237 => 0x13, 241 => 0x14 }, - 'eissn' => { 540 => 'eIssn' }, + 'eissn' => { 542 => 'eIssn' }, 'electricalblackcolumns' => { 145 => 0x1810 }, 'electronicfront-curtainshutter' => { 312 => '5.2', 313 => '5.2', 322 => '5.3', 323 => '5.2' }, - 'electronicfrontcurtainshutter' => { 456 => 0x201a }, + 'electronicfrontcurtainshutter' => { 458 => 0x201a }, 'elevation' => { 172 => 'Elevation' }, 'email' => { 164 => 'EMail' }, - 'embargodate' => { 543 => 'embargoDate' }, - 'embdencrightsexpr' => { 535 => 'EmbdEncRightsExpr' }, - 'embeddedencodedrightsexpr' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprEncRightsExpr'] }, - 'embeddedencodedrightsexprlangid' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprLangId'] }, - 'embeddedencodedrightsexprtype' => { 535 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprEncType'] }, - 'embeddedxmpdigest' => { 538 => 'EmbeddedXMPDigest' }, + 'embargodate' => { 545 => 'embargoDate' }, + 'embdencrightsexpr' => { 537 => 'EmbdEncRightsExpr' }, + 'embeddedencodedrightsexpr' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprEncRightsExpr'] }, + 'embeddedencodedrightsexprlangid' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprLangId'] }, + 'embeddedencodedrightsexprtype' => { 537 => [\'EmbdEncRightsExpr','EmbdEncRightsExprRightsExprEncType'] }, + 'embeddedxmpdigest' => { 540 => 'EmbeddedXMPDigest' }, 'emissivity' => { 127 => 0x3 }, 'emptyslotrelease' => { 247 => 0x98c, 249 => 0x723, 250 => 0x733, 251 => 0x625, 252 => 0x655, 253 => 0x6bd }, 'enablechromanoisereduction' => { 145 => 0xe6e }, 'enablesharpening' => { 145 => 0x92e }, - 'encodedby' => { 186 => 'WM/EncodedBy', 407 => "\xa9enc" }, - 'encodedwith' => { 409 => 'Encoded_With' }, - 'encoder' => { 407 => "\xa9too", 409 => 'encoder', 415 => "\xa9too" }, - 'encoderid' => { 415 => "\xa9enc" }, + 'encodedby' => { 186 => 'WM/EncodedBy', 408 => "\xa9enc" }, + 'encodedwith' => { 410 => 'Encoded_With' }, + 'encoder' => { 408 => "\xa9too", 410 => 'encoder', 416 => "\xa9too" }, + 'encoderid' => { 416 => "\xa9enc" }, 'encodingtime' => { 186 => 'WM/EncodingTime' }, - 'encryptionkey' => { 429 => 0xa020 }, - 'endingpage' => { 540 => 'endingPage' }, + 'encryptionkey' => { 431 => 0xa020 }, + 'endingpage' => { 542 => 'endingPage' }, 'enduser' => { 340 => 'EndUser' }, 'enduserid' => { 340 => [\'EndUser','EndUserEndUserID'] }, 'endusername' => { 340 => [\'EndUser','EndUserEndUserName'] }, 'energysavingmode' => { 247 => 0x992, 249 => 0x746, 250 => 0x756, 251 => 0x648, 252 => 0x678, 253 => 0x6e0 }, - 'engineer' => { 550 => 'engineer' }, + 'engineer' => { 552 => 'engineer' }, 'enhancedarktones' => { 295 => 0x8 }, - 'enhancedenoisealreadyapplied' => { 518 => 'EnhanceDenoiseAlreadyApplied' }, - 'enhancedenoiselumaamount' => { 518 => 'EnhanceDenoiseLumaAmount' }, - 'enhancedenoiseversion' => { 518 => 'EnhanceDenoiseVersion' }, - 'enhancedetailsalreadyapplied' => { 518 => 'EnhanceDetailsAlreadyApplied' }, - 'enhancedetailsversion' => { 518 => 'EnhanceDetailsVersion' }, + 'enhancedenoisealreadyapplied' => { 520 => 'EnhanceDenoiseAlreadyApplied' }, + 'enhancedenoiselumaamount' => { 520 => 'EnhanceDenoiseLumaAmount' }, + 'enhancedenoiseversion' => { 520 => 'EnhanceDenoiseVersion' }, + 'enhancedetailsalreadyapplied' => { 520 => 'EnhanceDetailsAlreadyApplied' }, + 'enhancedetailsversion' => { 520 => 'EnhanceDetailsVersion' }, 'enhancement' => { 118 => 0x16, 119 => 0x3016 }, 'enhanceparams' => { 125 => 0xc7ee }, 'enhancer' => { 334 => 0x300 }, 'enhancervalues' => { 334 => 0x301 }, - 'enhancesuperresolutionalreadyapplied' => { 518 => 'EnhanceSuperResolutionAlreadyApplied' }, - 'enhancesuperresolutionscale' => { 518 => 'EnhanceSuperResolutionScale' }, - 'enhancesuperresolutionversion' => { 518 => 'EnhanceSuperResolutionVersion' }, + 'enhancesuperresolutionalreadyapplied' => { 520 => 'EnhanceSuperResolutionAlreadyApplied' }, + 'enhancesuperresolutionscale' => { 520 => 'EnhanceSuperResolutionScale' }, + 'enhancesuperresolutionversion' => { 520 => 'EnhanceSuperResolutionVersion' }, 'envelopenumber' => { 139 => 0x28 }, 'envelopepriority' => { 139 => 0x3c }, 'enveloperecordversion' => { 139 => 0x0 }, - 'episode' => { 535 => 'Episode' }, - 'episodeglobaluniqueid' => { 407 => 'egid' }, - 'episodeidentifier' => { 535 => [\'Episode','EpisodeIdentifier'] }, - 'episodename' => { 535 => [\'Episode','EpisodeName'] }, - 'episodenumber' => { 535 => [\'Episode','EpisodeNumber'] }, + 'episode' => { 537 => 'Episode' }, + 'episodeglobaluniqueid' => { 408 => 'egid' }, + 'episodeidentifier' => { 537 => [\'Episode','EpisodeIdentifier'] }, + 'episodename' => { 537 => [\'Episode','EpisodeName'] }, + 'episodenumber' => { 537 => [\'Episode','EpisodeNumber'] }, 'epsonimageheight' => { 335 => 0x20c }, 'epsonimagewidth' => { 335 => 0x20b }, 'epsonsoftware' => { 335 => 0x20d }, - 'equipmentinstitution' => { 496 => 'EquipmentInstitution' }, - 'equipmentmanufacturer' => { 496 => 'EquipmentManufacturer' }, + 'equipmentinstitution' => { 498 => 'EquipmentInstitution' }, + 'equipmentmanufacturer' => { 498 => 'EquipmentManufacturer' }, 'equipmentversion' => { 331 => 0x0 }, 'ettlii' => { 90 => 0x304, 91 => 0xd, 92 => 0xe, 93 => 0x7, 94 => 0x7, 95 => 0xe }, - 'event' => { 499 => 'Event', 513 => 'Event', 535 => 'Event', 540 => 'event' }, - 'eventalias' => { 539 => 'eventAlias' }, + 'event' => { 501 => 'Event', 515 => 'Event', 537 => 'Event', 542 => 'event' }, + 'eventalias' => { 541 => 'eventAlias' }, 'eventdate' => { 124 => [\'Event','EventEventDate'] }, 'eventday' => { 124 => [\'Event','EventDay'] }, 'eventearliestdate' => { 124 => [\'Event','EventEarliestDate'] }, - 'eventend' => { 539 => 'eventEnd' }, + 'eventend' => { 541 => 'eventEnd' }, 'eventenddayofyear' => { 124 => [\'Event','EventEndDayOfYear'] }, 'eventfieldnotes' => { 124 => [\'Event','EventFieldNotes'] }, 'eventfieldnumber' => { 124 => [\'Event','EventFieldNumber'] }, 'eventhabitat' => { 124 => [\'Event','EventHabitat'] }, - 'eventid' => { 124 => [\'Event','EventEventID'], 535 => 'EventId' }, + 'eventid' => { 124 => [\'Event','EventEventID'], 537 => 'EventId' }, 'eventlatestdate' => { 124 => [\'Event','EventLatestDate'] }, 'eventmonth' => { 124 => [\'Event','EventMonth'] }, - 'eventnumber' => { 416 => 0x9, 417 => 0x37, 418 => 0x3a }, + 'eventnumber' => { 418 => 0x9, 419 => 0x37, 420 => 0x3a }, 'eventparenteventid' => { 124 => [\'Event','EventParentEventID'] }, 'eventremarks' => { 124 => [\'Event','EventEventRemarks'] }, 'eventsamplesizeunit' => { 124 => [\'Event','EventSampleSizeUnit'] }, 'eventsamplesizevalue' => { 124 => [\'Event','EventSampleSizeValue'] }, 'eventsamplingeffort' => { 124 => [\'Event','EventSamplingEffort'] }, 'eventsamplingprotocol' => { 124 => [\'Event','EventSamplingProtocol'] }, - 'eventstart' => { 539 => 'eventStart' }, + 'eventstart' => { 541 => 'eventStart' }, 'eventstartdayofyear' => { 124 => [\'Event','EventStartDayOfYear'] }, - 'eventsubtype' => { 539 => 'eventSubtype' }, + 'eventsubtype' => { 541 => 'eventSubtype' }, 'eventtime' => { 124 => [\'Event','EventEventTime'] }, - 'eventtype' => { 539 => 'eventType' }, + 'eventtype' => { 541 => 'eventType' }, 'eventverbatimeventdate' => { 124 => [\'Event','EventVerbatimEventDate'] }, 'eventyear' => { 124 => [\'Event','EventYear'] }, 'evfgrid' => { 325 => 0x15f, 326 => 0x165, 327 => 0x165, 328 => 0x17d }, @@ -2782,35 +2785,35 @@ my %tagLookup = ( 'evfwarmdisplaymode' => { 326 => 0x24b, 327 => 0x24b, 328 => 0x263 }, 'evsteps' => { 370 => '1.2', 372 => 0x0 }, 'evstepsize' => { 314 => '5.1', 315 => '6.1', 316 => '6.1', 320 => '0.7' }, - 'exclusivecoverage' => { 509 => 'ExclusiveCoverage' }, - 'exclusivityenddate' => { 543 => 'exclusivityEndDate' }, + 'exclusivecoverage' => { 511 => 'ExclusiveCoverage' }, + 'exclusivityenddate' => { 545 => 'exclusivityEndDate' }, 'excursiontolerance' => { 140 => 0x82 }, - 'executiveproducer' => { 407 => "\xa9xpd" }, + 'executiveproducer' => { 408 => "\xa9xpd" }, 'exif' => { 126 => 'EXIF' }, 'exifbyteorder' => { 126 => 'ExifByteOrder' }, 'exifcamerainfo' => { 138 => 0xe8 }, - 'exifimageheight' => { 125 => 0xa003, 527 => 'PixelYDimension' }, - 'exifimagewidth' => { 125 => 0xa002, 527 => 'PixelXDimension' }, + 'exifimageheight' => { 125 => 0xa003, 529 => 'PixelYDimension' }, + 'exifimagewidth' => { 125 => 0xa002, 529 => 'PixelXDimension' }, 'exifunicodebyteorder' => { 126 => 'ExifUnicodeByteOrder' }, - 'exifversion' => { 125 => 0x9000, 527 => 'ExifVersion' }, + 'exifversion' => { 125 => 0x9000, 529 => 'ExifVersion' }, 'exitpupilposition' => { 236 => 0x4, 237 => 0x4, 241 => 0x4 }, - 'expirationdate' => { 138 => 0x25, 543 => 'expirationDate' }, + 'expirationdate' => { 138 => 0x25, 545 => 'expirationDate' }, 'expirationtime' => { 138 => 0x26 }, - 'exposure' => { 125 => 0xfe51, 521 => 'Exposure', 523 => 'Exposure' }, - 'exposure2012' => { 521 => 'Exposure2012', 523 => 'Exposure2012' }, + 'exposure' => { 125 => 0xfe51, 523 => 'Exposure', 525 => 'Exposure' }, + 'exposure2012' => { 523 => 'Exposure2012', 525 => 'Exposure2012' }, 'exposureadj' => { 300 => 0x0 }, 'exposureadj2' => { 300 => 0x12 }, - 'exposureadjust' => { 432 => 0xc }, + 'exposureadjust' => { 434 => 0xc }, 'exposurebracketingindicatorlast' => { 191 => 0x52 }, - 'exposurebracketshotnumber' => { 194 => 0x2d, 453 => 0x2f }, + 'exposurebracketshotnumber' => { 194 => 0x2d, 455 => 0x2f }, 'exposurebracketstepsize' => { 370 => 0x8 }, 'exposurebracketvalue' => { 243 => 0x19 }, 'exposurecompautocancel' => { 90 => 0x113 }, - 'exposurecompensation' => { 82 => 0x6, 99 => 0x0, 125 => 0x9204, 147 => 0x24, 163 => 'ExposureComp', 183 => 'ExposureCompensation', 188 => 0xd, 189 => 0x53, 190 => 0x1e, 194 => 0x49c0, 335 => 0x1006, 390 => 0x16, 399 => 0x402, 429 => 0xa013, 432 => [0xc,0x35,0x4d], 465 => 0x114c, 466 => 0x114c, 467 => 0x1128, 469 => 0x1180, 470 => 0x1038, 471 => 0x230, 472 => 0x230, 473 => 0x223, 527 => 'ExposureBiasValue' }, - 'exposurecompensation2' => { 461 => [0x24,0x26,0x2a] }, + 'exposurecompensation' => { 82 => 0x6, 99 => 0x0, 125 => 0x9204, 147 => 0x24, 163 => 'ExposureComp', 183 => 'ExposureCompensation', 188 => 0xd, 189 => 0x53, 190 => 0x1e, 194 => 0x49c0, 335 => 0x1006, 390 => 0x16, 399 => 0x402, 431 => 0xa013, 434 => [0xc,0x35,0x4d], 467 => 0x114c, 468 => 0x114c, 469 => 0x1128, 471 => 0x1180, 472 => 0x1038, 473 => 0x230, 474 => 0x230, 475 => 0x223, 529 => 'ExposureBiasValue' }, + 'exposurecompensation2' => { 463 => [0x24,0x26,0x2a] }, 'exposurecompensationbutton' => { 253 => 0x794 }, 'exposurecompensationmode' => { 191 => 0x47, 194 => 0x2a }, - 'exposurecompensationset' => { 442 => 0x3, 443 => 0x3, 444 => 0x3, 461 => 0x1e }, + 'exposurecompensationset' => { 444 => 0x3, 445 => 0x3, 446 => 0x3, 463 => 0x1e }, 'exposurecompensationsetting' => { 191 => 0x1 }, 'exposurecompstepsize' => { 309 => '6.3', 310 => '7.3', 312 => '7.3', 313 => '7.3', 318 => '4.3', 322 => '7.3', 323 => '7.3' }, 'exposurecontrolstep' => { 317 => '6.1', 319 => '6.1' }, @@ -2824,23 +2827,23 @@ my %tagLookup = ( 'exposuregainflash' => { 145 => 0x89b }, 'exposuregainfluorescent' => { 145 => 0x89a }, 'exposuregaintungsten' => { 145 => 0x899 }, - 'exposureindex' => { 125 => 0xa215, 527 => 'ExposureIndex' }, + 'exposureindex' => { 125 => 0xa215, 529 => 'ExposureIndex' }, 'exposureindicator' => { 191 => 0x50 }, - 'exposurelevelincrements' => { 88 => 0x6, 89 => 0x6, 90 => 0x101, 91 => 0x5, 92 => 0x6, 93 => 0x5, 94 => 0x5, 95 => 0x6, 96 => 0x4, 442 => 0x58, 443 => 0x58 }, - 'exposurelockused' => { 507 => 'ExposureLockUsed' }, - 'exposuremode' => { 125 => 0xa402, 163 => 'ExposureMode', 188 => 0x1, 189 => 0xa, 190 => 0x0, 191 => 0x0, 194 => 0x34, 330 => 0x200, 351 => 0x40d, 432 => 0x8, 456 => 0xb041, 527 => 'ExposureMode' }, + 'exposurelevelincrements' => { 88 => 0x6, 89 => 0x6, 90 => 0x101, 91 => 0x5, 92 => 0x6, 93 => 0x5, 94 => 0x5, 95 => 0x6, 96 => 0x4, 444 => 0x58, 445 => 0x58 }, + 'exposurelockused' => { 509 => 'ExposureLockUsed' }, + 'exposuremode' => { 125 => 0xa402, 163 => 'ExposureMode', 188 => 0x1, 189 => 0xa, 190 => 0x0, 191 => 0x0, 194 => 0x34, 330 => 0x200, 351 => 0x40d, 434 => 0x8, 458 => 0xb041, 529 => 'ExposureMode' }, 'exposuremodeinmanual' => { 90 => 0x10b }, - 'exposureprogram' => { 125 => 0x8822, 422 => 0x1001, 435 => [0x17e,0x43], 442 => 0x3c, 443 => 0x3c, 444 => 0x5, 448 => 0x14, 453 => 0x3f, 461 => 0x2, 465 => 0x1175, 466 => 0x1179, 467 => 0x1155, 468 => 0x11d1, 469 => 0x11ad, 470 => 0x1065, 471 => 0x25d, 472 => 0x25d, 473 => 0x24c, 484 => 0xb, 485 => 0xc, 486 => 0xb, 488 => 0x48, 527 => 'ExposureProgram' }, + 'exposureprogram' => { 125 => 0x8822, 424 => 0x1001, 437 => [0x17e,0x43], 444 => 0x3c, 445 => 0x3c, 446 => 0x5, 450 => 0x14, 455 => 0x3f, 463 => 0x2, 467 => 0x1175, 468 => 0x1179, 469 => 0x1155, 470 => 0x11d1, 471 => 0x11ad, 472 => 0x1065, 473 => 0x25d, 474 => 0x25d, 475 => 0x24c, 486 => 0xb, 487 => 0xc, 488 => 0xb, 490 => 0x48, 529 => 'ExposureProgram' }, 'exposureshift' => { 330 => 0x203 }, - 'exposurestandardadjustment' => { 456 => 0x202d }, - 'exposuretime' => { 7 => 0x4, 8 => 0x4, 9 => 0x4, 10 => 0x4, 11 => 0x4, 12 => 0x4, 13 => 0x4, 14 => 0x4, 15 => 0x4, 16 => 0x4, 17 => 0x4, 18 => 0x4, 19 => 0x4, 20 => 0x4, 21 => 0x4, 22 => 0x4, 23 => 0x4, 24 => 0x4, 25 => 0x4, 26 => 0x4, 27 => 0x4, 28 => 0x4, 29 => 0x4, 31 => 0x6, 32 => 0x7, 82 => 0x16, 125 => 0x829a, 144 => 0xfd05, 147 => 0x20, 149 => 0xfa24, 151 => 0xf104, 154 => 0x12, 156 => 0x38, 158 => 0x14, 159 => 0x10, 161 => 0x10, 163 => 'ExposureTime', 188 => 0x9, 189 => 0x35, 190 => 0x48, 191 => 0x8, 194 => 0x49b8, 390 => 0x12, 429 => 0xa018, 432 => [0x32,0x4a], 442 => 0x0, 443 => 0x0, 461 => [0x21,0x23,0x27], 488 => 0x10, 527 => 'ExposureTime' }, - 'exposuretime2' => { 432 => [0x33,0x4b] }, + 'exposurestandardadjustment' => { 458 => 0x202d }, + 'exposuretime' => { 7 => 0x4, 8 => 0x4, 9 => 0x4, 10 => 0x4, 11 => 0x4, 12 => 0x4, 13 => 0x4, 14 => 0x4, 15 => 0x4, 16 => 0x4, 17 => 0x4, 18 => 0x4, 19 => 0x4, 20 => 0x4, 21 => 0x4, 22 => 0x4, 23 => 0x4, 24 => 0x4, 25 => 0x4, 26 => 0x4, 27 => 0x4, 28 => 0x4, 29 => 0x4, 31 => 0x6, 32 => 0x7, 82 => 0x16, 125 => 0x829a, 144 => 0xfd05, 147 => 0x20, 149 => 0xfa24, 151 => 0xf104, 154 => 0x12, 156 => 0x38, 158 => 0x14, 159 => 0x10, 161 => 0x10, 163 => 'ExposureTime', 188 => 0x9, 189 => 0x35, 190 => 0x48, 191 => 0x8, 194 => 0x49b8, 390 => 0x12, 431 => 0xa018, 434 => [0x32,0x4a], 444 => 0x0, 445 => 0x0, 463 => [0x21,0x23,0x27], 490 => 0x10, 529 => 'ExposureTime' }, + 'exposuretime2' => { 434 => [0x33,0x4b] }, 'exposuretuning' => { 243 => 0x1c }, 'exposurevalue' => { 145 => 0x3 }, 'exposurewarning' => { 133 => 0x1302 }, 'exrauto' => { 133 => 0x1033 }, 'exrmode' => { 133 => 0x1034 }, - 'extdescraccessibility' => { 534 => 'ExtDescrAccessibility' }, + 'extdescraccessibility' => { 536 => 'ExtDescrAccessibility' }, 'extendedmenubanks' => { 249 => 0x120, 250 => 0x120, 251 => 0x114, 252 => 0x124, 253 => 0x124 }, 'extendedshutterspeeds' => { 325 => 0xf2, 326 => 0x102, 327 => 0x102, 328 => 0x118 }, 'extendedwbdetect' => { 330 => 0x902 }, @@ -2868,9 +2871,9 @@ my %tagLookup = ( 'externalflashstatus' => { 225 => '8.2' }, 'externalflashzoom' => { 333 => 0x1205, 335 => 0x1027 }, 'externalflashzoomoverride' => { 225 => '8.1' }, - 'externalmetadatalink' => { 535 => 'ExternalMetadataLink' }, + 'externalmetadatalink' => { 537 => 'ExternalMetadataLink' }, 'externalsensorbrightnessvalue' => { 349 => 0x311, 352 => 0x311, 353 => 0x311, 356 => 0x3408 }, - 'extrainfoversion' => { 446 => 0x1a }, + 'extrainfoversion' => { 448 => 0x1a }, 'eyedetection' => { 2 => 0x18 }, 'eyestartaf' => { 191 => 0x40 }, 'fac100per' => { 145 => 0xe94 }, @@ -2896,7 +2899,7 @@ my %tagLookup = ( 'face18size' => { 375 => 0x22 }, 'face19position' => { 374 => 0x24 }, 'face19size' => { 375 => 0x24 }, - 'face1position' => { 58 => 0x8, 116 => 0xd, 117 => 0x18, 219 => 0x4, 346 => 0x1, 374 => 0x0, 419 => 0xbc, 449 => 0x1, 450 => 0x0, 451 => 0x0, 452 => 0x5b }, + 'face1position' => { 58 => 0x8, 116 => 0xd, 117 => 0x18, 219 => 0x4, 346 => 0x1, 374 => 0x0, 421 => 0xbc, 451 => 0x1, 452 => 0x0, 453 => 0x0, 454 => 0x5b }, 'face1size' => { 375 => 0x0 }, 'face20position' => { 374 => 0x26 }, 'face20size' => { 375 => 0x26 }, @@ -2918,7 +2921,7 @@ my %tagLookup = ( 'face28size' => { 375 => 0x36 }, 'face29position' => { 374 => 0x38 }, 'face29size' => { 375 => 0x38 }, - 'face2position' => { 58 => 0xa, 116 => 0x7c, 117 => 0x4c, 219 => 0x8, 346 => 0x5, 374 => 0x2, 419 => 0xc8, 449 => 0x6, 450 => 0x20, 451 => 0x25, 452 => 0x65 }, + 'face2position' => { 58 => 0xa, 116 => 0x7c, 117 => 0x4c, 219 => 0x8, 346 => 0x5, 374 => 0x2, 421 => 0xc8, 451 => 0x6, 452 => 0x20, 453 => 0x25, 454 => 0x65 }, 'face2size' => { 375 => 0x2 }, 'face30position' => { 374 => 0x3a }, 'face30size' => { 375 => 0x3a }, @@ -2926,43 +2929,43 @@ my %tagLookup = ( 'face31size' => { 375 => 0x3c }, 'face32position' => { 374 => 0x3e }, 'face32size' => { 375 => 0x3e }, - 'face3position' => { 58 => 0xc, 116 => 0xeb, 117 => 0x80, 219 => 0xc, 346 => 0x9, 374 => 0x4, 419 => 0xd4, 449 => 0xb, 450 => 0x40, 451 => 0x4a, 452 => 0x6f }, + 'face3position' => { 58 => 0xc, 116 => 0xeb, 117 => 0x80, 219 => 0xc, 346 => 0x9, 374 => 0x4, 421 => 0xd4, 451 => 0xb, 452 => 0x40, 453 => 0x4a, 454 => 0x6f }, 'face3size' => { 375 => 0x4 }, - 'face4position' => { 58 => 0xe, 116 => 0x15a, 117 => 0xb4, 219 => 0x10, 346 => 0xd, 374 => 0x6, 419 => 0xe0, 449 => 0x10, 450 => 0x60, 451 => 0x6f, 452 => 0x79 }, + 'face4position' => { 58 => 0xe, 116 => 0x15a, 117 => 0xb4, 219 => 0x10, 346 => 0xd, 374 => 0x6, 421 => 0xe0, 451 => 0x10, 452 => 0x60, 453 => 0x6f, 454 => 0x79 }, 'face4size' => { 375 => 0x6 }, - 'face5position' => { 58 => 0x10, 116 => 0x1c9, 117 => 0xe8, 219 => 0x14, 346 => 0x11, 374 => 0x8, 419 => 0xec, 449 => 0x15, 450 => 0x80, 451 => 0x94 }, + 'face5position' => { 58 => 0x10, 116 => 0x1c9, 117 => 0xe8, 219 => 0x14, 346 => 0x11, 374 => 0x8, 421 => 0xec, 451 => 0x15, 452 => 0x80, 453 => 0x94 }, 'face5size' => { 375 => 0x8 }, - 'face6position' => { 58 => 0x12, 116 => 0x238, 117 => 0x11c, 219 => 0x18, 374 => 0xa, 419 => 0xf8, 449 => 0x1a, 450 => 0xa0, 451 => 0xb9 }, + 'face6position' => { 58 => 0x12, 116 => 0x238, 117 => 0x11c, 219 => 0x18, 374 => 0xa, 421 => 0xf8, 451 => 0x1a, 452 => 0xa0, 453 => 0xb9 }, 'face6size' => { 375 => 0xa }, - 'face7position' => { 58 => 0x14, 116 => 0x2a7, 117 => 0x150, 219 => 0x1c, 374 => 0xc, 419 => 0x104, 449 => 0x1f, 450 => 0xc0, 451 => 0xde }, + 'face7position' => { 58 => 0x14, 116 => 0x2a7, 117 => 0x150, 219 => 0x1c, 374 => 0xc, 421 => 0x104, 451 => 0x1f, 452 => 0xc0, 453 => 0xde }, 'face7size' => { 375 => 0xc }, - 'face8position' => { 58 => 0x16, 116 => 0x316, 117 => 0x184, 219 => 0x20, 374 => 0xe, 419 => 0x110, 449 => 0x24, 450 => 0xe0, 451 => 0x103 }, + 'face8position' => { 58 => 0x16, 116 => 0x316, 117 => 0x184, 219 => 0x20, 374 => 0xe, 421 => 0x110, 451 => 0x24, 452 => 0xe0, 453 => 0x103 }, 'face8size' => { 375 => 0xe }, 'face9position' => { 58 => 0x18, 116 => 0x385, 117 => 0x1b8, 219 => 0x24, 374 => 0x10 }, 'face9size' => { 375 => 0x10 }, - 'facebalanceorigi' => { 514 => 'FaceBalanceOrigI' }, - 'facebalanceorigq' => { 514 => 'FaceBalanceOrigQ' }, - 'facebalancestrength' => { 514 => 'FaceBalanceStrength' }, - 'facebalancewarmth' => { 514 => 'FaceBalanceWarmth' }, - 'facedetect' => { 390 => 0x76, 429 => 0x100 }, + 'facebalanceorigi' => { 516 => 'FaceBalanceOrigI' }, + 'facebalanceorigq' => { 516 => 'FaceBalanceOrigQ' }, + 'facebalancestrength' => { 516 => 'FaceBalanceStrength' }, + 'facebalancewarmth' => { 516 => 'FaceBalanceWarmth' }, + 'facedetect' => { 390 => 0x76, 431 => 0x100 }, 'facedetectarea' => { 334 => 0x1201 }, 'facedetectframecrop' => { 334 => 0x1207 }, - 'facedetectframesize' => { 58 => 0x3, 116 => 0x1, 117 => 0x4, 219 => 0x1, 334 => 0x1203, 390 => 0x77, 419 => 0xb6 }, - 'facedetection' => { 444 => 0x30, 461 => 0x19 }, + 'facedetectframesize' => { 58 => 0x3, 116 => 0x1, 117 => 0x4, 219 => 0x1, 334 => 0x1203, 390 => 0x77, 421 => 0xb6 }, + 'facedetection' => { 446 => 0x30, 463 => 0x19 }, 'faceelementpositions' => { 133 => 0x4203 }, 'faceelementselected' => { 133 => 0x4005 }, 'faceelementtypes' => { 133 => 0x4201 }, - 'faceid' => { 517 => 'FaceID' }, + 'faceid' => { 519 => 'FaceID' }, 'faceinfounknown' => { 119 => 0x2089 }, - 'facename' => { 429 => 0x123 }, + 'facename' => { 431 => 0x123 }, 'faceorientation' => { 117 => 0x8 }, - 'faceposition' => { 373 => 0x2, 430 => 0x4 }, + 'faceposition' => { 373 => 0x2, 432 => 0x4 }, 'facepositions' => { 133 => 0x4103 }, - 'facerecognition' => { 429 => 0x120 }, - 'facesdetected' => { 58 => 0x2, 59 => 0x2, 60 => 0x3, 116 => 0x0, 117 => 0x2, 119 => 0x211c, 133 => 0x4100, 219 => 0x3, 334 => 0x1200, 354 => 0x3f, 373 => 0x0, 419 => 0xb5, 430 => 0x0, 449 => 0x0, 452 => 0x3, 464 => 0x30 }, + 'facerecognition' => { 431 => 0x120 }, + 'facesdetected' => { 58 => 0x2, 59 => 0x2, 60 => 0x3, 116 => 0x0, 117 => 0x2, 119 => 0x211c, 133 => 0x4100, 219 => 0x3, 334 => 0x1200, 354 => 0x3f, 373 => 0x0, 421 => 0xb5, 432 => 0x0, 451 => 0x0, 454 => 0x3, 466 => 0x30 }, 'facesrecognized' => { 347 => 0x0 }, 'facewidth' => { 59 => 0x1 }, - 'fade' => { 456 => 0x2034 }, + 'fade' => { 458 => 0x2034 }, 'faithfuloutputhighlightpoint' => { 115 => 0x38 }, 'faithfuloutputshadowpoint' => { 115 => 0x39 }, 'faithfulrawcolortone' => { 115 => 0x31 }, @@ -2977,33 +2980,33 @@ my %tagLookup = ( 'faithfulunsharpmaskfineness' => { 115 => 0xac }, 'faithfulunsharpmaskstrength' => { 115 => 0xaa }, 'faithfulunsharpmaskthreshold' => { 115 => 0xae }, - 'far' => { 504 => 'Far' }, + 'far' => { 506 => 'Far' }, 'fastresetlinetime' => { 145 => 0x1860 }, - 'feedidentifier' => { 535 => 'FeedIdentifier' }, + 'feedidentifier' => { 537 => 'FeedIdentifier' }, 'femicroadjustment' => { 90 => 0x111 }, - 'ffid' => { 525 => 'ffid' }, - 'field' => { 539 => 'field' }, + 'ffid' => { 527 => 'ffid' }, + 'field' => { 541 => 'field' }, 'fieldcount' => { 335 => 0x103f }, - 'fieldofview' => { 415 => "FOV\x00" }, + 'fieldofview' => { 416 => "FOV\x00" }, 'fifoenonepixeldelay' => { 145 => 0x1901 }, 'filecreatedate' => { 126 => 'FileCreateDate' }, - 'filedatarate' => { 550 => 'fileDataRate' }, - 'fileformat' => { 101 => 0x0, 139 => 0x14, 432 => [0x22,0x26], 456 => 0xb000 }, + 'filedatarate' => { 552 => 'fileDataRate' }, + 'fileformat' => { 101 => 0x0, 139 => 0x14, 434 => [0x22,0x26], 458 => 0xb000 }, 'filegroupid' => { 126 => 'FileGroupID' }, 'fileindex' => { 7 => 0x143, 9 => 0x2d0, 11 => 0x172, 13 => 0x22c, 14 => 0x133, 15 => 0x13f, 16 => 0x1d3, 17 => 0x19b, 18 => 0x1e4, 19 => 0xd0, 20 => 0x1bb, 21 => 0x28c, 22 => 0x1db, 23 => 0x1d9, 24 => [0x270,0x274], 25 => 0x2aa, 26 => 0x2b3, 28 => 0x1eb, 29 => 0x4ae, 30 => 0xb2d, 355 => 0x0 }, 'fileindex2' => { 21 => 0x290 }, 'filemodifydate' => { 126 => 'FileModifyDate' }, 'filename' => { 126 => 'FileName' }, 'filenameasdelivered' => { 340 => 'FileNameAsDelivered' }, - 'filenumber' => { 61 => 0x1, 69 => 0x8, 103 => 0x1817, 120 => 'Canon-FileNumber', 220 => 0x4, 418 => 0x10 }, + 'filenumber' => { 61 => 0x1, 69 => 0x8, 103 => 0x1817, 120 => 'Canon-FileNumber', 220 => 0x4, 420 => 0x10 }, 'filenumbermemory' => { 188 => 0x1a }, 'filenumbersequence' => { 309 => '12.2', 314 => '3.1', 315 => '4.1', 316 => '4.1', 318 => '11.1', 319 => '4.3', 324 => '5.2', 325 => 0x4e, 326 => 0x48, 327 => 0x48, 328 => 0x48 }, 'filepermissions' => { 126 => 'FilePermissions' }, - 'filesource' => { 125 => 0xa300, 133 => 0x8000, 527 => 'FileSource' }, + 'filesource' => { 125 => 0xa300, 133 => 0x8000, 529 => 'FileSource' }, 'fileuserid' => { 126 => 'FileUserID' }, 'fileversion' => { 139 => 0x16 }, 'fillflashautoreduction' => { 88 => 0xe, 89 => 0xe, 96 => 0xa }, - 'filllight' => { 521 => 'FillLight', 523 => 'FillLight' }, + 'filllight' => { 523 => 'FillLight', 525 => 'FillLight' }, 'fillorder' => { 125 => 0x10a }, 'filmgraineffect' => { 330 => 0x538 }, 'filmmode' => { 133 => 0x1401, 351 => 0x412, 354 => 0x42 }, @@ -3031,22 +3034,22 @@ my %tagLookup = ( 'finishnoise' => { 145 => 0xdba }, 'finishresolution' => { 145 => 0xdb9 }, 'finishsharpening' => { 145 => 0xdbb }, - 'firmware' => { 335 => 0x405, 432 => [0x8c,0x17,0x3b], 518 => 'Firmware' }, - 'firmware2' => { 432 => 0x57 }, - 'firmwaredate' => { 118 => 0x15, 119 => 0x2001, 416 => 0x4, 418 => 0x30 }, + 'firmware' => { 335 => 0x405, 434 => [0x8c,0x17,0x3b], 520 => 'Firmware' }, + 'firmware2' => { 434 => 0x57 }, + 'firmwaredate' => { 118 => 0x15, 119 => 0x2001, 418 => 0x4, 420 => 0x30 }, 'firmwareid' => { 195 => 0x0 }, - 'firmwarename' => { 429 => 0xa001 }, - 'firmwarerevision' => { 19 => 0xa4, 69 => 0x1e, 420 => 0x0 }, - 'firmwarerevision2' => { 420 => 0xc }, - 'firmwareversion' => { 7 => 0x10b, 11 => 0x136, 14 => 0xff, 15 => 0x107, 145 => [0x415,0xce5], 161 => 0x57, 163 => 'FirmwareVersion', 352 => 0x320, 354 => 0x2, 356 => 0x3109, 390 => 0x230, 415 => ['CNFV','FIRM','info'], 417 => 0x18, 418 => 0x2a, 422 => 0x2 }, + 'firmwarename' => { 431 => 0xa001 }, + 'firmwarerevision' => { 19 => 0xa4, 69 => 0x1e, 422 => 0x0 }, + 'firmwarerevision2' => { 422 => 0xc }, + 'firmwareversion' => { 7 => 0x10b, 11 => 0x136, 14 => 0xff, 15 => 0x107, 145 => [0x415,0xce5], 161 => 0x57, 163 => 'FirmwareVersion', 352 => 0x320, 354 => 0x2, 356 => 0x3109, 390 => 0x230, 416 => ['CNFV','FIRM','info'], 419 => 0x18, 420 => 0x2a, 424 => 0x2 }, 'firmwareversions' => { 399 => 0x301 }, - 'firstphotodate' => { 507 => 'FirstPhotoDate' }, + 'firstphotodate' => { 509 => 'FirstPhotoDate' }, 'firstpublicationdate' => { 340 => 'FirstPublicationDate' }, - 'fixtureidentifier' => { 138 => 0x16, 515 => 'FixtureIdentifier' }, - 'flash' => { 120 => 'XMP-Flash', 125 => 0x9209, 159 => 0x22, 189 => 0x1f, 190 => 0x15, 418 => 0x5a, 527 => 'Flash' }, - 'flashaction' => { 442 => 0x3e, 443 => 0x3e, 456 => 0x2017, 461 => [0x2a,0x2c,0x30] }, - 'flashaction2' => { 442 => 0x4c, 443 => 0x4c, 461 => 0x77 }, - 'flashactionexternal' => { 461 => [0x78,0x7c] }, + 'fixtureidentifier' => { 138 => 0x16, 517 => 'FixtureIdentifier' }, + 'flash' => { 120 => 'XMP-Flash', 125 => 0x9209, 159 => 0x22, 189 => 0x1f, 190 => 0x15, 420 => 0x5a, 529 => 'Flash' }, + 'flashaction' => { 444 => 0x3e, 445 => 0x3e, 458 => 0x2017, 463 => [0x2a,0x2c,0x30] }, + 'flashaction2' => { 444 => 0x4c, 445 => 0x4c, 463 => 0x77 }, + 'flashactionexternal' => { 463 => [0x78,0x7c] }, 'flashactivity' => { 37 => 0x1c }, 'flashbatterylevel' => { 48 => 0x249 }, 'flashbias' => { 354 => 0x24 }, @@ -3056,32 +3059,32 @@ my %tagLookup = ( 'flashchargelevel' => { 335 => 0x1010 }, 'flashcolorfilter' => { 223 => 0x10, 224 => 0x10, 226 => 0x10 }, 'flashcommandermode' => { 221 => '9.1', 222 => '9.1', 223 => '9.1', 224 => '9.1', 226 => '9.1' }, - 'flashcompensation' => { 145 => 0x3f3, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 225 => 0xa, 226 => 0xa, 518 => 'FlashCompensation' }, - 'flashcontrol' => { 442 => 0x23, 443 => 0x1f, 444 => 0x21 }, + 'flashcompensation' => { 145 => 0x3f3, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 225 => 0xa, 226 => 0xa, 520 => 'FlashCompensation' }, + 'flashcontrol' => { 444 => 0x23, 445 => 0x1f, 446 => 0x21 }, 'flashcontrolbuilt-in' => { 318 => '16.1', 319 => '23.1', 321 => '23.1', 322 => '24.1' }, 'flashcontrolmode' => { 221 => '9.2', 222 => '9.2', 223 => '9.2', 224 => '9.2', 226 => '9.2', 232 => 0x214, 247 => 0x2d4, 248 => 0x148, 249 => 0x1b8, 250 => 0x1b8, 251 => 0x1a8, 252 => 0x1bc, 253 => 0x1bc, 330 => 0x404 }, 'flashcurtain' => { 354 => 0x48 }, 'flashdefault' => { 191 => 0x42 }, 'flashdevice' => { 335 => 0x1005 }, 'flashdistance' => { 119 => 0x2034 }, - 'flashenergy' => { 125 => 0xa20b, 527 => 'FlashEnergy' }, + 'flashenergy' => { 125 => 0xa20b, 529 => 'FlashEnergy' }, 'flashexposurebracketvalue' => { 243 => 0x18 }, - 'flashexposurecomp' => { 82 => 0xf, 133 => 0x1011, 166 => 'ExposureComp', 188 => 0x23, 193 => 0x104, 194 => 0x49c1, 243 => 0x12, 330 => 0x401, 335 => 0x1023, 390 => 0x4d, 422 => 0x100b, 432 => [0x3a,0x56], 456 => 0x104 }, + 'flashexposurecomp' => { 82 => 0xf, 133 => 0x1011, 166 => 'ExposureComp', 188 => 0x23, 193 => 0x104, 194 => 0x49c1, 243 => 0x12, 330 => 0x401, 335 => 0x1023, 390 => 0x4d, 424 => 0x100b, 434 => [0x3a,0x56], 458 => 0x104 }, 'flashexposurecomp2' => { 289 => 0x4d2 }, 'flashexposurecomp3' => { 223 => 0x1d }, 'flashexposurecomp4' => { 223 => 0x27 }, 'flashexposurecomparea' => { 310 => '38.4', 312 => '38.4', 313 => '38.4', 322 => '38.4', 323 => '38.4', 325 => 0x5d, 326 => 0x59, 327 => 0x59, 328 => 0x59 }, - 'flashexposurecompset' => { 191 => 0x10, 362 => 0xe, 442 => 0x14, 443 => 0x12, 444 => 0x23, 461 => 0x1f }, - 'flashexposurecompset2' => { 461 => [0x26,0x2c] }, + 'flashexposurecompset' => { 191 => 0x10, 362 => 0xe, 444 => 0x14, 445 => 0x12, 446 => 0x23, 463 => 0x1f }, + 'flashexposurecompset2' => { 463 => [0x26,0x2c] }, 'flashexposureindicator' => { 191 => 0x54 }, 'flashexposureindicatorlast' => { 191 => 0x56 }, 'flashexposureindicatornext' => { 191 => 0x55 }, 'flashexposurelock' => { 61 => 0x19 }, - 'flashfired' => { 147 => 0x5d, 166 => 'Fired', 188 => 0x14, 288 => '590.3', 527 => [\'Flash','FlashFired'] }, + 'flashfired' => { 147 => 0x5d, 166 => 'Fired', 188 => 0x14, 288 => '590.3', 529 => [\'Flash','FlashFired'] }, 'flashfiring' => { 90 => 0x306, 91 => 0x6, 92 => 0x7, 95 => 0x7 }, 'flashfirmwareversion' => { 331 => 0x1002 }, 'flashfocallength' => { 221 => 0xb, 222 => 0xc, 223 => 0xc, 224 => 0xc, 225 => 0xc, 226 => 0x26 }, - 'flashfunction' => { 194 => 0x31, 527 => [\'Flash','FlashFunction'] }, + 'flashfunction' => { 194 => 0x31, 529 => [\'Flash','FlashFunction'] }, 'flashgndistance' => { 221 => 0xe, 222 => 0xf, 223 => 0xf, 224 => 0xf, 225 => 0xf, 226 => 0xf, 232 => 0x21a, 247 => 0x2da, 248 => 0x14e, 251 => 0x1ae, 252 => 0x1c2, 253 => 0x1c2 }, 'flashgroupacompensation' => { 221 => 0x11, 222 => 0x12, 223 => 0x13, 224 => 0x28, 225 => 0x28, 226 => 0x28 }, 'flashgroupacontrolmode' => { 221 => 0xf, 222 => '16.1', 223 => '17.1', 224 => '17.1', 225 => '17.1', 226 => '17.1' }, @@ -3095,7 +3098,7 @@ my %tagLookup = ( 'flashguidenumber' => { 82 => 0xd, 100 => 0x0, 166 => 'GuideNumber' }, 'flashilluminationpattern' => { 226 => 0x25 }, 'flashintensity' => { 118 => [0x19,0x5], 330 => 0x405 }, - 'flashlevel' => { 311 => 0x9, 456 => 0xb048 }, + 'flashlevel' => { 311 => 0x9, 458 => 0xb048 }, 'flashmake' => { 166 => 'Make' }, 'flashmanufacturer' => { 185 => 'FlashManufacturer' }, 'flashmastercompensation' => { 232 => 0x22e, 247 => 0x2ee, 248 => 0x162, 251 => 0x1aa, 252 => 0x1be, 253 => 0x1be }, @@ -3104,33 +3107,33 @@ my %tagLookup = ( 'flashmetering' => { 188 => 0x3f, 191 => 0x1c }, 'flashmeteringmode' => { 7 => 0x15, 13 => 0x15, 14 => 0x15, 15 => 0x15, 16 => 0x15, 17 => 0x15, 18 => 0x15, 20 => 0x15, 22 => 0x15, 28 => 0x15 }, 'flashmeteringsegments' => { 390 => 0x20a }, - 'flashmode' => { 118 => 0x4, 145 => 0x3f2, 147 => 0x5c, 158 => 0x27, 166 => 'Mode', 188 => 0x2, 189 => 0x20, 190 => 0x16, 191 => 0xf, 243 => 0x87, 330 => 0x400, 335 => 0x1004, 390 => 0xc, 397 => 0x4, 421 => 0x20, 422 => 0x100a, 431 => 0x225, 442 => 0x13, 443 => 0x7f, 444 => 0x20, 461 => 0x10, 465 => 0x1138, 466 => 0x1138, 467 => 0x1114, 468 => 0x1190, 469 => 0x116c, 470 => 0x1024, 471 => 0x21c, 472 => 0x21c, 473 => 0x211, 527 => [\'Flash','FlashMode'] }, + 'flashmode' => { 118 => 0x4, 145 => 0x3f2, 147 => 0x5c, 158 => 0x27, 166 => 'Mode', 188 => 0x2, 189 => 0x20, 190 => 0x16, 191 => 0xf, 243 => 0x87, 330 => 0x400, 335 => 0x1004, 390 => 0xc, 397 => 0x4, 423 => 0x20, 424 => 0x100a, 433 => 0x225, 444 => 0x13, 445 => 0x7f, 446 => 0x20, 463 => 0x10, 467 => 0x1138, 468 => 0x1138, 469 => 0x1114, 470 => 0x1190, 471 => 0x116c, 472 => 0x1024, 473 => 0x21c, 474 => 0x21c, 475 => 0x211, 529 => [\'Flash','FlashMode'] }, 'flashmodebutton' => { 253 => 0x80e }, 'flashmodebuttonplaybackmode' => { 253 => 0x818 }, 'flashmodel' => { 166 => 'Model', 185 => 'FlashModel', 331 => 0x1001 }, 'flashoptions' => { 370 => 0x2 }, 'flashoptions2' => { 370 => 0x10 }, 'flashoutput' => { 48 => 0x248, 82 => 0x21, 221 => 0xa, 222 => 0xa, 223 => 0xa, 224 => 0x27, 226 => 0x21, 232 => 0x21e, 247 => 0x2de, 248 => 0x152, 251 => 0x1b2, 252 => 0x1c6, 253 => 0x1c6 }, - 'flashpixversion' => { 125 => 0xa000, 527 => 'FlashpixVersion' }, - 'flashredeyemode' => { 527 => [\'Flash','FlashRedEyeMode'] }, + 'flashpixversion' => { 125 => 0xa000, 529 => 'FlashpixVersion' }, + 'flashredeyemode' => { 529 => [\'Flash','FlashRedEyeMode'] }, 'flashremotecontrol' => { 232 => 0x228, 247 => 0x2e8, 248 => 0x15c, 251 => 0x1bc, 330 => 0x403 }, - 'flashreturn' => { 527 => [\'Flash','FlashReturn'] }, + 'flashreturn' => { 529 => [\'Flash','FlashReturn'] }, 'flashserialnumber' => { 166 => 'SerialNumber', 331 => 0x1003 }, 'flashsetting' => { 243 => 0x8 }, 'flashshutterspeed' => { 309 => '20.2', 310 => '23.2', 312 => '23.2', 313 => '23.2', 318 => '15.2', 319 => '22.2', 320 => '7.2', 321 => '22.2', 322 => '23.2', 323 => '23.2', 324 => '23.1', 325 => 0x5b, 326 => 0x57, 327 => 0x57, 328 => 0x57 }, 'flashsource' => { 221 => 0x4, 222 => 0x4, 223 => 0x4, 224 => 0x4, 225 => 0x4, 226 => 0x4 }, - 'flashstatus' => { 377 => 0x0, 461 => [0x82,0x86], 475 => 0x31, 476 => 0x39, 477 => 0x39 }, - 'flashstatusbuilt-in' => { 444 => [0x87,0x287] }, - 'flashstatusexternal' => { 444 => [0x88,0x288] }, + 'flashstatus' => { 377 => 0x0, 463 => [0x82,0x86], 477 => 0x31, 478 => 0x39, 479 => 0x39 }, + 'flashstatusbuilt-in' => { 446 => [0x87,0x287] }, + 'flashstatusexternal' => { 446 => [0x88,0x288] }, 'flashsyncspeed' => { 309 => '20.1', 310 => '23.1', 312 => '23.1', 313 => '23.1', 318 => '15.1', 319 => '22.1', 321 => '22.1', 322 => '23.1', 323 => '23.1', 325 => 0x57, 326 => 0x53, 327 => 0x53, 328 => 0x53 }, 'flashsyncspeedav' => { 88 => 0x3, 90 => 0x10f, 91 => 0x2, 92 => 0x3, 93 => 0x2, 94 => 0x2, 95 => 0x3, 96 => 0x6 }, 'flashthreshold' => { 100 => 0x1 }, 'flashtype' => { 166 => 'Type', 191 => 0x59, 243 => 0x9, 331 => 0x1000 }, 'flashwarning' => { 319 => '30.1', 320 => '7.1', 324 => '31.1', 354 => 0x62 }, 'flashwirelessoption' => { 232 => 0x234, 247 => 0x2e6, 248 => 0x15a, 251 => 0x1c8 }, - 'flexiblespotposition' => { 456 => 0x201d }, + 'flexiblespotposition' => { 458 => 0x201d }, 'flickadvancedirection' => { 326 => 0x25f, 327 => 0x25f, 328 => 0x277 }, - 'flickerreduce' => { 431 => 0x218 }, + 'flickerreduce' => { 433 => 0x218 }, 'flickerreduction' => { 133 => 0x1446, 272 => 0x7 }, 'flickerreductionindicator' => { 267 => 0x532 }, 'flickerreductionshooting' => { 247 => 0x2d0, 249 => 0x1b4, 250 => 0x1b4, 251 => 0x1a4, 252 => 0x1b8, 253 => 0x1b8 }, @@ -3141,40 +3144,40 @@ my %tagLookup = ( 'flightyspeed' => { 122 => 'FlightYSpeed' }, 'flightzspeed' => { 122 => 'FlightZSpeed' }, 'fliphorizontal' => { 302 => 0x76a43206 }, - 'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 31 => 0x5, 32 => 0x6, 82 => 0x15, 125 => 0x829d, 144 => 0xfd04, 147 => 0x1e, 149 => 0xfa23, 151 => 0xf103, 154 => 0x13, 156 => 0x3c, 158 => 0x1c, 159 => 0x18, 161 => 0xc, 170 => 'FNumber', 188 => 0xa, 189 => 0x36, 190 => 0x47, 191 => 0x9, 194 => 0x49c7, 241 => 0x38, 353 => 0x35a, 390 => 0x13, 429 => 0xa019, 432 => [0x31,0x49], 442 => 0x1, 443 => 0x1, 461 => [0x20,0x22,0x26], 527 => 'FNumber' }, - 'focaldistance' => { 505 => 'FocalDistance' }, - 'focallength' => { 7 => 0x1d, 8 => 0xa, 9 => 0x23, 10 => 0x9, 11 => 0x1d, 12 => 0x9, 13 => 0x1e, 14 => 0x1d, 15 => 0x1d, 16 => 0x1e, 17 => 0x1e, 18 => 0x1e, 19 => 0x28, 20 => 0x1e, 21 => 0x23, 22 => 0x1e, 23 => 0x1e, 24 => 0x23, 25 => 0x23, 26 => 0x23, 27 => 0x23, 28 => 0x1e, 29 => 0x23, 63 => 0x1, 66 => 0x7, 119 => 0x1d, 125 => 0x920a, 154 => 0x1d, 170 => 'FocalLength', 188 => 0x12, 236 => 0xa, 237 => 0xb, 241 => [0xc,0x3c], 348 => 0x1, 390 => 0x1d, 399 => 0x403, 422 => 0x1500, 441 => 0xe, 469 => 0x1278, 470 => 0x1134, 471 => 0x32c, 472 => 0x32c, 473 => 0x30a, 527 => 'FocalLength' }, - 'focallength2' => { 461 => [0x23,0x25,0x29] }, + 'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 31 => 0x5, 32 => 0x6, 82 => 0x15, 125 => 0x829d, 144 => 0xfd04, 147 => 0x1e, 149 => 0xfa23, 151 => 0xf103, 154 => 0x13, 156 => 0x3c, 158 => 0x1c, 159 => 0x18, 161 => 0xc, 170 => 'FNumber', 188 => 0xa, 189 => 0x36, 190 => 0x47, 191 => 0x9, 194 => 0x49c7, 241 => 0x38, 353 => 0x35a, 390 => 0x13, 431 => 0xa019, 434 => [0x31,0x49], 444 => 0x1, 445 => 0x1, 463 => [0x20,0x22,0x26], 529 => 'FNumber' }, + 'focaldistance' => { 507 => 'FocalDistance' }, + 'focallength' => { 7 => 0x1d, 8 => 0xa, 9 => 0x23, 10 => 0x9, 11 => 0x1d, 12 => 0x9, 13 => 0x1e, 14 => 0x1d, 15 => 0x1d, 16 => 0x1e, 17 => 0x1e, 18 => 0x1e, 19 => 0x28, 20 => 0x1e, 21 => 0x23, 22 => 0x1e, 23 => 0x1e, 24 => 0x23, 25 => 0x23, 26 => 0x23, 27 => 0x23, 28 => 0x1e, 29 => 0x23, 63 => 0x1, 66 => 0x7, 119 => 0x1d, 125 => 0x920a, 154 => 0x1d, 170 => 'FocalLength', 188 => 0x12, 236 => 0xa, 237 => 0xb, 241 => [0xc,0x3c], 348 => 0x1, 390 => 0x1d, 399 => 0x403, 424 => 0x1500, 443 => 0xe, 471 => 0x1278, 472 => 0x1134, 473 => 0x32c, 474 => 0x32c, 475 => 0x30a, 529 => 'FocalLength' }, + 'focallength2' => { 463 => [0x23,0x25,0x29] }, 'focallength35mm' => { 344 => 'FocalLength35mm' }, - 'focallengthin35mmformat' => { 125 => 0xa405, 429 => 0xa01a, 527 => 'FocalLengthIn35mmFilm' }, - 'focallengthtelezoom' => { 441 => 0x10 }, - 'focalplaneafpointarea' => { 474 => 0x2 }, - 'focalplaneafpointlocation1' => { 474 => 0x6 }, - 'focalplaneafpointlocation10' => { 474 => 0x2a }, - 'focalplaneafpointlocation11' => { 474 => 0x2e }, - 'focalplaneafpointlocation12' => { 474 => 0x32 }, - 'focalplaneafpointlocation13' => { 474 => 0x36 }, - 'focalplaneafpointlocation14' => { 474 => 0x3a }, - 'focalplaneafpointlocation15' => { 474 => 0x3e }, - 'focalplaneafpointlocation2' => { 474 => 0xa }, - 'focalplaneafpointlocation3' => { 474 => 0xe }, - 'focalplaneafpointlocation4' => { 474 => 0x12 }, - 'focalplaneafpointlocation5' => { 474 => 0x16 }, - 'focalplaneafpointlocation6' => { 474 => 0x1a }, - 'focalplaneafpointlocation7' => { 474 => 0x1e }, - 'focalplaneafpointlocation8' => { 474 => 0x22 }, - 'focalplaneafpointlocation9' => { 474 => 0x26 }, - 'focalplaneafpointsused' => { 474 => 0x1 }, + 'focallengthin35mmformat' => { 125 => 0xa405, 417 => 'camera.focal_length.35mm_equivalent', 431 => 0xa01a, 529 => 'FocalLengthIn35mmFilm' }, + 'focallengthtelezoom' => { 443 => 0x10 }, + 'focalplaneafpointarea' => { 476 => 0x2 }, + 'focalplaneafpointlocation1' => { 476 => 0x6 }, + 'focalplaneafpointlocation10' => { 476 => 0x2a }, + 'focalplaneafpointlocation11' => { 476 => 0x2e }, + 'focalplaneafpointlocation12' => { 476 => 0x32 }, + 'focalplaneafpointlocation13' => { 476 => 0x36 }, + 'focalplaneafpointlocation14' => { 476 => 0x3a }, + 'focalplaneafpointlocation15' => { 476 => 0x3e }, + 'focalplaneafpointlocation2' => { 476 => 0xa }, + 'focalplaneafpointlocation3' => { 476 => 0xe }, + 'focalplaneafpointlocation4' => { 476 => 0x12 }, + 'focalplaneafpointlocation5' => { 476 => 0x16 }, + 'focalplaneafpointlocation6' => { 476 => 0x1a }, + 'focalplaneafpointlocation7' => { 476 => 0x1e }, + 'focalplaneafpointlocation8' => { 476 => 0x22 }, + 'focalplaneafpointlocation9' => { 476 => 0x26 }, + 'focalplaneafpointsused' => { 476 => 0x1 }, 'focalplanediagonal' => { 331 => 0x103, 335 => 0x205 }, - 'focalplaneresolutionunit' => { 125 => 0xa210, 527 => 'FocalPlaneResolutionUnit' }, - 'focalplanexresolution' => { 125 => 0xa20e, 527 => 'FocalPlaneXResolution' }, + 'focalplaneresolutionunit' => { 125 => 0xa210, 529 => 'FocalPlaneResolutionUnit' }, + 'focalplanexresolution' => { 125 => 0xa20e, 529 => 'FocalPlaneXResolution' }, 'focalplanexsize' => { 63 => 0x2 }, 'focalplanexunknown' => { 63 => 0x2 }, - 'focalplaneyresolution' => { 125 => 0xa20f, 527 => 'FocalPlaneYResolution' }, + 'focalplaneyresolution' => { 125 => 0xa20f, 529 => 'FocalPlaneYResolution' }, 'focalplaneysize' => { 63 => 0x3 }, 'focalplaneyunknown' => { 63 => 0x3 }, - 'focalpointx' => { 505 => 'FocalPointX' }, - 'focalpointy' => { 505 => 'FocalPointY' }, + 'focalpointx' => { 507 => 'FocalPointX' }, + 'focalpointy' => { 507 => 'FocalPointY' }, 'focaltype' => { 10 => 0x2d, 63 => 0x0 }, 'focalunits' => { 37 => 0x19 }, 'focus' => { 291 => 0x8 }, @@ -3192,13 +3195,13 @@ my %tagLookup = ( 'focusholdbutton' => { 191 => 0x44 }, 'focusinfoversion' => { 333 => 0x0 }, 'focusingscreen' => { 89 => 0x0, 90 => 0x80b, 95 => 0x0 }, - 'focuslocation' => { 456 => 0x2027 }, - 'focuslocation2' => { 456 => 0x204a }, + 'focuslocation' => { 458 => 0x2027 }, + 'focuslocation2' => { 458 => 0x204a }, 'focuslocked' => { 187 => 0x14 }, - 'focusmode' => { 37 => 0x7, 118 => 0x3, 119 => [0x3003,0xd], 133 => 0x1021, 145 => 0x3f5, 147 => 0x38, 163 => 'FocusMode', 188 => 0x30, 190 => 0xe, 191 => 0xc, 243 => 0x7, 330 => 0x301, 335 => 0x100b, 354 => 0x7, 390 => 0xd, 397 => 0x3, 422 => 0x1006, 435 => [0xb,0x5], 441 => [0x15,0x1d], 442 => 0x4d, 443 => 0x4d, 456 => [0xb042,0xb04e,0x201b], 461 => 0x13, 482 => 0x16 }, - 'focusmode2' => { 132 => '0.1', 370 => '3.1', 461 => [0x2c,0x2e,0x32] }, - 'focusmodesetting' => { 311 => '10.1', 439 => 0x14, 440 => 0x15, 442 => 0x10, 443 => 0xf, 444 => 0x6 }, - 'focusmodeswitch' => { 191 => 0x58, 442 => 0x2e }, + 'focusmode' => { 37 => 0x7, 118 => 0x3, 119 => [0x3003,0xd], 133 => 0x1021, 145 => 0x3f5, 147 => 0x38, 163 => 'FocusMode', 188 => 0x30, 190 => 0xe, 191 => 0xc, 243 => 0x7, 330 => 0x301, 335 => 0x100b, 354 => 0x7, 390 => 0xd, 397 => 0x3, 424 => 0x1006, 437 => [0xb,0x5], 443 => [0x15,0x1d], 444 => 0x4d, 445 => 0x4d, 458 => [0xb042,0xb04e,0x201b], 463 => 0x13, 484 => 0x16 }, + 'focusmode2' => { 132 => '0.1', 370 => '3.1', 463 => [0x2c,0x2e,0x32] }, + 'focusmodesetting' => { 311 => '10.1', 441 => 0x14, 442 => 0x15, 444 => 0x10, 445 => 0xf, 446 => 0x6 }, + 'focusmodeswitch' => { 191 => 0x58, 444 => 0x2e }, 'focuspeakingdisplay' => { 325 => 0x22f, 326 => 0x235, 327 => 0x235, 328 => 0x24d }, 'focuspeakinghighlightcolor' => { 325 => 0x53, 326 => 0x4b, 327 => 0x4b, 328 => 0x4b }, 'focuspeakinglevel' => { 325 => 0x51, 326 => 0x49, 327 => 0x49, 328 => 0x49 }, @@ -3206,23 +3209,23 @@ my %tagLookup = ( 'focuspointlock' => { 326 => 0x1d3, 327 => 0x1d3, 328 => 0x1eb }, 'focuspointpersistence' => { 325 => 0xf5, 326 => 0x105, 327 => 0x105, 328 => 0x11b }, 'focuspointwrap' => { 309 => '2.2', 310 => '2.2', 312 => '2.1', 313 => '2.1', 317 => '1.1', 318 => '2.2', 319 => '1.1', 322 => '2.2', 323 => '2.1', 324 => '2.5', 325 => 0x16, 326 => 0x16, 327 => 0x16, 328 => 0x16 }, - 'focusposition' => { 1 => 0x2f, 236 => 0x8, 237 => 0x8, 390 => 0x10, 453 => 0x9bb }, - 'focusposition2' => { 461 => [0x29,0x2b,0x2f], 482 => 0x2d, 485 => 0x20 }, - 'focuspositionhorizontal' => { 200 => 0x2f, 201 => 0x43 }, - 'focuspositionvertical' => { 200 => 0x31, 201 => 0x45 }, + 'focusposition' => { 1 => 0x2f, 236 => 0x8, 237 => 0x8, 390 => 0x10, 455 => 0x9bb }, + 'focusposition2' => { 463 => [0x29,0x2b,0x2f], 484 => 0x2d, 487 => 0x20 }, + 'focuspositionhorizontal' => { 200 => 0x2f }, + 'focuspositionvertical' => { 200 => 0x31 }, 'focusprocess' => { 330 => 0x302 }, 'focusrange' => { 37 => 0x12, 335 => 0x100a }, 'focusrangeindex' => { 380 => '3.1' }, 'focusresult' => { 201 => 0x4a }, 'focusringrotation' => { 90 => 0x713 }, - 'focussetting' => { 432 => 0x6 }, + 'focussetting' => { 434 => 0x6 }, 'focusshiftautoreset' => { 252 => 0x6da, 253 => 0x748 }, 'focusshiftexposurelock' => { 232 => 0x1b4, 247 => 0x224, 248 => 0xe8, 249 => 0x100, 250 => 0x100, 251 => 0xf4, 252 => 0x104, 253 => 0x104 }, 'focusshiftinterval' => { 232 => 0x1b0, 247 => 0x220, 248 => 0xe4, 249 => 0xfc, 250 => 0xfc, 251 => 0xf0, 252 => 0x100, 253 => 0x100 }, 'focusshiftnumbershots' => { 232 => 0x1a8, 247 => 0x218, 248 => 0xdc, 249 => 0xf4, 250 => 0xf4, 251 => 0xe8, 252 => 0xf8, 253 => 0xf8 }, 'focusshiftshooting' => { 270 => 0x20 }, 'focusshiftstepwidth' => { 232 => 0x1ac, 247 => 0x21c, 248 => 0xe0, 249 => 0xf8, 250 => 0xf8, 251 => 0xec, 252 => 0xfc, 253 => 0xfc }, - 'focusstatus' => { 441 => 0x19, 442 => 0x53, 443 => 0x53 }, + 'focusstatus' => { 443 => 0x19, 444 => 0x53, 445 => 0x53 }, 'focusstepcount' => { 333 => 0x301, 335 => 0x100e }, 'focusstepinfinity' => { 333 => 0x303, 335 => 0x103b }, 'focusstepnear' => { 333 => 0x304, 335 => 0x103c }, @@ -3230,19 +3233,19 @@ my %tagLookup = ( 'focustrackinglockon' => { 309 => ['1.5','4.1'], 310 => '1.4', 317 => '0.4', 318 => '3.1', 319 => '0.4', 322 => '1.4' }, 'focuswarning' => { 133 => 0x1301 }, 'foldername' => { 188 => 0x27 }, - 'foldernumber' => { 442 => 0x9a, 444 => [0x402,0x114,0x316] }, - 'fontcomposite' => { 555 => [\'Fonts','FontsComposite'] }, - 'fontface' => { 555 => [\'Fonts','FontsFontFace'] }, - 'fontfamily' => { 555 => [\'Fonts','FontsFontFamily'] }, - 'fontfilename' => { 555 => [\'Fonts','FontsFontFileName'] }, - 'fontname' => { 555 => [\'Fonts','FontsFontName'] }, - 'fonts' => { 555 => 'Fonts' }, - 'fonttype' => { 555 => [\'Fonts','FontsFontType'] }, - 'fontversion' => { 555 => [\'Fonts','FontsVersionString'] }, + 'foldernumber' => { 444 => 0x9a, 446 => [0x402,0x114,0x316] }, + 'fontcomposite' => { 557 => [\'Fonts','FontsComposite'] }, + 'fontface' => { 557 => [\'Fonts','FontsFontFace'] }, + 'fontfamily' => { 557 => [\'Fonts','FontsFontFamily'] }, + 'fontfilename' => { 557 => [\'Fonts','FontsFontFileName'] }, + 'fontname' => { 557 => [\'Fonts','FontsFontName'] }, + 'fonts' => { 557 => 'Fonts' }, + 'fonttype' => { 557 => [\'Fonts','FontsFontType'] }, + 'fontversion' => { 557 => [\'Fonts','FontsVersionString'] }, 'for' => { 406 => 'For' }, 'forcewrite' => { 126 => 'ForceWrite' }, - 'format' => { 415 => "\xa9fmt", 504 => 'Format', 524 => 'format', 548 => 'Format' }, - 'forwardlock' => { 545 => 'forwardlock' }, + 'format' => { 416 => "\xa9fmt", 506 => 'Format', 526 => 'format', 550 => 'Format' }, + 'forwardlock' => { 547 => 'forwardlock' }, 'forwardmatrix1' => { 125 => 0xc714 }, 'forwardmatrix2' => { 125 => 0xc715 }, 'forwardmatrix3' => { 125 => 0xcd34 }, @@ -3253,20 +3256,20 @@ my %tagLookup = ( 'framenum' => { 401 => 0xd7 }, 'framenumber' => { 133 => 0x8003, 194 => 0x3c, 390 => 0x29 }, 'framerate' => { 72 => [0x1,0x6], 125 => 0xc764, 133 => 0x3820 }, - 'framereadouttime' => { 409 => 'camera.framereadouttimeinmicroseconds' }, + 'framereadouttime' => { 417 => 'camera.framereadouttimeinmicroseconds' }, 'framewidth' => { 133 => 0x3821 }, - 'framing' => { 539 => 'framing' }, + 'framing' => { 541 => 'framing' }, 'freebytes' => { 103 => 0x1 }, 'freememorycardimages' => { 189 => [0x37,0x54], 190 => [0x2d,0x4a], 191 => 0x32 }, 'fujiflashmode' => { 133 => 0x1010 }, 'fujimodel' => { 133 => 0x1447 }, 'fujimodel2' => { 133 => 0x1448 }, - 'fullframerateplaybackintent' => { 409 => 'full-frame-rate-playback-intent' }, + 'fullframerateplaybackintent' => { 410 => 'full-frame-rate-playback-intent' }, 'fullhdhighspeedrec' => { 133 => 0x3824 }, - 'fullimagesize' => { 456 => 0xb02b }, - 'fullpanoheightpixels' => { 507 => 'FullPanoHeightPixels', 508 => 'FullPanoHeightPixels' }, - 'fullpanowidthpixels' => { 507 => 'FullPanoWidthPixels', 508 => 'FullPanoWidthPixels' }, - 'fullpresssnap' => { 422 => 0x100d }, + 'fullimagesize' => { 458 => 0xb02b }, + 'fullpanoheightpixels' => { 509 => 'FullPanoHeightPixels', 510 => 'FullPanoHeightPixels' }, + 'fullpanowidthpixels' => { 509 => 'FullPanoWidthPixels', 510 => 'FullPanoWidthPixels' }, + 'fullpresssnap' => { 424 => 0x100d }, 'fullsizeimage' => { 169 => 'data' }, 'fullsizeimagename' => { 169 => '1Name' }, 'fullsizeimagetype' => { 169 => '0Type' }, @@ -3284,10 +3287,10 @@ my %tagLookup = ( 'funcbuttonplusdials' => { 309 => ['14.2','15.2'], 310 => '14.2', 318 => '31.1', 322 => '42.1' }, 'functionbutton' => { 316 => '13.1', 320 => '5.2' }, 'gainbase' => { 334 => 0x610 }, - 'gaincontrol' => { 125 => 0xa407, 527 => 'GainControl' }, - 'gainmapmax' => { 532 => 'GainMapMax' }, - 'gainmapmin' => { 532 => 'GainMapMin' }, - 'gamma' => { 125 => 0xa500, 145 => 0x8fe, 341 => 'gAMA', 359 => 0x11c, 528 => 'Gamma', 532 => 'Gamma' }, + 'gaincontrol' => { 125 => 0xa407, 529 => 'GainControl' }, + 'gainmapmax' => { 534 => 'GainMapMax' }, + 'gainmapmin' => { 534 => 'GainMapMin' }, + 'gamma' => { 125 => 0xa500, 145 => 0x8fe, 341 => 'gAMA', 359 => 0x11c, 530 => 'Gamma', 534 => 'Gamma' }, 'gammablackpoint' => { 111 => 0xc }, 'gammacolortone' => { 111 => 0x3 }, 'gammacompensatedvalue' => { 140 => 0x91 }, @@ -3303,20 +3306,20 @@ my %tagLookup = ( 'gammaunsharpmaskstrength' => { 111 => 0x5 }, 'gammaunsharpmaskthreshold' => { 111 => 0x7 }, 'gammawhitepoint' => { 111 => 0xd }, - 'garminsettings' => { 415 => 'pmcc' }, - 'garminsoftware' => { 415 => 'uuid' }, + 'garminsettings' => { 416 => 'pmcc' }, + 'garminsoftware' => { 416 => 'uuid' }, 'gdalmetadata' => { 125 => 0xa480 }, 'gdalnodata' => { 125 => 0xa481 }, 'geimagesize' => { 133 => 0x1304 }, 'gemake' => { 135 => 0x300 }, 'gemodel' => { 135 => 0x207 }, - 'genre' => { 407 => ['gnre',"\xa9gen"], 409 => 'genre', 415 => ['gnre',"\xa9gen"], 535 => 'Genre', 540 => 'genre', 550 => 'genre' }, - 'genrecvid' => { 535 => [\'Genre','GenreCvId'] }, - 'genrecvtermid' => { 535 => [\'Genre','GenreCvTermId'] }, - 'genrecvtermname' => { 535 => [\'Genre','GenreCvTermName'] }, - 'genrecvtermrefinedabout' => { 535 => [\'Genre','GenreCvTermRefinedAbout'] }, - 'genreid' => { 407 => 'geID' }, - 'geography' => { 541 => 'geography' }, + 'genre' => { 408 => ['gnre',"\xa9gen"], 410 => 'genre', 416 => ['gnre',"\xa9gen"], 537 => 'Genre', 542 => 'genre', 552 => 'genre' }, + 'genrecvid' => { 537 => [\'Genre','GenreCvId'] }, + 'genrecvtermid' => { 537 => [\'Genre','GenreCvTermId'] }, + 'genrecvtermname' => { 537 => [\'Genre','GenreCvTermName'] }, + 'genrecvtermrefinedabout' => { 537 => [\'Genre','GenreCvTermRefinedAbout'] }, + 'genreid' => { 408 => 'geID' }, + 'geography' => { 543 => 'geography' }, 'geolocate' => { 126 => 'Geolocate' }, 'geologicalcontext' => { 124 => 'GeologicalContext' }, 'geologicalcontextbed' => { 124 => [\'GeologicalContext','GeologicalContextBed'] }, @@ -3330,273 +3333,273 @@ my %tagLookup = ( 'geotiffdirectory' => { 125 => 0x87af }, 'geotiffdoubleparams' => { 125 => 0x87b0 }, 'geotime' => { 126 => 'Geotime' }, - 'giftftppriority' => { 509 => 'GIFTFtpPriority' }, + 'giftftppriority' => { 511 => 'GIFTFtpPriority' }, 'gimbalpitchdegree' => { 122 => 'GimbalPitchDegree' }, 'gimbalreverse' => { 122 => 'GimbalReverse' }, 'gimbalrolldegree' => { 122 => 'GimbalRollDegree' }, 'gimbalyawdegree' => { 122 => 'GimbalYawDegree' }, 'globalaltitude' => { 404 => 0x419 }, 'globalangle' => { 404 => 0x40d }, - 'good' => { 550 => 'good' }, - 'googlehostheader' => { 407 => 'gshh' }, - 'googlepingmessage' => { 407 => 'gspm' }, - 'googlepingurl' => { 407 => 'gspu' }, + 'good' => { 552 => 'good' }, + 'googlehostheader' => { 408 => 'gshh' }, + 'googlepingmessage' => { 408 => 'gspm' }, + 'googlepingurl' => { 408 => 'gspu' }, 'googleplusuploadcode' => { 125 => 0x9009 }, - 'googlesourcedata' => { 407 => 'gssd' }, - 'googlestarttime' => { 407 => 'gsst' }, - 'googletrackduration' => { 407 => 'gstd' }, - 'goprotype' => { 415 => 'GoPr' }, - 'gpsaltitude' => { 137 => 0x6, 167 => 'Altitude', 527 => 'GPSAltitude' }, - 'gpsaltituderef' => { 137 => 0x5, 527 => 'GPSAltitudeRef' }, - 'gpsareainformation' => { 137 => 0x1c, 527 => 'GPSAreaInformation' }, - 'gpscoordinates' => { 407 => "\xa9xyz", 409 => 'location.ISO6709', 415 => ['@xyz',"\xa9xyz"] }, + 'googlesourcedata' => { 408 => 'gssd' }, + 'googlestarttime' => { 408 => 'gsst' }, + 'googletrackduration' => { 408 => 'gstd' }, + 'goprotype' => { 416 => 'GoPr' }, + 'gpsaltitude' => { 137 => 0x6, 167 => 'Altitude', 529 => 'GPSAltitude' }, + 'gpsaltituderef' => { 137 => 0x5, 529 => 'GPSAltitudeRef' }, + 'gpsareainformation' => { 137 => 0x1c, 529 => 'GPSAreaInformation' }, + 'gpscoordinates' => { 408 => "\xa9xyz", 410 => 'location.ISO6709', 416 => ['@xyz',"\xa9xyz"] }, 'gpsdatestamp' => { 137 => 0x1d }, - 'gpsdatetime' => { 167 => 'DateTime', 527 => 'GPSTimeStamp' }, - 'gpsdestbearing' => { 137 => 0x18, 167 => 'Bearing', 527 => 'GPSDestBearing' }, - 'gpsdestbearingref' => { 137 => 0x17, 527 => 'GPSDestBearingRef' }, - 'gpsdestdistance' => { 137 => 0x1a, 167 => 'Distance', 527 => 'GPSDestDistance' }, - 'gpsdestdistanceref' => { 137 => 0x19, 527 => 'GPSDestDistanceRef' }, - 'gpsdestlatitude' => { 137 => 0x14, 527 => 'GPSDestLatitude' }, + 'gpsdatetime' => { 167 => 'DateTime', 529 => 'GPSTimeStamp' }, + 'gpsdestbearing' => { 137 => 0x18, 167 => 'Bearing', 529 => 'GPSDestBearing' }, + 'gpsdestbearingref' => { 137 => 0x17, 529 => 'GPSDestBearingRef' }, + 'gpsdestdistance' => { 137 => 0x1a, 167 => 'Distance', 529 => 'GPSDestDistance' }, + 'gpsdestdistanceref' => { 137 => 0x19, 529 => 'GPSDestDistanceRef' }, + 'gpsdestlatitude' => { 137 => 0x14, 529 => 'GPSDestLatitude' }, 'gpsdestlatituderef' => { 137 => 0x13 }, - 'gpsdestlongitude' => { 137 => 0x16, 527 => 'GPSDestLongitude' }, + 'gpsdestlongitude' => { 137 => 0x16, 529 => 'GPSDestLongitude' }, 'gpsdestlongituderef' => { 137 => 0x15 }, - 'gpsdifferential' => { 137 => 0x1e, 167 => 'Differential', 527 => 'GPSDifferential' }, - 'gpsdop' => { 137 => 0xb, 527 => 'GPSDOP' }, - 'gpshpositioningerror' => { 137 => 0x1f, 527 => 'GPSHPositioningError' }, - 'gpsimgdirection' => { 137 => 0x11, 527 => 'GPSImgDirection' }, - 'gpsimgdirectionref' => { 137 => 0x10, 527 => 'GPSImgDirectionRef' }, - 'gpslatitude' => { 120 => 'GPS-GPSLatitude', 122 => 'GpsLatitude', 137 => 0x2, 167 => 'Latitude', 527 => 'GPSLatitude' }, + 'gpsdifferential' => { 137 => 0x1e, 167 => 'Differential', 529 => 'GPSDifferential' }, + 'gpsdop' => { 137 => 0xb, 529 => 'GPSDOP' }, + 'gpshpositioningerror' => { 137 => 0x1f, 529 => 'GPSHPositioningError' }, + 'gpsimgdirection' => { 137 => 0x11, 529 => 'GPSImgDirection' }, + 'gpsimgdirectionref' => { 137 => 0x10, 529 => 'GPSImgDirectionRef' }, + 'gpslatitude' => { 120 => 'GPS-GPSLatitude', 122 => 'GpsLatitude', 137 => 0x2, 167 => 'Latitude', 529 => 'GPSLatitude' }, 'gpslatituderef' => { 137 => 0x1 }, - 'gpslongitude' => { 120 => 'GPS-GPSLongitude', 122 => 'GpsLongitude', 137 => 0x4, 167 => 'Longitude', 527 => 'GPSLongitude' }, + 'gpslongitude' => { 120 => 'GPS-GPSLongitude', 122 => 'GpsLongitude', 137 => 0x4, 167 => 'Longitude', 529 => 'GPSLongitude' }, 'gpslongituderef' => { 137 => 0x3 }, 'gpslongtitude' => { 122 => 'GpsLongtitude' }, - 'gpsmapdatum' => { 137 => 0x12, 167 => 'Datum', 527 => 'GPSMapDatum' }, - 'gpsmeasuremode' => { 137 => 0xa, 167 => 'MeasureMode', 527 => 'GPSMeasureMode' }, + 'gpsmapdatum' => { 137 => 0x12, 167 => 'Datum', 529 => 'GPSMapDatum' }, + 'gpsmeasuremode' => { 137 => 0xa, 167 => 'MeasureMode', 529 => 'GPSMeasureMode' }, 'gpsposition' => { 120 => 'Exif-GPSPosition' }, - 'gpsprocessingmethod' => { 137 => 0x1b, 527 => 'GPSProcessingMethod' }, - 'gpssatellites' => { 137 => 0x8, 167 => 'Satellites', 527 => 'GPSSatellites' }, - 'gpsspeed' => { 137 => 0xd, 167 => 'Speed', 527 => 'GPSSpeed' }, - 'gpsspeedref' => { 137 => 0xc, 527 => 'GPSSpeedRef' }, - 'gpsstatus' => { 137 => 0x9, 527 => 'GPSStatus' }, + 'gpsprocessingmethod' => { 137 => 0x1b, 529 => 'GPSProcessingMethod' }, + 'gpssatellites' => { 137 => 0x8, 167 => 'Satellites', 529 => 'GPSSatellites' }, + 'gpsspeed' => { 137 => 0xd, 167 => 'Speed', 529 => 'GPSSpeed' }, + 'gpsspeedref' => { 137 => 0xc, 529 => 'GPSSpeedRef' }, + 'gpsstatus' => { 137 => 0x9, 529 => 'GPSStatus' }, 'gpsstring' => { 145 => 0x402 }, 'gpstimestamp' => { 137 => 0x7 }, - 'gpstrack' => { 137 => 0xf, 167 => 'Heading', 527 => 'GPSTrack' }, - 'gpstrackref' => { 137 => 0xe, 527 => 'GPSTrackRef' }, - 'gpsversionid' => { 137 => 0x0, 527 => 'GPSVersionID' }, + 'gpstrack' => { 137 => 0xf, 167 => 'Heading', 529 => 'GPSTrack' }, + 'gpstrackref' => { 137 => 0xe, 529 => 'GPSTrackRef' }, + 'gpsversionid' => { 137 => 0x0, 529 => 'GPSVersionID' }, 'gradation' => { 330 => 0x50f }, - 'gradientbasedcorractive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'] }, - 'gradientbasedcorramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'] }, - 'gradientbasedcorrblacks2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'] }, - 'gradientbasedcorrbrightness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'] }, - 'gradientbasedcorrclarity' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'] }, - 'gradientbasedcorrclarity2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'] }, - 'gradientbasedcorrcontrast' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'] }, - 'gradientbasedcorrcontrast2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'] }, - 'gradientbasedcorrcorrectionname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'] }, - 'gradientbasedcorrcorrectionsyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'] }, - 'gradientbasedcorrdefringe' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'] }, - 'gradientbasedcorrdehaze' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'] }, - 'gradientbasedcorrections' => { 521 => 'GradientBasedCorrections', 523 => 'GradientBasedCorrections' }, - 'gradientbasedcorrexposure' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'] }, - 'gradientbasedcorrexposure2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'] }, - 'gradientbasedcorrhighlights2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'] }, - 'gradientbasedcorrhue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'] }, - 'gradientbasedcorrluminancenoise' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'] }, - 'gradientbasedcorrmaskalpha' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'] }, - 'gradientbasedcorrmaskangle' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'] }, - 'gradientbasedcorrmaskbottom' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'] }, - 'gradientbasedcorrmaskcentervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'] }, - 'gradientbasedcorrmaskcenterweight' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'gradientbasedcorrmaskdabs' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'] }, - 'gradientbasedcorrmaskfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'] }, - 'gradientbasedcorrmaskflipped' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'] }, - 'gradientbasedcorrmaskflow' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'] }, - 'gradientbasedcorrmaskfullx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'] }, - 'gradientbasedcorrmaskfully' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'] }, - 'gradientbasedcorrmaskinputdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'] }, - 'gradientbasedcorrmaskleft' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'] }, - 'gradientbasedcorrmaskmaskactive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'] }, - 'gradientbasedcorrmaskmaskblendmode' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'gradientbasedcorrmaskmaskdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'gradientbasedcorrmaskmaskinverted' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'gradientbasedcorrmaskmaskname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'] }, - 'gradientbasedcorrmaskmasks' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'] }, - 'gradientbasedcorrmaskmasksalpha' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'gradientbasedcorrmaskmasksangle' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'gradientbasedcorrmaskmasksbottom' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'gradientbasedcorrmaskmaskscentervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'gradientbasedcorrmaskmaskscenterweight' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'gradientbasedcorrmaskmasksdabs' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'gradientbasedcorrmaskmasksfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'gradientbasedcorrmaskmasksflipped' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'gradientbasedcorrmaskmasksflow' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'gradientbasedcorrmaskmasksfullx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'gradientbasedcorrmaskmasksfully' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'gradientbasedcorrmaskmasksinputdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'gradientbasedcorrmaskmasksleft' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'gradientbasedcorrmaskmasksmaskactive' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'gradientbasedcorrmaskmasksmaskblendmode' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'gradientbasedcorrmaskmasksmaskdigest' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'gradientbasedcorrmaskmasksmaskinverted' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'gradientbasedcorrmaskmasksmaskname' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'gradientbasedcorrmaskmasksmasksubtype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'gradientbasedcorrmaskmasksmasksyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'gradientbasedcorrmaskmasksmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'gradientbasedcorrmaskmasksmidpoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'gradientbasedcorrmaskmasksorigin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'gradientbasedcorrmaskmasksperimetervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'gradientbasedcorrmaskmasksradius' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'gradientbasedcorrmaskmasksreferencepoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'gradientbasedcorrmaskmasksright' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'] }, - 'gradientbasedcorrmaskmasksroundness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'gradientbasedcorrmaskmaskssizex' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'gradientbasedcorrmaskmaskssizey' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'gradientbasedcorrmaskmaskstop' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'] }, - 'gradientbasedcorrmaskmasksubtype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'gradientbasedcorrmaskmasksvalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'gradientbasedcorrmaskmasksversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'gradientbasedcorrmaskmaskswhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'gradientbasedcorrmaskmaskswholeimagearea' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'gradientbasedcorrmaskmasksx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'] }, - 'gradientbasedcorrmaskmasksy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'] }, - 'gradientbasedcorrmaskmasksyncid' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'gradientbasedcorrmaskmaskszerox' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'gradientbasedcorrmaskmaskszeroy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'gradientbasedcorrmaskmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'gradientbasedcorrmaskmidpoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'] }, - 'gradientbasedcorrmaskorigin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'] }, - 'gradientbasedcorrmaskperimetervalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'gradientbasedcorrmaskradius' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'] }, - 'gradientbasedcorrmaskrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'gradientbasedcorrmaskrangeareamodels' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'gradientbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'gradientbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'gradientbasedcorrmaskrangecoloramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'gradientbasedcorrmaskrangedepthfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'gradientbasedcorrmaskrangedepthmax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'gradientbasedcorrmaskrangedepthmin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'gradientbasedcorrmaskrangeinvert' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'gradientbasedcorrmaskrangelumfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'gradientbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'gradientbasedcorrmaskrangelummax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'gradientbasedcorrmaskrangelummin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'gradientbasedcorrmaskrangelumrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'gradientbasedcorrmaskrangesampletype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'gradientbasedcorrmaskrangetype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'gradientbasedcorrmaskrangeversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'gradientbasedcorrmaskreferencepoint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'gradientbasedcorrmaskright' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'] }, - 'gradientbasedcorrmaskroundness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'] }, - 'gradientbasedcorrmasks' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'] }, - 'gradientbasedcorrmasksizex' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'] }, - 'gradientbasedcorrmasksizey' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'] }, - 'gradientbasedcorrmasktop' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'] }, - 'gradientbasedcorrmaskvalue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'] }, - 'gradientbasedcorrmaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'] }, - 'gradientbasedcorrmaskwhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'] }, - 'gradientbasedcorrmaskwholeimagearea' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'gradientbasedcorrmaskx' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'] }, - 'gradientbasedcorrmasky' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'] }, - 'gradientbasedcorrmaskzerox' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'] }, - 'gradientbasedcorrmaskzeroy' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'] }, - 'gradientbasedcorrmoire' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'] }, - 'gradientbasedcorrrangemask' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'] }, - 'gradientbasedcorrrangemaskareamodels' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'gradientbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'gradientbasedcorrrangemaskareamodelscomponents' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'gradientbasedcorrrangemaskcoloramount' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'gradientbasedcorrrangemaskdepthfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'gradientbasedcorrrangemaskdepthmax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'gradientbasedcorrrangemaskdepthmin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'gradientbasedcorrrangemaskinvert' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'gradientbasedcorrrangemasklumfeather' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'gradientbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'gradientbasedcorrrangemasklummax' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'gradientbasedcorrrangemasklummin' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'gradientbasedcorrrangemasklumrange' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'gradientbasedcorrrangemasksampletype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'gradientbasedcorrrangemasktype' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'] }, - 'gradientbasedcorrrangemaskversion' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'gradientbasedcorrsaturation' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'] }, - 'gradientbasedcorrshadows2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'] }, - 'gradientbasedcorrsharpness' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'] }, - 'gradientbasedcorrtemperature' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'] }, - 'gradientbasedcorrtexture' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'] }, - 'gradientbasedcorrtint' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'] }, - 'gradientbasedcorrtoninghue' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'] }, - 'gradientbasedcorrtoningsaturation' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'] }, - 'gradientbasedcorrwhat' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'] }, - 'gradientbasedcorrwhites2012' => { 521 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'], 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'] }, - 'grainamount' => { 521 => 'GrainAmount', 523 => 'GrainAmount' }, + 'gradientbasedcorractive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionActive'] }, + 'gradientbasedcorramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionAmount'] }, + 'gradientbasedcorrblacks2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBlacks2012'] }, + 'gradientbasedcorrbrightness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalBrightness'] }, + 'gradientbasedcorrclarity' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity'] }, + 'gradientbasedcorrclarity2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalClarity2012'] }, + 'gradientbasedcorrcontrast' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast'] }, + 'gradientbasedcorrcontrast2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalContrast2012'] }, + 'gradientbasedcorrcorrectionname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionName'] }, + 'gradientbasedcorrcorrectionsyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionSyncID'] }, + 'gradientbasedcorrdefringe' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDefringe'] }, + 'gradientbasedcorrdehaze' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalDehaze'] }, + 'gradientbasedcorrections' => { 523 => 'GradientBasedCorrections', 525 => 'GradientBasedCorrections' }, + 'gradientbasedcorrexposure' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure'] }, + 'gradientbasedcorrexposure2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalExposure2012'] }, + 'gradientbasedcorrhighlights2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHighlights2012'] }, + 'gradientbasedcorrhue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalHue'] }, + 'gradientbasedcorrluminancenoise' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalLuminanceNoise'] }, + 'gradientbasedcorrmaskalpha' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAlpha'] }, + 'gradientbasedcorrmaskangle' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksAngle'] }, + 'gradientbasedcorrmaskbottom' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksBottom'] }, + 'gradientbasedcorrmaskcentervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterValue'] }, + 'gradientbasedcorrmaskcenterweight' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'gradientbasedcorrmaskdabs' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksDabs'] }, + 'gradientbasedcorrmaskfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFeather'] }, + 'gradientbasedcorrmaskflipped' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlipped'] }, + 'gradientbasedcorrmaskflow' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFlow'] }, + 'gradientbasedcorrmaskfullx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullX'] }, + 'gradientbasedcorrmaskfully' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksFullY'] }, + 'gradientbasedcorrmaskinputdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksInputDigest'] }, + 'gradientbasedcorrmaskleft' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksLeft'] }, + 'gradientbasedcorrmaskmaskactive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskActive'] }, + 'gradientbasedcorrmaskmaskblendmode' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'gradientbasedcorrmaskmaskdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'gradientbasedcorrmaskmaskinverted' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'gradientbasedcorrmaskmaskname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskName'] }, + 'gradientbasedcorrmaskmasks' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasks'] }, + 'gradientbasedcorrmaskmasksalpha' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'gradientbasedcorrmaskmasksangle' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'gradientbasedcorrmaskmasksbottom' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'gradientbasedcorrmaskmaskscentervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'gradientbasedcorrmaskmaskscenterweight' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'gradientbasedcorrmaskmasksdabs' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'gradientbasedcorrmaskmasksfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'gradientbasedcorrmaskmasksflipped' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'gradientbasedcorrmaskmasksflow' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'gradientbasedcorrmaskmasksfullx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'gradientbasedcorrmaskmasksfully' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'gradientbasedcorrmaskmasksinputdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'gradientbasedcorrmaskmasksleft' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'gradientbasedcorrmaskmasksmaskactive' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'gradientbasedcorrmaskmasksmaskblendmode' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'gradientbasedcorrmaskmasksmaskdigest' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'gradientbasedcorrmaskmasksmaskinverted' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'gradientbasedcorrmaskmasksmaskname' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'gradientbasedcorrmaskmasksmasksubtype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'gradientbasedcorrmaskmasksmasksyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'gradientbasedcorrmaskmasksmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'gradientbasedcorrmaskmasksmidpoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'gradientbasedcorrmaskmasksorigin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'gradientbasedcorrmaskmasksperimetervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'gradientbasedcorrmaskmasksradius' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'gradientbasedcorrmaskmasksreferencepoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'gradientbasedcorrmaskmasksright' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRight'] }, + 'gradientbasedcorrmaskmasksroundness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'gradientbasedcorrmaskmaskssizex' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'gradientbasedcorrmaskmaskssizey' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'gradientbasedcorrmaskmaskstop' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksTop'] }, + 'gradientbasedcorrmaskmasksubtype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'gradientbasedcorrmaskmasksvalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'gradientbasedcorrmaskmasksversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'gradientbasedcorrmaskmaskswhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'gradientbasedcorrmaskmaskswholeimagearea' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'gradientbasedcorrmaskmasksx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksX'] }, + 'gradientbasedcorrmaskmasksy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksY'] }, + 'gradientbasedcorrmaskmasksyncid' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'gradientbasedcorrmaskmaskszerox' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'gradientbasedcorrmaskmaskszeroy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'gradientbasedcorrmaskmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'gradientbasedcorrmaskmidpoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMidpoint'] }, + 'gradientbasedcorrmaskorigin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksOrigin'] }, + 'gradientbasedcorrmaskperimetervalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'gradientbasedcorrmaskradius' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRadius'] }, + 'gradientbasedcorrmaskrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'gradientbasedcorrmaskrangeareamodels' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'gradientbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'gradientbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'gradientbasedcorrmaskrangecoloramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'gradientbasedcorrmaskrangedepthfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'gradientbasedcorrmaskrangedepthmax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'gradientbasedcorrmaskrangedepthmin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'gradientbasedcorrmaskrangeinvert' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'gradientbasedcorrmaskrangelumfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'gradientbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'gradientbasedcorrmaskrangelummax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'gradientbasedcorrmaskrangelummin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'gradientbasedcorrmaskrangelumrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'gradientbasedcorrmaskrangesampletype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'gradientbasedcorrmaskrangetype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'gradientbasedcorrmaskrangeversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'gradientbasedcorrmaskreferencepoint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'gradientbasedcorrmaskright' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRight'] }, + 'gradientbasedcorrmaskroundness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksRoundness'] }, + 'gradientbasedcorrmasks' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasks'] }, + 'gradientbasedcorrmasksizex' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeX'] }, + 'gradientbasedcorrmasksizey' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksSizeY'] }, + 'gradientbasedcorrmasktop' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksTop'] }, + 'gradientbasedcorrmaskvalue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksMaskValue'] }, + 'gradientbasedcorrmaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksVersion'] }, + 'gradientbasedcorrmaskwhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWhat'] }, + 'gradientbasedcorrmaskwholeimagearea' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'gradientbasedcorrmaskx' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksX'] }, + 'gradientbasedcorrmasky' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksY'] }, + 'gradientbasedcorrmaskzerox' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroX'] }, + 'gradientbasedcorrmaskzeroy' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionMasksZeroY'] }, + 'gradientbasedcorrmoire' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalMoire'] }, + 'gradientbasedcorrrangemask' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMask'] }, + 'gradientbasedcorrrangemaskareamodels' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'gradientbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'gradientbasedcorrrangemaskareamodelscomponents' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'gradientbasedcorrrangemaskcoloramount' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'gradientbasedcorrrangemaskdepthfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'gradientbasedcorrrangemaskdepthmax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'gradientbasedcorrrangemaskdepthmin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'gradientbasedcorrrangemaskinvert' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'gradientbasedcorrrangemasklumfeather' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'gradientbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'gradientbasedcorrrangemasklummax' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'gradientbasedcorrrangemasklummin' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'gradientbasedcorrrangemasklumrange' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'gradientbasedcorrrangemasksampletype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'gradientbasedcorrrangemasktype' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskType'] }, + 'gradientbasedcorrrangemaskversion' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'gradientbasedcorrsaturation' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSaturation'] }, + 'gradientbasedcorrshadows2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalShadows2012'] }, + 'gradientbasedcorrsharpness' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalSharpness'] }, + 'gradientbasedcorrtemperature' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTemperature'] }, + 'gradientbasedcorrtexture' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTexture'] }, + 'gradientbasedcorrtint' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalTint'] }, + 'gradientbasedcorrtoninghue' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningHue'] }, + 'gradientbasedcorrtoningsaturation' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalToningSaturation'] }, + 'gradientbasedcorrwhat' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsWhat'] }, + 'gradientbasedcorrwhites2012' => { 523 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'], 525 => [\'GradientBasedCorrections','GradientBasedCorrectionsLocalWhites2012'] }, + 'grainamount' => { 523 => 'GrainAmount', 525 => 'GrainAmount' }, 'graineffectroughness' => { 133 => 0x1047 }, 'graineffectsize' => { 133 => 0x104c }, - 'grainfrequency' => { 521 => 'GrainFrequency', 523 => 'GrainFrequency' }, - 'grainseed' => { 521 => 'GrainSeed', 523 => 'GrainSeed' }, - 'grainsize' => { 521 => 'GrainSize', 523 => 'GrainSize' }, - 'graymixeraqua' => { 521 => 'GrayMixerAqua', 523 => 'GrayMixerAqua' }, - 'graymixerblue' => { 521 => 'GrayMixerBlue', 523 => 'GrayMixerBlue' }, - 'graymixergreen' => { 521 => 'GrayMixerGreen', 523 => 'GrayMixerGreen' }, - 'graymixermagenta' => { 521 => 'GrayMixerMagenta', 523 => 'GrayMixerMagenta' }, - 'graymixerorange' => { 521 => 'GrayMixerOrange', 523 => 'GrayMixerOrange' }, - 'graymixerpurple' => { 521 => 'GrayMixerPurple', 523 => 'GrayMixerPurple' }, - 'graymixerred' => { 521 => 'GrayMixerRed', 523 => 'GrayMixerRed' }, - 'graymixeryellow' => { 521 => 'GrayMixerYellow', 523 => 'GrayMixerYellow' }, - 'graypoint' => { 493 => 0x8021 }, + 'grainfrequency' => { 523 => 'GrainFrequency', 525 => 'GrainFrequency' }, + 'grainseed' => { 523 => 'GrainSeed', 525 => 'GrainSeed' }, + 'grainsize' => { 523 => 'GrainSize', 525 => 'GrainSize' }, + 'graymixeraqua' => { 523 => 'GrayMixerAqua', 525 => 'GrayMixerAqua' }, + 'graymixerblue' => { 523 => 'GrayMixerBlue', 525 => 'GrayMixerBlue' }, + 'graymixergreen' => { 523 => 'GrayMixerGreen', 525 => 'GrayMixerGreen' }, + 'graymixermagenta' => { 523 => 'GrayMixerMagenta', 525 => 'GrayMixerMagenta' }, + 'graymixerorange' => { 523 => 'GrayMixerOrange', 525 => 'GrayMixerOrange' }, + 'graymixerpurple' => { 523 => 'GrayMixerPurple', 525 => 'GrayMixerPurple' }, + 'graymixerred' => { 523 => 'GrayMixerRed', 525 => 'GrayMixerRed' }, + 'graymixeryellow' => { 523 => 'GrayMixerYellow', 525 => 'GrayMixerYellow' }, + 'graypoint' => { 495 => 0x8021 }, 'grayresponseunit' => { 125 => 0x122 }, 'greencurvelimits' => { 114 => 0x1c4 }, 'greencurvepoints' => { 113 => 0x53, 114 => 0x19a }, 'greenghostmitigationstatus' => { 1 => 0x3f }, 'greenhsl' => { 109 => 0x20913 }, - 'greenhue' => { 521 => 'GreenHue', 523 => 'GreenHue' }, - 'greensaturation' => { 521 => 'GreenSaturation', 523 => 'GreenSaturation' }, + 'greenhue' => { 523 => 'GreenHue', 525 => 'GreenHue' }, + 'greensaturation' => { 523 => 'GreenSaturation', 525 => 'GreenSaturation' }, 'griddisplay' => { 309 => '13.3', 310 => '4.3', 312 => '4.2', 313 => '4.2', 314 => '2.2', 318 => '10.5', 319 => '3.4', 320 => '6.1', 322 => '4.4', 323 => '4.2', 324 => '4.2' }, 'gripbatteryadload' => { 368 => 0x5 }, 'gripbatteryadnoload' => { 368 => 0x4 }, 'gripbatterypercent' => { 368 => 0x11 }, 'gripbatterystate' => { 368 => ['1.2',0x10] }, 'gripbatteryvoltage' => { 368 => 0x12 }, - 'group' => { 521 => 'Group', 523 => 'Group' }, + 'group' => { 523 => 'Group', 525 => 'Group' }, 'groupareaafillumination' => { 310 => '46.4', 313 => '47.4', 322 => '47.4' }, - 'grouping' => { 407 => ['grup',"\xa9grp"], 415 => "\xa9grp" }, - 'guid' => { 407 => 'GUID' }, + 'grouping' => { 408 => ['grup',"\xa9grp"], 416 => "\xa9grp" }, + 'guid' => { 408 => 'GUID' }, 'h2resetblackpixels' => { 145 => 0x18a6 }, 'h3resetblackcolumns' => { 145 => 0x18ce }, 'h3resetblackpixels' => { 145 => 0x18b0 }, 'halftonehints' => { 125 => 0x141 }, 'hardlink' => { 126 => 'HardLink' }, - 'hasalternative' => { 540 => 'hasAlternative' }, - 'hascorrection' => { 540 => 'hasCorrection' }, - 'hascorrectiona-lang' => { 540 => [\'hasCorrection','hasCorrectionA-lang'] }, - 'hascorrectiona-platform' => { 540 => [\'hasCorrection','hasCorrectionA-platform'] }, - 'hascorrectiontext' => { 540 => [\'hasCorrection','hasCorrectionText'] }, - 'hascrop' => { 521 => 'HasCrop', 523 => 'HasCrop' }, - 'hasextendedxmp' => { 552 => 'HasExtendedXMP' }, - 'hassettings' => { 521 => 'HasSettings', 523 => 'HasSettings' }, - 'hastranslation' => { 540 => 'hasTranslation' }, - 'hasvisibleoverprint' => { 555 => 'HasVisibleOverprint' }, - 'hasvisibletransparency' => { 555 => 'HasVisibleTransparency' }, + 'hasalternative' => { 542 => 'hasAlternative' }, + 'hascorrection' => { 542 => 'hasCorrection' }, + 'hascorrectiona-lang' => { 542 => [\'hasCorrection','hasCorrectionA-lang'] }, + 'hascorrectiona-platform' => { 542 => [\'hasCorrection','hasCorrectionA-platform'] }, + 'hascorrectiontext' => { 542 => [\'hasCorrection','hasCorrectionText'] }, + 'hascrop' => { 523 => 'HasCrop', 525 => 'HasCrop' }, + 'hasextendedxmp' => { 554 => 'HasExtendedXMP' }, + 'hassettings' => { 523 => 'HasSettings', 525 => 'HasSettings' }, + 'hastranslation' => { 542 => 'hasTranslation' }, + 'hasvisibleoverprint' => { 557 => 'HasVisibleOverprint' }, + 'hasvisibletransparency' => { 557 => 'HasVisibleTransparency' }, 'hdmioutputn-log' => { 248 => 0x35a }, 'hdmioutputresolution' => { 249 => 0x710, 250 => 0x720, 251 => 0x610, 252 => 0x640, 253 => 0x6a8 }, 'hdmiviewassist' => { 327 => 0x20f, 328 => 0x227 }, - 'hdr' => { 64 => 0x1, 228 => 0x4, 229 => 0x4, 247 => 0x354, 249 => 0x23a, 250 => 0x23a, 253 => 0x23a, 354 => 0x9e, 390 => 0x85, 456 => 0x200a }, - 'hdrcapacitymax' => { 532 => 'HDRCapacityMax' }, - 'hdrcapacitymin' => { 532 => 'HDRCapacityMin' }, - 'hdreditmode' => { 521 => 'HDREditMode', 523 => 'HDREditMode' }, + 'hdr' => { 64 => 0x1, 228 => 0x4, 229 => 0x4, 247 => 0x354, 249 => 0x23a, 250 => 0x23a, 253 => 0x23a, 354 => 0x9e, 390 => 0x85, 458 => 0x200a }, + 'hdrcapacitymax' => { 534 => 'HDRCapacityMax' }, + 'hdrcapacitymin' => { 534 => 'HDRCapacityMin' }, + 'hdreditmode' => { 523 => 'HDREditMode', 525 => 'HDREditMode' }, 'hdreffect' => { 64 => 0x2 }, 'hdrgain' => { 1 => 0x30 }, - 'hdrgainmapversion' => { 510 => 'HDRGainMapVersion' }, + 'hdrgainmapversion' => { 512 => 'HDRGainMapVersion' }, 'hdrheadroom' => { 1 => 0x21 }, 'hdrimagetype' => { 1 => 0xa }, - 'hdrlevel' => { 228 => 0x5, 229 => 0x5, 247 => 0x360, 249 => 0x246, 250 => 0x246, 253 => 0x246, 444 => 0x2e, 461 => 0x17 }, + 'hdrlevel' => { 228 => 0x5, 229 => 0x5, 247 => 0x360, 249 => 0x246, 250 => 0x246, 253 => 0x246, 446 => 0x2e, 463 => 0x17 }, 'hdrlevel2' => { 228 => 0x7 }, - 'hdrplusmakernote' => { 501 => 'HdrPlusMakernote' }, - 'hdrpmakernote' => { 501 => 'hdrp_makernote' }, - 'hdrsetting' => { 444 => 0x2d, 461 => 0x16, 465 => 0x1148, 466 => 0x1148, 467 => 0x1124, 468 => 0x11a0, 469 => 0x117c, 470 => 0x1034, 471 => 0x22c, 472 => 0x22c, 473 => 0x21f }, + 'hdrplusmakernote' => { 503 => 'HdrPlusMakernote' }, + 'hdrpmakernote' => { 503 => 'hdrp_makernote' }, + 'hdrsetting' => { 446 => 0x2d, 463 => 0x16, 467 => 0x1148, 468 => 0x1148, 469 => 0x1124, 470 => 0x11a0, 471 => 0x117c, 472 => 0x1034, 473 => 0x22c, 474 => 0x22c, 475 => 0x21f }, 'hdrsmoothing' => { 228 => 0x6 }, - 'hdvideo' => { 407 => 'hdvd' }, - 'headline' => { 138 => 0x69, 535 => 'Headline', 538 => 'Headline' }, - 'hiddendatalength' => { 454 => 0x1 }, - 'hiddendataoffset' => { 454 => 0x0 }, + 'hdvideo' => { 408 => 'hdvd' }, + 'headline' => { 138 => 0x69, 537 => 'Headline', 540 => 'Headline' }, + 'hiddendatalength' => { 456 => 0x1 }, + 'hiddendataoffset' => { 456 => 0x0 }, 'hierarchicalkeywords' => { 178 => [\'Keywords','KeywordsHierarchy'] }, 'hierarchicalkeywords1' => { 178 => [\'Keywords','KeywordsHierarchyKeyword'] }, 'hierarchicalkeywords1applied' => { 178 => [\'Keywords','KeywordsHierarchyApplied'] }, @@ -3615,40 +3618,40 @@ my %tagLookup = ( 'hierarchicalkeywords5children' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildren'] }, 'hierarchicalkeywords6' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildrenKeyword'] }, 'hierarchicalkeywords6applied' => { 178 => [\'Keywords','KeywordsHierarchyChildrenChildrenChildrenChildrenChildrenApplied'] }, - 'hierarchicalsubject' => { 512 => 'hierarchicalSubject' }, + 'hierarchicalsubject' => { 514 => 'hierarchicalSubject' }, 'highestbiostratigraphiczone' => { 124 => [\'GeologicalContext','GeologicalContextHighestBiostratigraphicZone'] }, 'highframerate' => { 247 => 0x16c, 249 => 0x48, 250 => 0x48, 252 => 0x48, 253 => 0x48 }, 'highfrequencyflickerreduction' => { 247 => 0x386, 249 => 0x27c, 250 => 0x27c, 252 => 0x27c, 253 => 0x27c }, 'highisomultiplierblue' => { 359 => 0x1a }, 'highisomultipliergreen' => { 359 => 0x19 }, 'highisomultiplierred' => { 359 => 0x18 }, - 'highisonoisereduction' => { 16 => 0xbc, 17 => 0xbd, 20 => 0xbd, 28 => 0xc9, 67 => 0x5, 90 => 0x202, 243 => 0xb1, 390 => 0x71, 442 => 0x2c, 443 => 0x26, 444 => 0x26, 456 => 0x2009, 461 => 0x12, 488 => 0x42 }, - 'highisonoisereduction2' => { 456 => 0xb050 }, - 'highlight' => { 432 => 0xf }, - 'highlight2012' => { 521 => 'Highlight2012', 523 => 'Highlight2012' }, + 'highisonoisereduction' => { 16 => 0xbc, 17 => 0xbd, 20 => 0xbd, 28 => 0xc9, 67 => 0x5, 90 => 0x202, 243 => 0xb1, 390 => 0x71, 444 => 0x2c, 445 => 0x26, 446 => 0x26, 458 => 0x2009, 463 => 0x12, 490 => 0x42 }, + 'highisonoisereduction2' => { 458 => 0xb050 }, + 'highlight' => { 434 => 0xf }, + 'highlight2012' => { 523 => 'Highlight2012', 525 => 'Highlight2012' }, 'highlightadj' => { 109 => 0x2030c }, - 'highlightcolordistortreduct' => { 493 => 0x8026 }, - 'highlightlinearitylimit' => { 429 => 0xa025 }, + 'highlightcolordistortreduct' => { 495 => 0x8026 }, + 'highlightlinearitylimit' => { 431 => 0xa025 }, 'highlightprotection' => { 301 => 0x6 }, - 'highlightrecovery' => { 521 => 'HighlightRecovery', 523 => 'HighlightRecovery' }, - 'highlights' => { 456 => 0x2033, 514 => 'Highlights' }, - 'highlights2012' => { 521 => 'Highlights2012', 523 => 'Highlights2012' }, - 'highlightsadj' => { 493 => 0x9019 }, + 'highlightrecovery' => { 523 => 'HighlightRecovery', 525 => 'HighlightRecovery' }, + 'highlights' => { 458 => 0x2033, 516 => 'Highlights' }, + 'highlights2012' => { 523 => 'Highlights2012', 525 => 'Highlights2012' }, + 'highlightsadj' => { 495 => 0x9019 }, 'highlightshadow' => { 354 => 0xad }, 'highlighttone' => { 133 => 0x1041 }, 'highlighttonepriority' => { 13 => 0x7, 16 => 0x7, 17 => 0x7, 18 => 0x7, 20 => 0x7, 22 => 0x7, 28 => 0x7, 67 => 0x3, 90 => 0x203 }, 'highlightwarning' => { 354 => 0x8002 }, 'highlowkeyadj' => { 390 => 0x6c }, - 'highspeedsync' => { 191 => 0x5, 325 => 0x59, 326 => 0x55, 327 => 0x55, 328 => 0x55, 442 => 0x2, 443 => 0x2 }, - 'hintversion' => { 415 => 'hinv' }, + 'highspeedsync' => { 191 => 0x5, 325 => 0x59, 326 => 0x55, 327 => 0x55, 328 => 0x55, 444 => 0x2, 445 => 0x2 }, + 'hintversion' => { 416 => 'hinv' }, 'histogramxml' => { 302 => 0x83a1a25 }, - 'history' => { 538 => 'History', 551 => 'History' }, - 'historyaction' => { 551 => [\'History','HistoryAction'] }, - 'historychanged' => { 551 => [\'History','HistoryChanged'] }, - 'historyinstanceid' => { 551 => [\'History','HistoryInstanceID'] }, - 'historyparameters' => { 551 => [\'History','HistoryParameters'] }, - 'historysoftwareagent' => { 551 => [\'History','HistorySoftwareAgent'] }, - 'historywhen' => { 551 => [\'History','HistoryWhen'] }, + 'history' => { 540 => 'History', 553 => 'History' }, + 'historyaction' => { 553 => [\'History','HistoryAction'] }, + 'historychanged' => { 553 => [\'History','HistoryChanged'] }, + 'historyinstanceid' => { 553 => [\'History','HistoryInstanceID'] }, + 'historyparameters' => { 553 => [\'History','HistoryParameters'] }, + 'historysoftwareagent' => { 553 => [\'History','HistorySoftwareAgent'] }, + 'historywhen' => { 553 => [\'History','HistoryWhen'] }, 'holefilldarkdeltathreshold' => { 145 => 0xc88 }, 'holefilldeltathreshold' => { 145 => 0xc7e }, 'hometowncity' => { 119 => 0x3006, 390 => 0x23, 396 => 0x2 }, @@ -3657,17 +3660,17 @@ my %tagLookup = ( 'hostcomputer' => { 125 => 0x13c }, 'hostsoftwarerendering' => { 145 => 0xce7 }, 'hue' => { 196 => 0x3b, 261 => 0x3d, 262 => 0x45, 390 => 0x67 }, - 'hueadj' => { 305 => 0x2f, 493 => 0x8019 }, - 'hueadjust' => { 422 => 0x1016 }, + 'hueadj' => { 305 => 0x2f, 495 => 0x8019 }, + 'hueadjust' => { 424 => 0x1016 }, 'hueadjustment' => { 189 => 0x4a, 190 => 0x40, 243 => 0x92, 260 => 0x36 }, - 'hueadjustmentaqua' => { 521 => 'HueAdjustmentAqua', 523 => 'HueAdjustmentAqua' }, - 'hueadjustmentblue' => { 521 => 'HueAdjustmentBlue', 523 => 'HueAdjustmentBlue' }, - 'hueadjustmentgreen' => { 521 => 'HueAdjustmentGreen', 523 => 'HueAdjustmentGreen' }, - 'hueadjustmentmagenta' => { 521 => 'HueAdjustmentMagenta', 523 => 'HueAdjustmentMagenta' }, - 'hueadjustmentorange' => { 521 => 'HueAdjustmentOrange', 523 => 'HueAdjustmentOrange' }, - 'hueadjustmentpurple' => { 521 => 'HueAdjustmentPurple', 523 => 'HueAdjustmentPurple' }, - 'hueadjustmentred' => { 521 => 'HueAdjustmentRed', 523 => 'HueAdjustmentRed' }, - 'hueadjustmentyellow' => { 521 => 'HueAdjustmentYellow', 523 => 'HueAdjustmentYellow' }, + 'hueadjustmentaqua' => { 523 => 'HueAdjustmentAqua', 525 => 'HueAdjustmentAqua' }, + 'hueadjustmentblue' => { 523 => 'HueAdjustmentBlue', 525 => 'HueAdjustmentBlue' }, + 'hueadjustmentgreen' => { 523 => 'HueAdjustmentGreen', 525 => 'HueAdjustmentGreen' }, + 'hueadjustmentmagenta' => { 523 => 'HueAdjustmentMagenta', 525 => 'HueAdjustmentMagenta' }, + 'hueadjustmentorange' => { 523 => 'HueAdjustmentOrange', 525 => 'HueAdjustmentOrange' }, + 'hueadjustmentpurple' => { 523 => 'HueAdjustmentPurple', 525 => 'HueAdjustmentPurple' }, + 'hueadjustmentred' => { 523 => 'HueAdjustmentRed', 525 => 'HueAdjustmentRed' }, + 'hueadjustmentyellow' => { 523 => 'HueAdjustmentYellow', 525 => 'HueAdjustmentYellow' }, 'huesetting' => { 338 => 0x1011 }, 'humanobservation' => { 124 => 'HumanObservation' }, 'humanobservationday' => { 124 => [\'HumanObservation','HumanObservationDay'] }, @@ -3690,13 +3693,13 @@ my %tagLookup = ( 'humanobservationstartdayofyear' => { 124 => [\'HumanObservation','HumanObservationStartDayOfYear'] }, 'humanobservationverbatimeventdate' => { 124 => [\'HumanObservation','HumanObservationVerbatimEventDate'] }, 'humanobservationyear' => { 124 => [\'HumanObservation','HumanObservationYear'] }, - 'humidity' => { 125 => 0x9401, 528 => 'Humidity' }, + 'humidity' => { 125 => 0x9401, 530 => 'Humidity' }, 'icc_profile' => { 126 => 'ICC_Profile', 136 => 'ICCRGBG1/012' }, - 'iccprofilename' => { 538 => 'ICCProfile' }, - 'iconuri' => { 415 => 'icnu' }, - 'idccreativestyle' => { 493 => 0x8000 }, - 'idcpreviewlength' => { 493 => 0x202 }, - 'idcpreviewstart' => { 493 => 0x201 }, + 'iccprofilename' => { 540 => 'ICCProfile' }, + 'iconuri' => { 416 => 'icnu' }, + 'idccreativestyle' => { 495 => 0x8000 }, + 'idcpreviewlength' => { 495 => 0x202 }, + 'idcpreviewstart' => { 495 => 0x201 }, 'identification' => { 124 => 'Identification' }, 'identificationid' => { 124 => [\'Identification','IdentificationIdentificationID'] }, 'identificationqualifier' => { 124 => [\'Identification','IdentificationIdentificationQualifier'] }, @@ -3705,12 +3708,12 @@ my %tagLookup = ( 'identificationverificationstatus' => { 124 => [\'Identification','IdentificationIdentificationVerificationStatus'] }, 'identifiedby' => { 124 => [\'Identification','IdentificationIdentifiedBy'] }, 'identifiedbyid' => { 124 => [\'Identification','IdentificationIdentifiedByID'] }, - 'identifier' => { 524 => 'identifier', 548 => 'Identifier' }, + 'identifier' => { 526 => 'identifier', 550 => 'Identifier' }, 'ifcameramodel' => { 145 => 0x9c8 }, 'illuminantdata1' => { 125 => 0xcd35 }, 'illuminantdata2' => { 125 => 0xcd36 }, 'illuminantdata3' => { 125 => 0xcd37 }, - 'illumination' => { 320 => '0.5', 417 => 0x48 }, + 'illumination' => { 320 => '0.5', 419 => 0x48 }, 'imageabsolutex' => { 145 => 0x3fe }, 'imageabsolutey' => { 145 => 0x3ff }, 'imageadjustment' => { 243 => 0x80, 291 => 0x5 }, @@ -3721,32 +3724,32 @@ my %tagLookup = ( 'imageboundary' => { 243 => 0x16 }, 'imagecapturerequestid' => { 1 => 0x20 }, 'imagecapturetype' => { 1 => 0x14 }, - 'imagecount' => { 133 => 0x1438, 243 => 0xa5, 459 => 0x11b }, + 'imagecount' => { 133 => 0x1438, 243 => 0xa5, 461 => 0x11b }, 'imagecreator' => { 340 => 'ImageCreator' }, 'imagecreatorid' => { 340 => [\'ImageCreator','ImageCreatorImageCreatorID'] }, 'imagecreatorimageid' => { 340 => 'ImageCreatorImageID' }, 'imagecreatorname' => { 340 => [\'ImageCreator','ImageCreatorImageCreatorName'] }, 'imagecropx' => { 145 => 0x41f }, 'imagecropy' => { 145 => 0x420 }, - 'imagedata' => { 506 => 'Data' }, + 'imagedata' => { 508 => 'Data' }, 'imagedatasize' => { 243 => 0xa2 }, - 'imagedescription' => { 125 => 0x10e, 546 => 'ImageDescription' }, + 'imagedescription' => { 125 => 0x10e, 548 => 'ImageDescription' }, 'imageduplicationconstraints' => { 340 => 'ImageDuplicationConstraints' }, 'imagedustoff' => { 302 => 0xfe443a45 }, 'imageeditcount' => { 390 => 0x41 }, 'imageediting' => { 390 => 0x32 }, - 'imageeditingsoftware' => { 125 => 0xa43b, 528 => 'ImageEditingSoftware' }, - 'imageeditor' => { 125 => 0xa438, 528 => 'ImageEditor' }, - 'imageeffects' => { 422 => 0x1010 }, + 'imageeditingsoftware' => { 125 => 0xa43b, 530 => 'ImageEditingSoftware' }, + 'imageeditor' => { 125 => 0xa438, 530 => 'ImageEditor' }, + 'imageeffects' => { 424 => 0x1010 }, 'imagefileconstraints' => { 340 => 'ImageFileConstraints' }, 'imagefileformatasdelivered' => { 340 => 'ImageFileFormatAsDelivered' }, 'imagefilesizeasdelivered' => { 340 => 'ImageFileSizeAsDelivered' }, 'imagegeneration' => { 133 => 0x1436 }, - 'imageheight' => { 125 => 0x101, 195 => 0xc, 399 => 0x10d, 504 => 'ImageHeight', 546 => 'ImageLength' }, - 'imagehistory' => { 125 => 0x9213, 526 => 'ImageHistory' }, + 'imageheight' => { 125 => 0x101, 195 => 0xc, 399 => 0x10d, 506 => 'ImageHeight', 548 => 'ImageLength' }, + 'imagehistory' => { 125 => 0x9213, 528 => 'ImageHistory' }, 'imageidnumber' => { 349 => 0x340 }, - 'imagemimetype' => { 506 => 'Mime' }, - 'imagenumber' => { 125 => 0x9211, 163 => 'ImageNumber', 189 => 0xae, 190 => 0x5e, 399 => 0x113, 442 => 0x9b, 444 => [0x400,'276.1',0x314], 518 => 'ImageNumber' }, + 'imagemimetype' => { 508 => 'Mime' }, + 'imagenumber' => { 125 => 0x9211, 163 => 'ImageNumber', 189 => 0xae, 190 => 0x5e, 399 => 0x113, 444 => 0x9b, 446 => [0x400,'276.1',0x314], 520 => 'ImageNumber' }, 'imagenumber2' => { 190 => 0x62 }, 'imageoptimization' => { 243 => 0xa9 }, 'imageorientation' => { 138 => 0x83 }, @@ -3757,31 +3760,31 @@ my %tagLookup = ( 'imageprocessingversion' => { 334 => 0x0 }, 'imagequality' => { 163 => 'ImageQuality', 279 => '723.2', 280 => '732.2', 288 => '708.1', 354 => 0x1 }, 'imagequality2' => { 330 => 0x603 }, - 'imagerank' => { 509 => 'ImageRank' }, + 'imagerank' => { 511 => 'ImageRank' }, 'imagerbiassettlingdelaymsec' => { 145 => 0x600 }, 'imagerboardversion' => { 145 => 0x439 }, 'imagercols' => { 145 => 0x17d4 }, - 'imageref' => { 533 => 'ImageRef' }, - 'imageregion' => { 535 => 'ImageRegion' }, - 'imageregionboundary' => { 535 => [\'ImageRegion','ImageRegionRegionBoundary'] }, - 'imageregionboundaryh' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbH'] }, - 'imageregionboundaryrx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbRx'] }, - 'imageregionboundaryshape' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbShape'] }, - 'imageregionboundaryunit' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbUnit'] }, - 'imageregionboundaryvertices' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVertices'] }, - 'imageregionboundaryverticesx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbX'] }, - 'imageregionboundaryverticesy' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbY'] }, - 'imageregionboundaryw' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbW'] }, - 'imageregionboundaryx' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbX'] }, - 'imageregionboundaryy' => { 535 => [\'ImageRegion','ImageRegionRegionBoundaryRbY'] }, - 'imageregionctype' => { 535 => [\'ImageRegion','ImageRegionRCtype'] }, - 'imageregionctypeidentifier' => { 535 => [\'ImageRegion','ImageRegionRCtypeIdentifier'] }, - 'imageregionctypename' => { 535 => [\'ImageRegion','ImageRegionRCtypeName'] }, - 'imageregionid' => { 535 => [\'ImageRegion','ImageRegionRId'] }, - 'imageregionname' => { 535 => [\'ImageRegion','ImageRegionName'] }, - 'imageregionrole' => { 535 => [\'ImageRegion','ImageRegionRRole'] }, - 'imageregionroleidentifier' => { 535 => [\'ImageRegion','ImageRegionRRoleIdentifier'] }, - 'imageregionrolename' => { 535 => [\'ImageRegion','ImageRegionRRoleName'] }, + 'imageref' => { 535 => 'ImageRef' }, + 'imageregion' => { 537 => 'ImageRegion' }, + 'imageregionboundary' => { 537 => [\'ImageRegion','ImageRegionRegionBoundary'] }, + 'imageregionboundaryh' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbH'] }, + 'imageregionboundaryrx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbRx'] }, + 'imageregionboundaryshape' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbShape'] }, + 'imageregionboundaryunit' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbUnit'] }, + 'imageregionboundaryvertices' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVertices'] }, + 'imageregionboundaryverticesx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbX'] }, + 'imageregionboundaryverticesy' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbVerticesRbY'] }, + 'imageregionboundaryw' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbW'] }, + 'imageregionboundaryx' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbX'] }, + 'imageregionboundaryy' => { 537 => [\'ImageRegion','ImageRegionRegionBoundaryRbY'] }, + 'imageregionctype' => { 537 => [\'ImageRegion','ImageRegionRCtype'] }, + 'imageregionctypeidentifier' => { 537 => [\'ImageRegion','ImageRegionRCtypeIdentifier'] }, + 'imageregionctypename' => { 537 => [\'ImageRegion','ImageRegionRCtypeName'] }, + 'imageregionid' => { 537 => [\'ImageRegion','ImageRegionRId'] }, + 'imageregionname' => { 537 => [\'ImageRegion','ImageRegionName'] }, + 'imageregionrole' => { 537 => [\'ImageRegion','ImageRegionRRole'] }, + 'imageregionroleidentifier' => { 537 => [\'ImageRegion','ImageRegionRRoleIdentifier'] }, + 'imageregionrolename' => { 537 => [\'ImageRegion','ImageRegionRRoleName'] }, 'imageresolution' => { 145 => 0x944 }, 'imageresolutionjpg' => { 145 => 0x945 }, 'imagereview' => { 311 => '0.4', 320 => '0.4' }, @@ -3798,80 +3801,80 @@ my %tagLookup = ( 'imagesequenceinfo' => { 125 => 0xcd44 }, 'imagesize' => { 169 => 'ImageSize' }, 'imagesizeraw' => { 243 => 0x3e }, - 'imagesizerestriction' => { 543 => 'imageSizeRestriction' }, + 'imagesizerestriction' => { 545 => 'imageSizeRestriction' }, 'imagesourcedata' => { 125 => 0x935c }, 'imagespace' => { 145 => 0x909 }, - 'imagestabilization' => { 37 => 0x22, 119 => 0x3020, 133 => 0x1422, 163 => 'ImageStabilization', 189 => 0xbd, 190 => 0x71, 191 => 0x57, 192 => 0x0, 193 => [0x18,0x107,0x113], 194 => 0x49c2, 243 => 0xac, 330 => 0x604, 333 => 0x1600, 354 => 0x1a, 447 => 0x12, 448 => 0x11, 456 => 0xb026 }, - 'imagestabilization2' => { 446 => 0xa }, - 'imagestabilizationsetting' => { 194 => 0x14, 442 => 0x3d, 443 => 0x3d, 453 => 0x14 }, + 'imagestabilization' => { 37 => 0x22, 119 => 0x3020, 133 => 0x1422, 163 => 'ImageStabilization', 189 => 0xbd, 190 => 0x71, 191 => 0x57, 192 => 0x0, 193 => [0x18,0x107,0x113], 194 => 0x49c2, 243 => 0xac, 330 => 0x604, 333 => 0x1600, 354 => 0x1a, 449 => 0x12, 450 => 0x11, 458 => 0xb026 }, + 'imagestabilization2' => { 448 => 0xa }, + 'imagestabilizationsetting' => { 194 => 0x14, 444 => 0x3d, 445 => 0x3d, 455 => 0x14 }, 'imagestats' => { 125 => 0xcd46 }, - 'imagestyle' => { 442 => 0x2d, 443 => 0x27 }, + 'imagestyle' => { 444 => 0x2d, 445 => 0x27 }, 'imagesupplier' => { 340 => 'ImageSupplier' }, 'imagesupplierid' => { 340 => [\'ImageSupplier','ImageSupplierImageSupplierID'] }, 'imagesupplierimageid' => { 340 => 'ImageSupplierImageID' }, 'imagesuppliername' => { 340 => [\'ImageSupplier','ImageSupplierImageSupplierName'] }, 'imagetemperaturemax' => { 127 => 0x1 }, 'imagetemperaturemin' => { 127 => 0x2 }, - 'imagetitle' => { 125 => 0xa436, 528 => 'ImageTitle' }, + 'imagetitle' => { 125 => 0xa436, 530 => 'ImageTitle' }, 'imagetone' => { 390 => 0x4f }, 'imagetype' => { 138 => 0x82, 340 => 'ImageType' }, - 'imageuniqueid' => { 1 => 0x15, 69 => 0x28, 125 => 0xa420, 526 => 'ImageUniqueID', 527 => 'ImageUniqueID', 528 => 'ImageUniqueID' }, - 'imagewidth' => { 125 => 0x100, 195 => 0xe, 399 => 0x10c, 504 => 'ImageWidth', 546 => 'ImageWidth' }, - 'inclinationangle' => { 493 => 0x900f }, - 'inclinationcorrection' => { 493 => 0x900e }, - 'incrementaltemperature' => { 521 => 'IncrementalTemperature', 523 => 'IncrementalTemperature' }, - 'incrementaltint' => { 521 => 'IncrementalTint', 523 => 'IncrementalTint' }, - 'industry' => { 540 => 'industry', 541 => 'industry' }, + 'imageuniqueid' => { 1 => 0x15, 69 => 0x28, 125 => 0xa420, 528 => 'ImageUniqueID', 529 => 'ImageUniqueID', 530 => 'ImageUniqueID' }, + 'imagewidth' => { 125 => 0x100, 195 => 0xe, 399 => 0x10c, 506 => 'ImageWidth', 548 => 'ImageWidth' }, + 'inclinationangle' => { 495 => 0x900f }, + 'inclinationcorrection' => { 495 => 0x900e }, + 'incrementaltemperature' => { 523 => 'IncrementalTemperature', 525 => 'IncrementalTemperature' }, + 'incrementaltint' => { 523 => 'IncrementalTint', 525 => 'IncrementalTint' }, + 'industry' => { 542 => 'industry', 543 => 'industry' }, 'infobuttonwhenshooting' => { 90 => 0x409 }, - 'information' => { 409 => 'information', 415 => "\xa9inf" }, - 'infourl' => { 415 => 'infu' }, - 'infraredilluminator' => { 416 => 0x28 }, - 'ingredientexclusion' => { 542 => 'ingredientExclusion' }, - 'ingredients' => { 551 => 'Ingredients' }, - 'ingredientsalternatepaths' => { 551 => [\'Ingredients','IngredientsAlternatePaths'] }, - 'ingredientsdocumentid' => { 551 => [\'Ingredients','IngredientsDocumentID'] }, - 'ingredientsfilepath' => { 551 => [\'Ingredients','IngredientsFilePath'] }, - 'ingredientsfrompart' => { 551 => [\'Ingredients','IngredientsFromPart'] }, - 'ingredientsinstanceid' => { 551 => [\'Ingredients','IngredientsInstanceID'] }, - 'ingredientslastmodifydate' => { 551 => [\'Ingredients','IngredientsLastModifyDate'] }, - 'ingredientslasturl' => { 551 => [\'Ingredients','IngredientsLastURL'] }, - 'ingredientslinkcategory' => { 551 => [\'Ingredients','IngredientsLinkCategory'] }, - 'ingredientslinkform' => { 551 => [\'Ingredients','IngredientsLinkForm'] }, - 'ingredientsmanager' => { 551 => [\'Ingredients','IngredientsManager'] }, - 'ingredientsmanagervariant' => { 551 => [\'Ingredients','IngredientsManagerVariant'] }, - 'ingredientsmanageto' => { 551 => [\'Ingredients','IngredientsManageTo'] }, - 'ingredientsmanageui' => { 551 => [\'Ingredients','IngredientsManageUI'] }, - 'ingredientsmaskmarkers' => { 551 => [\'Ingredients','IngredientsMaskMarkers'] }, - 'ingredientsoriginaldocumentid' => { 551 => [\'Ingredients','IngredientsOriginalDocumentID'] }, - 'ingredientspartmapping' => { 551 => [\'Ingredients','IngredientsPartMapping'] }, - 'ingredientsplacedresolutionunit' => { 551 => [\'Ingredients','IngredientsPlacedResolutionUnit'] }, - 'ingredientsplacedxresolution' => { 551 => [\'Ingredients','IngredientsPlacedXResolution'] }, - 'ingredientsplacedyresolution' => { 551 => [\'Ingredients','IngredientsPlacedYResolution'] }, - 'ingredientsrenditionclass' => { 551 => [\'Ingredients','IngredientsRenditionClass'] }, - 'ingredientsrenditionparams' => { 551 => [\'Ingredients','IngredientsRenditionParams'] }, - 'ingredientstopart' => { 551 => [\'Ingredients','IngredientsToPart'] }, - 'ingredientsversionid' => { 551 => [\'Ingredients','IngredientsVersionID'] }, + 'information' => { 410 => 'information', 416 => "\xa9inf" }, + 'infourl' => { 416 => 'infu' }, + 'infraredilluminator' => { 418 => 0x28 }, + 'ingredientexclusion' => { 544 => 'ingredientExclusion' }, + 'ingredients' => { 553 => 'Ingredients' }, + 'ingredientsalternatepaths' => { 553 => [\'Ingredients','IngredientsAlternatePaths'] }, + 'ingredientsdocumentid' => { 553 => [\'Ingredients','IngredientsDocumentID'] }, + 'ingredientsfilepath' => { 553 => [\'Ingredients','IngredientsFilePath'] }, + 'ingredientsfrompart' => { 553 => [\'Ingredients','IngredientsFromPart'] }, + 'ingredientsinstanceid' => { 553 => [\'Ingredients','IngredientsInstanceID'] }, + 'ingredientslastmodifydate' => { 553 => [\'Ingredients','IngredientsLastModifyDate'] }, + 'ingredientslasturl' => { 553 => [\'Ingredients','IngredientsLastURL'] }, + 'ingredientslinkcategory' => { 553 => [\'Ingredients','IngredientsLinkCategory'] }, + 'ingredientslinkform' => { 553 => [\'Ingredients','IngredientsLinkForm'] }, + 'ingredientsmanager' => { 553 => [\'Ingredients','IngredientsManager'] }, + 'ingredientsmanagervariant' => { 553 => [\'Ingredients','IngredientsManagerVariant'] }, + 'ingredientsmanageto' => { 553 => [\'Ingredients','IngredientsManageTo'] }, + 'ingredientsmanageui' => { 553 => [\'Ingredients','IngredientsManageUI'] }, + 'ingredientsmaskmarkers' => { 553 => [\'Ingredients','IngredientsMaskMarkers'] }, + 'ingredientsoriginaldocumentid' => { 553 => [\'Ingredients','IngredientsOriginalDocumentID'] }, + 'ingredientspartmapping' => { 553 => [\'Ingredients','IngredientsPartMapping'] }, + 'ingredientsplacedresolutionunit' => { 553 => [\'Ingredients','IngredientsPlacedResolutionUnit'] }, + 'ingredientsplacedxresolution' => { 553 => [\'Ingredients','IngredientsPlacedXResolution'] }, + 'ingredientsplacedyresolution' => { 553 => [\'Ingredients','IngredientsPlacedYResolution'] }, + 'ingredientsrenditionclass' => { 553 => [\'Ingredients','IngredientsRenditionClass'] }, + 'ingredientsrenditionparams' => { 553 => [\'Ingredients','IngredientsRenditionParams'] }, + 'ingredientstopart' => { 553 => [\'Ingredients','IngredientsToPart'] }, + 'ingredientsversionid' => { 553 => [\'Ingredients','IngredientsVersionID'] }, 'initialafpointaiservoaf' => { 90 => 0x51e }, 'initialafpointinservo' => { 2 => 0x13 }, - 'initialcameradolly' => { 507 => 'InitialCameraDolly' }, - 'initialhorizontalfovdegrees' => { 507 => 'InitialHorizontalFOVDegrees' }, + 'initialcameradolly' => { 509 => 'InitialCameraDolly' }, + 'initialhorizontalfovdegrees' => { 509 => 'InitialHorizontalFOVDegrees' }, 'initialkey' => { 186 => 'WM/InitialKey' }, - 'initialverticalfovdegrees' => { 507 => 'InitialVerticalFOVDegrees' }, - 'initialviewheadingdegrees' => { 507 => 'InitialViewHeadingDegrees', 508 => 'InitialViewHeadingDegrees' }, - 'initialviewpitchdegrees' => { 507 => 'InitialViewPitchDegrees', 508 => 'InitialViewPitchDegrees' }, - 'initialviewrolldegrees' => { 507 => 'InitialViewRollDegrees', 508 => 'InitialViewRollDegrees' }, + 'initialverticalfovdegrees' => { 509 => 'InitialVerticalFOVDegrees' }, + 'initialviewheadingdegrees' => { 509 => 'InitialViewHeadingDegrees', 510 => 'InitialViewHeadingDegrees' }, + 'initialviewpitchdegrees' => { 509 => 'InitialViewPitchDegrees', 510 => 'InitialViewPitchDegrees' }, + 'initialviewrolldegrees' => { 509 => 'InitialViewRollDegrees', 510 => 'InitialViewRollDegrees' }, 'initialzoomliveview' => { 309 => '4.4' }, 'initialzoomsetting' => { 309 => '9.3', 318 => '27.3' }, 'inkset' => { 125 => 0x14c }, 'inputprofile' => { 145 => 0x1389 }, - 'instanceid' => { 551 => 'InstanceID' }, + 'instanceid' => { 553 => 'InstanceID' }, 'instantplaybacksetup' => { 191 => 0x3e }, 'instantplaybacktime' => { 191 => 0x3d }, - 'instructions' => { 538 => 'Instructions' }, - 'instrument' => { 550 => 'instrument' }, + 'instructions' => { 540 => 'Instructions' }, + 'instrument' => { 552 => 'instrument' }, 'integrationtime' => { 145 => 0x423 }, - 'intellectualgenre' => { 534 => 'IntellectualGenre' }, - 'intelligentauto' => { 456 => 0xb052, 484 => 0xd, 485 => 0xe, 486 => 0xd }, + 'intellectualgenre' => { 536 => 'IntellectualGenre' }, + 'intelligentauto' => { 458 => 0xb052, 486 => 0xd, 487 => 0xe, 488 => 0xd }, 'intelligentcontrast' => { 56 => 0x4 }, 'intelligentd-range' => { 354 => 0x79 }, 'intelligentexposure' => { 354 => 0x5d }, @@ -3886,10 +3889,10 @@ my %tagLookup = ( 'internalflashmode' => { 377 => 0x1 }, 'internalflashstrength' => { 377 => 0x3 }, 'internalflashtable' => { 335 => 0x1024 }, - 'internallensserialnumber' => { 429 => 0xa005 }, + 'internallensserialnumber' => { 431 => 0xa005 }, 'internalndfilter' => { 354 => 0x9d }, - 'internalserialnumber' => { 69 => 0x96, 81 => 0x9, 133 => 0x10, 194 => 0x49dc, 329 => 0x18, 331 => 0x102, 351 => 0x500, 354 => 0x25, 369 => 0x4, 422 => 0x5, 475 => [0x7c,0xf0], 476 => 0x88, 477 => [0x88,0x8a], 478 => 0x38 }, - 'interopindex' => { 125 => 0x1, 528 => 'InteroperabilityIndex' }, + 'internalserialnumber' => { 69 => 0x96, 81 => 0x9, 133 => 0x10, 194 => 0x49dc, 329 => 0x18, 331 => 0x102, 351 => 0x500, 354 => 0x25, 369 => 0x4, 424 => 0x5, 477 => [0x7c,0xf0], 478 => 0x88, 479 => [0x88,0x8a], 480 => 0x38 }, + 'interopindex' => { 125 => 0x1, 530 => 'InteroperabilityIndex' }, 'interopversion' => { 125 => 0x2 }, 'interval' => { 267 => 0x20 }, 'intervaldurationhours' => { 247 => 0x1dc, 248 => 0xa0, 249 => 0xb8, 250 => 0xb8 }, @@ -3903,9 +3906,9 @@ my %tagLookup = ( 'intervalpriority' => { 232 => 0x186, 247 => 0x1f6, 248 => 0xba, 249 => 0xd2, 250 => 0xd2 }, 'intervals' => { 232 => 0x17c, 247 => 0x1ec, 248 => 0xb0, 249 => 0xc8, 250 => 0xc8, 251 => 0xbc, 252 => 0xcc, 253 => 0xcc }, 'intervalshooting' => { 233 => 0x24, 269 => 0x24, 270 => 0x28, 390 => 0x92 }, - 'introtime' => { 550 => 'introTime' }, - 'introtimescale' => { 550 => [\'introTime','introTimeScale'] }, - 'introtimevalue' => { 550 => [\'introTime','introTimeValue'] }, + 'introtime' => { 552 => 'introTime' }, + 'introtimescale' => { 552 => [\'introTime','introTimeScale'] }, + 'introtimevalue' => { 552 => [\'introTime','introTimeValue'] }, 'ipaversion' => { 145 => 0xdae }, 'ipfcameramodel' => { 145 => 0xe4d }, 'iptc' => { 126 => 'IPTC' }, @@ -3915,23 +3918,23 @@ my %tagLookup = ( 'iptcimageheight' => { 140 => 0x1e }, 'iptcimagerotation' => { 140 => 0x66 }, 'iptcimagewidth' => { 140 => 0x14 }, - 'iptclastedited' => { 535 => 'IptcLastEdited' }, + 'iptclastedited' => { 537 => 'IptcLastEdited' }, 'iptcpicturenumber' => { 140 => 0xa }, 'iptcpixelheight' => { 140 => 0x32 }, 'iptcpixelwidth' => { 140 => 0x28 }, - 'isalternativeof' => { 540 => 'isAlternativeOf' }, - 'isbn' => { 540 => 'isbn' }, - 'iscorrectionof' => { 540 => 'isCorrectionOf' }, + 'isalternativeof' => { 542 => 'isAlternativeOf' }, + 'isbn' => { 542 => 'isbn' }, + 'iscorrectionof' => { 542 => 'isCorrectionOf' }, 'iscustompicturestyle' => { 115 => 0x3 }, - 'ismergedhdr' => { 518 => 'IsMergedHDR' }, - 'ismergedpanorama' => { 518 => 'IsMergedPanorama' }, - 'iso' => { 7 => 0x6, 9 => 0x6, 10 => 0x75, 11 => 0x6, 12 => 0x79, 13 => 0x6, 14 => 0x6, 15 => 0x6, 16 => 0x6, 17 => 0x6, 18 => 0x6, 19 => 0x6, 20 => 0x6, 21 => 0x6, 22 => 0x6, 23 => 0x6, 24 => 0x6, 25 => 0x6, 26 => 0x6, 27 => 0x6, 28 => 0x6, 29 => 0x6, 31 => 0x0, 32 => 0x1, 118 => 0x14, 119 => [0x3014,0x14], 125 => 0x8827, 144 => 0xfd06, 145 => 0x1784, 147 => 0x60, 149 => [0xfa2e,0xfa46], 150 => [0x27,0x28], 151 => 0xf105, 154 => 0x14, 156 => 0x4e, 158 => 0x1e, 159 => 0x1a, 161 => 0x34, 163 => 'ISO', 188 => 0x8, 194 => 0x49ba, 231 => 0x0, 243 => 0x2, 354 => 0xd1, 359 => [0x17,0x37], 390 => [0x8b,0x14], 397 => 0x14, 399 => 0x105, 429 => 0xa014, 432 => 0x86, 453 => 0x6f, 461 => [0x1f,0x21,0x25], 527 => 'ISOSpeedRatings' }, + 'ismergedhdr' => { 520 => 'IsMergedHDR' }, + 'ismergedpanorama' => { 520 => 'IsMergedPanorama' }, + 'iso' => { 7 => 0x6, 9 => 0x6, 10 => 0x75, 11 => 0x6, 12 => 0x79, 13 => 0x6, 14 => 0x6, 15 => 0x6, 16 => 0x6, 17 => 0x6, 18 => 0x6, 19 => 0x6, 20 => 0x6, 21 => 0x6, 22 => 0x6, 23 => 0x6, 24 => 0x6, 25 => 0x6, 26 => 0x6, 27 => 0x6, 28 => 0x6, 29 => 0x6, 31 => 0x0, 32 => 0x1, 118 => 0x14, 119 => [0x3014,0x14], 125 => 0x8827, 144 => 0xfd06, 145 => 0x1784, 147 => 0x60, 149 => [0xfa2e,0xfa46], 150 => [0x27,0x28], 151 => 0xf105, 154 => 0x14, 156 => 0x4e, 158 => 0x1e, 159 => 0x1a, 161 => 0x34, 163 => 'ISO', 188 => 0x8, 194 => 0x49ba, 231 => 0x0, 243 => 0x2, 354 => 0xd1, 359 => [0x17,0x37], 390 => [0x8b,0x14], 397 => 0x14, 399 => 0x105, 431 => 0xa014, 434 => 0x86, 455 => 0x6f, 463 => [0x1f,0x21,0x25], 529 => 'ISOSpeedRatings' }, 'iso2' => { 231 => 0x6, 274 => 0x265, 275 => 0x25c, 276 => 0x265, 277 => 0x221, 278 => 0x25d, 279 => 0x256, 280 => 0x25d, 283 => 0x2b5, 286 => 0x265, 290 => 0x2b5 }, 'isoauto' => { 370 => '14.4' }, 'isoautoflashlimit' => { 249 => 0x156, 250 => 0x156, 251 => 0x146, 252 => 0x15a, 253 => 0x15a }, 'isoautohilimit' => { 230 => 0x5, 247 => 0x28a, 249 => 0x154, 250 => 0x154, 251 => 0x144, 252 => 0x158, 253 => 0x158, 272 => 0x5, 282 => 0x18eb }, - 'isoautomax' => { 455 => 0x4 }, - 'isoautomin' => { 455 => 0x2 }, + 'isoautomax' => { 457 => 0x4 }, + 'isoautomin' => { 457 => 0x2 }, 'isoautominspeed' => { 390 => 0x7a }, 'isoautoshuttertime' => { 230 => 0x4, 249 => 0x15e, 250 => 0x15e, 251 => 0x14e, 252 => 0x162, 253 => 0x162, 272 => 0x4, 282 => 0x18ea }, 'isobutton' => { 253 => 0x796 }, @@ -3943,42 +3946,42 @@ my %tagLookup = ( 'isoselected' => { 353 => 0x359 }, 'isoselection' => { 243 => 0xf }, 'isosensitivitystep' => { 317 => '6.2', 319 => '6.2' }, - 'isosetting' => { 147 => 0x5e, 159 => 0x14, 163 => 'ISOSetting', 188 => 0x24, 189 => 0x26, 190 => 0x1c, 191 => 0x13, 196 => 0x6, 243 => 0x13, 370 => '17.3', 421 => 0x27, 442 => 0x16, 443 => 0x14, 444 => 0x2, 453 => 0x6d, 455 => 0x0 }, - 'isospeed' => { 125 => 0x8833, 528 => 'ISOSpeed' }, + 'isosetting' => { 147 => 0x5e, 159 => 0x14, 163 => 'ISOSetting', 188 => 0x24, 189 => 0x26, 190 => 0x1c, 191 => 0x13, 196 => 0x6, 243 => 0x13, 370 => '17.3', 423 => 0x27, 444 => 0x16, 445 => 0x14, 446 => 0x2, 455 => 0x6d, 457 => 0x0 }, + 'isospeed' => { 125 => 0x8833, 530 => 'ISOSpeed' }, 'isospeedexpansion' => { 89 => 0x3 }, 'isospeedincrements' => { 90 => 0x102 }, - 'isospeedlatitudeyyy' => { 125 => 0x8834, 528 => 'ISOSpeedLatitudeyyy' }, - 'isospeedlatitudezzz' => { 125 => 0x8835, 528 => 'ISOSpeedLatitudezzz' }, + 'isospeedlatitudeyyy' => { 125 => 0x8834, 530 => 'ISOSpeedLatitudeyyy' }, + 'isospeedlatitudezzz' => { 125 => 0x8835, 530 => 'ISOSpeedLatitudezzz' }, 'isospeedrange' => { 90 => 0x103 }, 'isostepsize' => { 309 => '6.1', 310 => '7.2', 312 => '7.2', 313 => '7.2', 318 => '4.1', 322 => '7.2', 323 => '7.2', 325 => 0x14d, 326 => 0x15d, 327 => 0x15d, 328 => 0x175 }, 'isovalue' => { 335 => 0x1001 }, - 'isrc' => { 407 => 'xid ' }, - 'isrccode' => { 415 => "\xa9isr" }, - 'issn' => { 540 => 'issn' }, - 'issueidentifier' => { 540 => 'issueIdentifier' }, - 'issuename' => { 540 => 'issueName' }, - 'issueteaser' => { 540 => 'issueTeaser' }, - 'issuetype' => { 540 => 'issueType' }, - 'istranslationof' => { 540 => 'isTranslationOf' }, + 'isrc' => { 408 => 'xid ' }, + 'isrccode' => { 416 => "\xa9isr" }, + 'issn' => { 542 => 'issn' }, + 'issueidentifier' => { 542 => 'issueIdentifier' }, + 'issuename' => { 542 => 'issueName' }, + 'issueteaser' => { 542 => 'issueTeaser' }, + 'issuetype' => { 542 => 'issueType' }, + 'istranslationof' => { 542 => 'isTranslationOf' }, 'itemsubtype' => { 185 => 'ItemSubType' }, - 'itunesu' => { 407 => 'itnu' }, + 'itunesu' => { 408 => 'itnu' }, 'jobid' => { 138 => 0xb8 }, - 'jobname' => { 529 => 'JobName' }, - 'jobref' => { 549 => 'JobRef' }, - 'jobrefid' => { 549 => [\'JobRef','JobRefId'] }, - 'jobrefname' => { 549 => [\'JobRef','JobRefName'] }, - 'jobrefurl' => { 549 => [\'JobRef','JobRefUrl'] }, - 'jobstatus' => { 529 => 'JobStatus' }, - 'jpeg-heifswitch' => { 456 => 0x2039 }, - 'jpeghandling' => { 521 => 'JPEGHandling', 523 => 'JPEGHandling' }, - 'jpegquality' => { 10 => 0x66, 354 => 0x43, 356 => 0x3034, 456 => 0xb047 }, + 'jobname' => { 531 => 'JobName' }, + 'jobref' => { 551 => 'JobRef' }, + 'jobrefid' => { 551 => [\'JobRef','JobRefId'] }, + 'jobrefname' => { 551 => [\'JobRef','JobRefName'] }, + 'jobrefurl' => { 551 => [\'JobRef','JobRefUrl'] }, + 'jobstatus' => { 531 => 'JobStatus' }, + 'jpeg-heifswitch' => { 458 => 0x2039 }, + 'jpeghandling' => { 523 => 'JPEGHandling', 525 => 'JPEGHandling' }, + 'jpegquality' => { 10 => 0x66, 354 => 0x43, 356 => 0x3034, 458 => 0xb047 }, 'jpegsize' => { 356 => 0x303a }, 'jpgcompression' => { 234 => 0x24, 243 => 0x44, 277 => '671.1' }, 'jpgfromraw' => { 103 => 0x2007, 120 => 'Exif-JpgFromRaw', 359 => 0x2e }, 'jpgfromrawlength' => { 125 => [0x117,0x202] }, 'jpgfromrawstart' => { 125 => [0x111,0x201] }, 'jpgrecordedpixels' => { 370 => '14.1' }, - 'jurisdiction' => { 519 => 'jurisdiction' }, + 'jurisdiction' => { 521 => 'jurisdiction' }, 'jxldecodespeed' => { 125 => 0xcd4b }, 'jxldistance' => { 125 => 0xcd49 }, 'jxleffort' => { 125 => 0xcd4a }, @@ -4001,16 +4004,16 @@ my %tagLookup = ( 'kelvinwb_16' => { 378 => 0x41 }, 'kelvinwb_daylight' => { 378 => 0x1 }, 'kerneldenominators' => { 145 => 0x933 }, - 'key' => { 550 => 'key' }, + 'key' => { 552 => 'key' }, 'keystonecompensation' => { 334 => 0x1900 }, 'keystonedirection' => { 334 => 0x1901 }, 'keystonevalue' => { 334 => 0x1906 }, - 'keyword' => { 407 => 'keyw', 540 => 'keyword' }, + 'keyword' => { 408 => 'keyw', 542 => 'keyword' }, 'keywordinfo' => { 178 => 'Keywords' }, - 'keywords' => { 138 => 0x19, 164 => 'Keywords', 339 => 'Keywords', 406 => 'Keywords', 409 => 'keywords', 515 => 'keywords', 537 => 'Keywords', 548 => 'Keywords' }, - 'killdate' => { 540 => 'killDate' }, - 'killdatea-platform' => { 540 => [\'killDate','killDateA-platform'] }, - 'killdatedate' => { 540 => [\'killDate','killDateDate'] }, + 'keywords' => { 138 => 0x19, 164 => 'Keywords', 339 => 'Keywords', 406 => 'Keywords', 410 => 'keywords', 517 => 'keywords', 539 => 'Keywords', 550 => 'Keywords' }, + 'killdate' => { 542 => 'killDate' }, + 'killdatea-platform' => { 542 => [\'killDate','killDateA-platform'] }, + 'killdatedate' => { 542 => [\'killDate','killDateDate'] }, 'kodakimageheight' => { 144 => 0xf908, 147 => 0xe, 149 => [0xfa1e,0xfa52], 155 => 0x70 }, 'kodakimagewidth' => { 144 => 0xf907, 147 => 0xc, 149 => [0xfa1d,0xfa51], 155 => 0x6c }, 'kodakinfotype' => { 144 => 0xfa00 }, @@ -4020,13 +4023,13 @@ my %tagLookup = ( 'kodakmodel' => { 147 => 0x0, 155 => 0x28 }, 'kodaktag' => { 145 => 0x3ea }, 'kodakversion' => { 145 => 0x0 }, - 'label' => { 343 => 'Label', 548 => 'Label' }, - 'labelname1' => { 533 => [\'TagStructure','TagStructureLabelName'] }, - 'labelname2' => { 533 => [\'TagStructure','TagStructureSubLabelsLabelName'] }, - 'labelname3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsLabelName'] }, - 'labelname4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsLabelName'] }, - 'labelname5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, - 'labelname6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, + 'label' => { 343 => 'Label', 550 => 'Label' }, + 'labelname1' => { 535 => [\'TagStructure','TagStructureLabelName'] }, + 'labelname2' => { 535 => [\'TagStructure','TagStructureSubLabelsLabelName'] }, + 'labelname3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsLabelName'] }, + 'labelname4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsLabelName'] }, + 'labelname5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, + 'labelname6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsLabelName'] }, 'landmark' => { 354 => 0x6f }, 'landscapeoutputhighlightpoint' => { 115 => 0x26 }, 'landscapeoutputshadowpoint' => { 115 => 0x27 }, @@ -4042,19 +4045,19 @@ my %tagLookup = ( 'landscapeunsharpmaskfineness' => { 115 => 0xa0 }, 'landscapeunsharpmaskstrength' => { 115 => 0x9e }, 'landscapeunsharpmaskthreshold' => { 115 => 0xa2 }, - 'language' => { 247 => 0x8fc, 249 => 0x6a2, 250 => 0x6a2, 251 => 0x592, 252 => 0x5c2, 253 => 0x5da, 524 => 'language' }, + 'language' => { 247 => 0x8fc, 249 => 0x6a2, 250 => 0x6a2, 251 => 0x592, 252 => 0x5c2, 253 => 0x5da, 526 => 'language' }, 'languageidentifier' => { 138 => 0x87 }, - 'largestvalidinteriorrectheight' => { 507 => 'LargestValidInteriorRectHeight' }, - 'largestvalidinteriorrectleft' => { 507 => 'LargestValidInteriorRectLeft' }, - 'largestvalidinteriorrecttop' => { 507 => 'LargestValidInteriorRectTop' }, - 'largestvalidinteriorrectwidth' => { 507 => 'LargestValidInteriorRectWidth' }, + 'largestvalidinteriorrectheight' => { 509 => 'LargestValidInteriorRectHeight' }, + 'largestvalidinteriorrectleft' => { 509 => 'LargestValidInteriorRectLeft' }, + 'largestvalidinteriorrecttop' => { 509 => 'LargestValidInteriorRectTop' }, + 'largestvalidinteriorrectwidth' => { 509 => 'LargestValidInteriorRectWidth' }, 'lastfilenumber' => { 188 => 0x1b }, 'lastkeywordiptc' => { 185 => 'LastKeywordIPTC' }, 'lastkeywordxmp' => { 185 => 'LastKeywordXMP' }, - 'lastphotodate' => { 507 => 'LastPhotoDate' }, - 'lasturl' => { 551 => 'LastURL' }, - 'lateralchromaticaberration' => { 456 => 0x2012 }, - 'lateralchromaticaberrationcorrectionalreadyapplied' => { 518 => 'LateralChromaticAberrationCorrectionAlreadyApplied' }, + 'lastphotodate' => { 509 => 'LastPhotoDate' }, + 'lasturl' => { 553 => 'LastURL' }, + 'lateralchromaticaberration' => { 458 => 0x2012 }, + 'lateralchromaticaberrationcorrectionalreadyapplied' => { 520 => 'LateralChromaticAberrationCorrectionAlreadyApplied' }, 'latestageorhigheststage' => { 124 => [\'GeologicalContext','GeologicalContextLatestAgeOrHighestStage'] }, 'latesteonorhighesteonothem' => { 124 => [\'GeologicalContext','GeologicalContextLatestEonOrHighestEonothem'] }, 'latestepochorhighestseries' => { 124 => [\'GeologicalContext','GeologicalContextLatestEpochOrHighestSeries'] }, @@ -4082,95 +4085,95 @@ my %tagLookup = ( 'lcdmatrixmarvin' => { 145 => 0xe76 }, 'lcdpanels' => { 89 => 0x8 }, 'lcheditor' => { 302 => 0x8ae85e }, - 'legacyiptcdigest' => { 538 => 'LegacyIPTCDigest' }, - 'legalcode' => { 519 => 'legalcode' }, - 'lens' => { 125 => 0xfdea, 243 => 0x84, 518 => 'Lens' }, + 'legacyiptcdigest' => { 540 => 'LegacyIPTCDigest' }, + 'legalcode' => { 521 => 'legalcode' }, + 'lens' => { 125 => 0xfdea, 243 => 0x84, 520 => 'Lens' }, 'lensafstopbutton' => { 88 => 0x11, 89 => 0x13, 90 => 0x506, 91 => 0x10, 92 => 0x12, 95 => 0x13, 96 => 0x9 }, - 'lensaperturerange' => { 432 => [0x30,0x48] }, - 'lensblur' => { 521 => 'LensBlur', 523 => 'LensBlur' }, - 'lensbluractive' => { 521 => [\'LensBlur','LensBlurActive'], 523 => [\'LensBlur','LensBlurActive'] }, - 'lensbluramount' => { 521 => [\'LensBlur','LensBlurBlurAmount'], 523 => [\'LensBlur','LensBlurBlurAmount'] }, - 'lensblurbokehaspect' => { 521 => [\'LensBlur','LensBlurBokehAspect'], 523 => [\'LensBlur','LensBlurBokehAspect'] }, - 'lensblurbokehrotation' => { 521 => [\'LensBlur','LensBlurBokehRotation'], 523 => [\'LensBlur','LensBlurBokehRotation'] }, - 'lensblurbokehshape' => { 521 => [\'LensBlur','LensBlurBokehShape'], 523 => [\'LensBlur','LensBlurBokehShape'] }, - 'lensblurbokehshapedetail' => { 521 => [\'LensBlur','LensBlurBokehShapeDetail'], 523 => [\'LensBlur','LensBlurBokehShapeDetail'] }, - 'lensblurcateyeamount' => { 521 => [\'LensBlur','LensBlurCatEyeAmount'], 523 => [\'LensBlur','LensBlurCatEyeAmount'] }, - 'lensblurcateyescale' => { 521 => [\'LensBlur','LensBlurCatEyeScale'], 523 => [\'LensBlur','LensBlurCatEyeScale'] }, - 'lensblurfocalrange' => { 521 => [\'LensBlur','LensBlurFocalRange'], 523 => [\'LensBlur','LensBlurFocalRange'] }, - 'lensblurfocalrangesource' => { 521 => [\'LensBlur','LensBlurFocalRangeSource'], 523 => [\'LensBlur','LensBlurFocalRangeSource'] }, - 'lensblurhighlightsboost' => { 521 => [\'LensBlur','LensBlurHighlightsBoost'], 523 => [\'LensBlur','LensBlurHighlightsBoost'] }, - 'lensblurhighlightsthreshold' => { 521 => [\'LensBlur','LensBlurHighlightsThreshold'], 523 => [\'LensBlur','LensBlurHighlightsThreshold'] }, - 'lensblursampledarea' => { 521 => [\'LensBlur','LensBlurSampledArea'], 523 => [\'LensBlur','LensBlurSampledArea'] }, - 'lensblursampledrange' => { 521 => [\'LensBlur','LensBlurSampledRange'], 523 => [\'LensBlur','LensBlurSampledRange'] }, - 'lensblursphericalaberration' => { 521 => [\'LensBlur','LensBlurSphericalAberration'], 523 => [\'LensBlur','LensBlurSphericalAberration'] }, - 'lensblursubjectrange' => { 521 => [\'LensBlur','LensBlurSubjectRange'], 523 => [\'LensBlur','LensBlurSubjectRange'] }, - 'lensblurversion' => { 521 => [\'LensBlur','LensBlurVersion'], 523 => [\'LensBlur','LensBlurVersion'] }, + 'lensaperturerange' => { 434 => [0x30,0x48] }, + 'lensblur' => { 523 => 'LensBlur', 525 => 'LensBlur' }, + 'lensbluractive' => { 523 => [\'LensBlur','LensBlurActive'], 525 => [\'LensBlur','LensBlurActive'] }, + 'lensbluramount' => { 523 => [\'LensBlur','LensBlurBlurAmount'], 525 => [\'LensBlur','LensBlurBlurAmount'] }, + 'lensblurbokehaspect' => { 523 => [\'LensBlur','LensBlurBokehAspect'], 525 => [\'LensBlur','LensBlurBokehAspect'] }, + 'lensblurbokehrotation' => { 523 => [\'LensBlur','LensBlurBokehRotation'], 525 => [\'LensBlur','LensBlurBokehRotation'] }, + 'lensblurbokehshape' => { 523 => [\'LensBlur','LensBlurBokehShape'], 525 => [\'LensBlur','LensBlurBokehShape'] }, + 'lensblurbokehshapedetail' => { 523 => [\'LensBlur','LensBlurBokehShapeDetail'], 525 => [\'LensBlur','LensBlurBokehShapeDetail'] }, + 'lensblurcateyeamount' => { 523 => [\'LensBlur','LensBlurCatEyeAmount'], 525 => [\'LensBlur','LensBlurCatEyeAmount'] }, + 'lensblurcateyescale' => { 523 => [\'LensBlur','LensBlurCatEyeScale'], 525 => [\'LensBlur','LensBlurCatEyeScale'] }, + 'lensblurfocalrange' => { 523 => [\'LensBlur','LensBlurFocalRange'], 525 => [\'LensBlur','LensBlurFocalRange'] }, + 'lensblurfocalrangesource' => { 523 => [\'LensBlur','LensBlurFocalRangeSource'], 525 => [\'LensBlur','LensBlurFocalRangeSource'] }, + 'lensblurhighlightsboost' => { 523 => [\'LensBlur','LensBlurHighlightsBoost'], 525 => [\'LensBlur','LensBlurHighlightsBoost'] }, + 'lensblurhighlightsthreshold' => { 523 => [\'LensBlur','LensBlurHighlightsThreshold'], 525 => [\'LensBlur','LensBlurHighlightsThreshold'] }, + 'lensblursampledarea' => { 523 => [\'LensBlur','LensBlurSampledArea'], 525 => [\'LensBlur','LensBlurSampledArea'] }, + 'lensblursampledrange' => { 523 => [\'LensBlur','LensBlurSampledRange'], 525 => [\'LensBlur','LensBlurSampledRange'] }, + 'lensblursphericalaberration' => { 523 => [\'LensBlur','LensBlurSphericalAberration'], 525 => [\'LensBlur','LensBlurSphericalAberration'] }, + 'lensblursubjectrange' => { 523 => [\'LensBlur','LensBlurSubjectRange'], 525 => [\'LensBlur','LensBlurSubjectRange'] }, + 'lensblurversion' => { 523 => [\'LensBlur','LensBlurVersion'], 525 => [\'LensBlur','LensBlurVersion'] }, 'lenscontrolring' => { 325 => 0xb1, 326 => 0xad, 327 => 0xad, 328 => 0xad }, - 'lenscorrectionsettings' => { 526 => 'LensCorrectionSettings' }, - 'lensdistortinfo' => { 518 => 'LensDistortInfo' }, + 'lenscorrectionsettings' => { 528 => 'LensCorrectionSettings' }, + 'lensdistortinfo' => { 520 => 'LensDistortInfo' }, 'lensdistortionparams' => { 335 => 0x206 }, 'lensdriveend' => { 241 => 0x56 }, 'lensdrivenoaf' => { 90 => 0x505 }, 'lensdrivewhenafimpossible' => { 2 => 0xb }, - 'lense-mountversion' => { 444 => 0x3f0, 492 => 0xd }, - 'lensfirmware' => { 423 => 0x20, 429 => 0xa004 }, - 'lensfirmwareversion' => { 241 => 0x34, 331 => 0x204, 354 => 0x60, 444 => 0x3f3, 492 => 0x14 }, + 'lense-mountversion' => { 446 => 0x3f0, 494 => 0xd }, + 'lensfirmware' => { 425 => 0x20, 431 => 0xa004 }, + 'lensfirmwareversion' => { 241 => 0x34, 331 => 0x204, 354 => 0x60, 446 => 0x3f3, 494 => 0x14 }, 'lensfocallength' => { 109 => 0xf0512, 380 => 0x9 }, - 'lensfocalrange' => { 432 => [0xa,0x2a] }, + 'lensfocalrange' => { 434 => [0xa,0x2a] }, 'lensfocusfunctionbuttons' => { 310 => '55.1', 312 => '52.1', 313 => '52.1', 322 => '52.1', 323 => '52.1' }, - 'lensformat' => { 469 => 0x1891, 471 => 0x18bd, 472 => 0x18ed, 473 => 0x17f1, 475 => 0x106, 476 => 0x106, 487 => 0x603, 488 => 0x5d }, + 'lensformat' => { 471 => 0x1891, 473 => 0x18bd, 474 => 0x18ed, 475 => 0x17f1, 477 => 0x106, 478 => 0x106, 489 => 0x603, 490 => 0x5d }, 'lensfstops' => { 235 => 0x7, 236 => 0xc, 237 => 0xd, 241 => 0xe, 243 => 0x8b, 380 => '0.3' }, 'lensfunc1button' => { 325 => 0xa3, 326 => 0x9f, 327 => 0x9f, 328 => 0x9f }, 'lensfunc1buttonplaybackmode' => { 250 => 0x80a, 253 => 0x810 }, 'lensfunc2button' => { 325 => 0xab, 326 => 0xa7, 327 => 0xa7, 328 => 0xa7 }, 'lensfunc2buttonplaybackmode' => { 250 => 0x80c, 253 => 0x812 }, - 'lensid' => { 241 => 0x30, 518 => 'LensID' }, + 'lensid' => { 241 => 0x30, 520 => 'LensID' }, 'lensidnumber' => { 235 => 0x6, 236 => 0xb, 237 => 0xc, 241 => 0xd }, - 'lensinfo' => { 125 => 0xa432, 386 => 0x2a, 518 => 'LensInfo', 528 => 'LensSpecification' }, + 'lensinfo' => { 125 => 0xa432, 386 => 0x2a, 520 => 'LensInfo', 530 => 'LensSpecification' }, 'lenskind' => { 380 => 0x1 }, - 'lensmake' => { 125 => 0xa433, 170 => 'Make', 528 => 'LensMake' }, - 'lensmanualdistortionamount' => { 521 => 'LensManualDistortionAmount', 523 => 'LensManualDistortionAmount' }, + 'lensmake' => { 125 => 0xa433, 170 => 'Make', 530 => 'LensMake' }, + 'lensmanualdistortionamount' => { 523 => 'LensManualDistortionAmount', 525 => 'LensManualDistortionAmount' }, 'lensmanufacturer' => { 185 => 'LensManufacturer' }, - 'lensmaxaperturerange' => { 432 => 0x2b }, - 'lensmodel' => { 7 => 0x937, 14 => 0x92b, 15 => 0x933, 69 => 0x95, 125 => 0xa434, 170 => 'Model', 185 => 'LensModel', 238 => 0x18a, 239 => 0x18b, 240 => 0x2ac, 331 => 0x203, 386 => 0xc, 399 => 0x412, 528 => 'LensModel' }, + 'lensmaxaperturerange' => { 434 => 0x2b }, + 'lensmodel' => { 7 => 0x937, 14 => 0x92b, 15 => 0x933, 69 => 0x95, 125 => 0xa434, 170 => 'Model', 185 => 'LensModel', 238 => 0x18a, 239 => 0x18b, 240 => 0x2ac, 331 => 0x203, 386 => 0xc, 399 => 0x412, 417 => 'camera.lens_model', 530 => 'LensModel' }, 'lensmodulationoptimizer' => { 133 => 0x1045 }, - 'lensmount' => { 444 => 0x99, 469 => 0x1892, 471 => 0x18be, 472 => 0x18ee, 473 => 0x17f2, 475 => 0x105, 476 => 0x105, 487 => 0x604, 488 => 0x5e }, - 'lensmount2' => { 492 => 0x8 }, + 'lensmount' => { 446 => 0x99, 471 => 0x1892, 473 => 0x18be, 474 => 0x18ee, 475 => 0x17f2, 477 => 0x105, 478 => 0x105, 489 => 0x604, 490 => 0x5e }, + 'lensmount2' => { 494 => 0x8 }, 'lensmounttype' => { 241 => 0x5f }, 'lenspositionabsolute' => { 241 => 0x5a }, - 'lensprofilechromaticaberrationscale' => { 521 => 'LensProfileChromaticAberrationScale', 523 => 'LensProfileChromaticAberrationScale' }, - 'lensprofiledigest' => { 521 => 'LensProfileDigest', 523 => 'LensProfileDigest' }, - 'lensprofiledistortionscale' => { 521 => 'LensProfileDistortionScale', 523 => 'LensProfileDistortionScale' }, - 'lensprofileenable' => { 521 => 'LensProfileEnable', 523 => 'LensProfileEnable' }, - 'lensprofilefilename' => { 521 => 'LensProfileFilename', 523 => 'LensProfileFilename' }, - 'lensprofileisembedded' => { 521 => 'LensProfileIsEmbedded', 523 => 'LensProfileIsEmbedded' }, - 'lensprofilematchkeycameramodelname' => { 521 => 'LensProfileMatchKeyCameraModelName', 523 => 'LensProfileMatchKeyCameraModelName' }, - 'lensprofilematchkeyexifmake' => { 521 => 'LensProfileMatchKeyExifMake', 523 => 'LensProfileMatchKeyExifMake' }, - 'lensprofilematchkeyexifmodel' => { 521 => 'LensProfileMatchKeyExifModel', 523 => 'LensProfileMatchKeyExifModel' }, - 'lensprofilematchkeyisraw' => { 521 => 'LensProfileMatchKeyIsRaw', 523 => 'LensProfileMatchKeyIsRaw' }, - 'lensprofilematchkeylensid' => { 521 => 'LensProfileMatchKeyLensID', 523 => 'LensProfileMatchKeyLensID' }, - 'lensprofilematchkeylensinfo' => { 521 => 'LensProfileMatchKeyLensInfo', 523 => 'LensProfileMatchKeyLensInfo' }, - 'lensprofilematchkeylensname' => { 521 => 'LensProfileMatchKeyLensName', 523 => 'LensProfileMatchKeyLensName' }, - 'lensprofilematchkeysensorformatfactor' => { 521 => 'LensProfileMatchKeySensorFormatFactor', 523 => 'LensProfileMatchKeySensorFormatFactor' }, - 'lensprofilename' => { 353 => 0x370, 521 => 'LensProfileName', 523 => 'LensProfileName' }, - 'lensprofilesetup' => { 521 => 'LensProfileSetup', 523 => 'LensProfileSetup' }, - 'lensprofilevignettingscale' => { 521 => 'LensProfileVignettingScale', 523 => 'LensProfileVignettingScale' }, + 'lensprofilechromaticaberrationscale' => { 523 => 'LensProfileChromaticAberrationScale', 525 => 'LensProfileChromaticAberrationScale' }, + 'lensprofiledigest' => { 523 => 'LensProfileDigest', 525 => 'LensProfileDigest' }, + 'lensprofiledistortionscale' => { 523 => 'LensProfileDistortionScale', 525 => 'LensProfileDistortionScale' }, + 'lensprofileenable' => { 523 => 'LensProfileEnable', 525 => 'LensProfileEnable' }, + 'lensprofilefilename' => { 523 => 'LensProfileFilename', 525 => 'LensProfileFilename' }, + 'lensprofileisembedded' => { 523 => 'LensProfileIsEmbedded', 525 => 'LensProfileIsEmbedded' }, + 'lensprofilematchkeycameramodelname' => { 523 => 'LensProfileMatchKeyCameraModelName', 525 => 'LensProfileMatchKeyCameraModelName' }, + 'lensprofilematchkeyexifmake' => { 523 => 'LensProfileMatchKeyExifMake', 525 => 'LensProfileMatchKeyExifMake' }, + 'lensprofilematchkeyexifmodel' => { 523 => 'LensProfileMatchKeyExifModel', 525 => 'LensProfileMatchKeyExifModel' }, + 'lensprofilematchkeyisraw' => { 523 => 'LensProfileMatchKeyIsRaw', 525 => 'LensProfileMatchKeyIsRaw' }, + 'lensprofilematchkeylensid' => { 523 => 'LensProfileMatchKeyLensID', 525 => 'LensProfileMatchKeyLensID' }, + 'lensprofilematchkeylensinfo' => { 523 => 'LensProfileMatchKeyLensInfo', 525 => 'LensProfileMatchKeyLensInfo' }, + 'lensprofilematchkeylensname' => { 523 => 'LensProfileMatchKeyLensName', 525 => 'LensProfileMatchKeyLensName' }, + 'lensprofilematchkeysensorformatfactor' => { 523 => 'LensProfileMatchKeySensorFormatFactor', 525 => 'LensProfileMatchKeySensorFormatFactor' }, + 'lensprofilename' => { 353 => 0x370, 523 => 'LensProfileName', 525 => 'LensProfileName' }, + 'lensprofilesetup' => { 523 => 'LensProfileSetup', 525 => 'LensProfileSetup' }, + 'lensprofilevignettingscale' => { 523 => 'LensProfileVignettingScale', 525 => 'LensProfileVignettingScale' }, 'lensproperties' => { 331 => 0x20b }, - 'lensserialnumber' => { 21 => 0x164, 35 => 0x16b, 65 => 0x0, 125 => 0xa435, 170 => 'SerialNumber', 331 => 0x202, 352 => 0x321, 354 => 0x52, 415 => 'LENS', 423 => 0x30, 518 => 'LensSerialNumber', 528 => 'LensSerialNumber' }, + 'lensserialnumber' => { 21 => 0x164, 35 => 0x16b, 65 => 0x0, 125 => 0xa435, 170 => 'SerialNumber', 331 => 0x202, 352 => 0x321, 354 => 0x52, 416 => 'LENS', 425 => 0x30, 520 => 'LensSerialNumber', 530 => 'LensSerialNumber' }, 'lensshutterlock' => { 191 => 0x4a }, - 'lensspec' => { 439 => 0x0, 440 => 0x0, 441 => 0x0, 456 => 0xb02a }, - 'lensspecfeatures' => { 475 => [0x115,0x116], 476 => [0x116,0x1ed,0x1f0,0x21c,0x21e] }, + 'lensspec' => { 441 => 0x0, 442 => 0x0, 443 => 0x0, 458 => 0xb02a }, + 'lensspecfeatures' => { 477 => [0x115,0x116], 478 => [0x116,0x1ed,0x1f0,0x21c,0x21e] }, 'lenstemperature' => { 335 => 0x1008 }, - 'lenstype' => { 7 => 0xe2, 8 => 0xd, 9 => 0x1a7, 10 => 0xc, 11 => 0x111, 12 => 0xc, 13 => 0x14f, 14 => 0xd6, 15 => 0xde, 16 => 0xf6, 17 => 0xea, 18 => 0xff, 19 => [0xc,0x97], 20 => 0xe6, 21 => 0x153, 22 => 0xea, 23 => 0xe8, 24 => 0x127, 25 => 0x161, 26 => 0x166, 27 => 0x184, 28 => 0x112, 29 => 0x189, 37 => 0x16, 193 => 0x10c, 194 => 0x49bd, 243 => 0x83, 331 => 0x201, 345 => 0x16, 349 => 0x310, 351 => 0x303, 352 => 0x303, 354 => 0x51, 356 => 0x3405, 381 => 0x0, 382 => 0x0, 383 => 0x1, 384 => 0x1, 385 => 0x1, 387 => 0x0, 429 => 0xa003, 432 => 0x27, 456 => 0xb027, 469 => 0x1896, 471 => 0x18c2, 472 => 0x18f2, 473 => 0x17f6, 475 => 0x109, 476 => 0x109, 487 => 0x608, 488 => 0x62 }, - 'lenstype2' => { 444 => 0x3f7, 469 => 0x1893, 471 => 0x18bf, 472 => 0x18ef, 473 => 0x17f3, 475 => 0x107, 476 => 0x107, 487 => 0x605, 488 => 0x60 }, - 'lenstype3' => { 492 => 0x9 }, + 'lenstype' => { 7 => 0xe2, 8 => 0xd, 9 => 0x1a7, 10 => 0xc, 11 => 0x111, 12 => 0xc, 13 => 0x14f, 14 => 0xd6, 15 => 0xde, 16 => 0xf6, 17 => 0xea, 18 => 0xff, 19 => [0xc,0x97], 20 => 0xe6, 21 => 0x153, 22 => 0xea, 23 => 0xe8, 24 => 0x127, 25 => 0x161, 26 => 0x166, 27 => 0x184, 28 => 0x112, 29 => 0x189, 37 => 0x16, 193 => 0x10c, 194 => 0x49bd, 243 => 0x83, 331 => 0x201, 345 => 0x16, 349 => 0x310, 351 => 0x303, 352 => 0x303, 354 => 0x51, 356 => 0x3405, 381 => 0x0, 382 => 0x0, 383 => 0x1, 384 => 0x1, 385 => 0x1, 387 => 0x0, 431 => 0xa003, 434 => 0x27, 458 => 0xb027, 471 => 0x1896, 473 => 0x18c2, 474 => 0x18f2, 475 => 0x17f6, 477 => 0x109, 478 => 0x109, 489 => 0x608, 490 => 0x62 }, + 'lenstype2' => { 446 => 0x3f7, 471 => 0x1893, 473 => 0x18bf, 474 => 0x18ef, 475 => 0x17f3, 477 => 0x107, 478 => 0x107, 489 => 0x605, 490 => 0x60 }, + 'lenstype3' => { 494 => 0x9 }, 'lenstypemake' => { 354 => 0xc4 }, 'lenstypemodel' => { 354 => [0xc5,0xe4] }, - 'lenszoomposition' => { 484 => 0x19, 485 => 0x1e, 488 => [0x342,0x34e,0x35a] }, + 'lenszoomposition' => { 486 => 0x19, 487 => 0x1e, 490 => [0x342,0x34e,0x35a] }, 'levelindicator' => { 362 => 0x15 }, - 'levelmeter' => { 415 => ['Lvlm','lvlm'] }, + 'levelmeter' => { 416 => ['Lvlm','lvlm'] }, 'levelorientation' => { 388 => 0x0 }, - 'license' => { 519 => 'license' }, + 'license' => { 521 => 'license' }, 'licensee' => { 340 => 'Licensee' }, 'licenseeid' => { 340 => [\'Licensee','LicenseeLicenseeID'] }, 'licenseeimageid' => { 340 => 'LicenseeImageID' }, @@ -4182,7 +4185,7 @@ my %tagLookup = ( 'licenseid' => { 340 => 'LicenseID' }, 'licensestartdate' => { 340 => 'LicenseStartDate' }, 'licensetransactiondate' => { 340 => 'LicenseTransactionDate' }, - 'licensetype' => { 525 => 'licensetype' }, + 'licensetype' => { 527 => 'licensetype' }, 'licensor' => { 340 => 'Licensor' }, 'licensorcity' => { 340 => [\'Licensor','LicensorLicensorCity'] }, 'licensorcountry' => { 340 => [\'Licensor','LicensorLicensorCountry'] }, @@ -4204,8 +4207,8 @@ my %tagLookup = ( 'lightcondition' => { 335 => 0x1009 }, 'lightingmode' => { 119 => 0x302a }, 'lightreading' => { 390 => 0x15 }, - 'lightsource' => { 125 => 0x9208, 243 => 0x90, 338 => 0x1000, 527 => 'LightSource' }, - 'lightsourcespecial' => { 431 => 0x21d }, + 'lightsource' => { 125 => 0x9208, 243 => 0x90, 338 => 0x1000, 529 => 'LightSource' }, + 'lightsourcespecial' => { 433 => 0x21d }, 'lightswitch' => { 322 => '0.1', 324 => '0.1' }, 'lightvaluecenter' => { 335 => 0x103d }, 'lightvalueperiphery' => { 335 => 0x103e }, @@ -4232,132 +4235,132 @@ my %tagLookup = ( 'linearityuppermargin' => { 44 => 0x32c, 45 => 0x282, 46 => 0x296, 49 => [0x2ba,0x2d1,0x2d5], 51 => 0x1e5, 52 => [0x1fe,0x2de], 53 => [0x232,0x310], 54 => 0x31e }, 'linearizationtable' => { 125 => 0xc618 }, 'linearresponselimit' => { 125 => 0xc62e }, - 'link' => { 540 => 'link' }, + 'link' => { 542 => 'link' }, 'linkaetoafpoint' => { 370 => '14.2' }, - 'linkedencodedrightsexpr' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprLinkedRightsExpr'] }, - 'linkedencodedrightsexprlangid' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprLangId'] }, - 'linkedencodedrightsexprtype' => { 535 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprEncType'] }, - 'linkedencrightsexpr' => { 535 => 'LinkedEncRightsExpr' }, + 'linkedencodedrightsexpr' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprLinkedRightsExpr'] }, + 'linkedencodedrightsexprlangid' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprLangId'] }, + 'linkedencodedrightsexprtype' => { 537 => [\'LinkedEncRightsExpr','LinkedEncRightsExprRightsExprEncType'] }, + 'linkedencrightsexpr' => { 537 => 'LinkedEncRightsExpr' }, 'linkvrtofocuspoint' => { 247 => 0x3ec }, 'linlogcoring' => { 145 => 0x904 }, 'lithostratigraphicterms' => { 124 => [\'GeologicalContext','GeologicalContextLithostratigraphicTerms'] }, - 'livephotoauto' => { 409 => 'live-photo.auto' }, + 'livephotoauto' => { 410 => 'live-photo.auto' }, 'livephotovideoindex' => { 1 => 0x17 }, - 'livephotovitalityscore' => { 409 => 'live-photo.vitality-score' }, - 'livephotovitalityscoringversion' => { 409 => 'live-photo.vitality-scoring-version' }, + 'livephotovitalityscore' => { 410 => 'live-photo.vitality-score' }, + 'livephotovitalityscoringversion' => { 410 => 'live-photo.vitality-scoring-version' }, 'liveview' => { 365 => 0x1fa, 372 => 0x3 }, 'liveviewaf' => { 314 => '32.1', 324 => '34.1' }, 'liveviewafareamode' => { 319 => '34.1' }, - 'liveviewafmethod' => { 461 => 0x20 }, + 'liveviewafmethod' => { 463 => 0x20 }, 'liveviewafmode' => { 319 => '34.2' }, - 'liveviewafsetting' => { 444 => 0x36 }, + 'liveviewafsetting' => { 446 => 0x36 }, 'liveviewbuttonoptions' => { 310 => '50.2', 312 => '48.2', 313 => '48.2', 322 => '48.2', 323 => '48.2' }, 'liveviewexposuresimulation' => { 90 => 0x810 }, - 'liveviewfocusmode' => { 444 => [0x8b,0x28b] }, - 'liveviewmetering' => { 444 => [0x84,0x284] }, + 'liveviewfocusmode' => { 446 => [0x8b,0x28b] }, + 'liveviewmetering' => { 446 => [0x84,0x284] }, 'liveviewmonitorofftime' => { 310 => '21.2', 312 => '21.2', 313 => '21.2', 315 => '20.2', 316 => '20.2', 317 => '20.2', 319 => '20.2', 322 => '21.2', 323 => '21.2' }, 'liveviewshooting' => { 61 => 0x13 }, 'livingspecimen' => { 124 => 'LivingSpecimen' }, 'livingspecimenmaterialsampleid' => { 124 => [\'LivingSpecimen','LivingSpecimenMaterialSampleID'] }, 'localcaption' => { 138 => 0x79 }, 'localizedcameramodel' => { 125 => 0xc615 }, - 'locallocationname' => { 429 => 0x30 }, - 'location' => { 242 => 0x9, 354 => 0x67, 513 => 'Location', 534 => 'Location', 539 => 'location', 540 => 'location' }, - 'locationaccuracyhorizontal' => { 409 => 'location.accuracy.horizontal' }, - 'locationareacode' => { 520 => 'lac' }, - 'locationbody' => { 409 => 'location.body' }, - 'locationcreated' => { 535 => 'LocationCreated' }, - 'locationcreatedcity' => { 535 => [\'LocationCreated','LocationCreatedCity'] }, - 'locationcreatedcountrycode' => { 535 => [\'LocationCreated','LocationCreatedCountryCode'] }, - 'locationcreatedcountryname' => { 535 => [\'LocationCreated','LocationCreatedCountryName'] }, - 'locationcreatedgpsaltitude' => { 535 => [\'LocationCreated','LocationCreatedGPSAltitude'] }, - 'locationcreatedgpsaltituderef' => { 535 => [\'LocationCreated','LocationCreatedGPSAltitudeRef'] }, - 'locationcreatedgpslatitude' => { 535 => [\'LocationCreated','LocationCreatedGPSLatitude'] }, - 'locationcreatedgpslongitude' => { 535 => [\'LocationCreated','LocationCreatedGPSLongitude'] }, - 'locationcreatedidentifier' => { 535 => [\'LocationCreated','LocationCreatedIdentifier'] }, - 'locationcreatedlocationid' => { 535 => [\'LocationCreated','LocationCreatedLocationId'] }, - 'locationcreatedlocationname' => { 535 => [\'LocationCreated','LocationCreatedLocationName'] }, - 'locationcreatedprovincestate' => { 535 => [\'LocationCreated','LocationCreatedProvinceState'] }, - 'locationcreatedsublocation' => { 535 => [\'LocationCreated','LocationCreatedSublocation'] }, - 'locationcreatedworldregion' => { 535 => [\'LocationCreated','LocationCreatedWorldRegion'] }, - 'locationdate' => { 409 => 'location.date' }, - 'locationinformation' => { 415 => 'loci' }, + 'locallocationname' => { 431 => 0x30 }, + 'location' => { 242 => 0x9, 354 => 0x67, 515 => 'Location', 536 => 'Location', 541 => 'location', 542 => 'location' }, + 'locationaccuracyhorizontal' => { 410 => 'location.accuracy.horizontal' }, + 'locationareacode' => { 522 => 'lac' }, + 'locationbody' => { 410 => 'location.body' }, + 'locationcreated' => { 537 => 'LocationCreated' }, + 'locationcreatedcity' => { 537 => [\'LocationCreated','LocationCreatedCity'] }, + 'locationcreatedcountrycode' => { 537 => [\'LocationCreated','LocationCreatedCountryCode'] }, + 'locationcreatedcountryname' => { 537 => [\'LocationCreated','LocationCreatedCountryName'] }, + 'locationcreatedgpsaltitude' => { 537 => [\'LocationCreated','LocationCreatedGPSAltitude'] }, + 'locationcreatedgpsaltituderef' => { 537 => [\'LocationCreated','LocationCreatedGPSAltitudeRef'] }, + 'locationcreatedgpslatitude' => { 537 => [\'LocationCreated','LocationCreatedGPSLatitude'] }, + 'locationcreatedgpslongitude' => { 537 => [\'LocationCreated','LocationCreatedGPSLongitude'] }, + 'locationcreatedidentifier' => { 537 => [\'LocationCreated','LocationCreatedIdentifier'] }, + 'locationcreatedlocationid' => { 537 => [\'LocationCreated','LocationCreatedLocationId'] }, + 'locationcreatedlocationname' => { 537 => [\'LocationCreated','LocationCreatedLocationName'] }, + 'locationcreatedprovincestate' => { 537 => [\'LocationCreated','LocationCreatedProvinceState'] }, + 'locationcreatedsublocation' => { 537 => [\'LocationCreated','LocationCreatedSublocation'] }, + 'locationcreatedworldregion' => { 537 => [\'LocationCreated','LocationCreatedWorldRegion'] }, + 'locationdate' => { 410 => 'location.date' }, + 'locationinformation' => { 416 => 'loci' }, 'locationinfoversion' => { 242 => 0x0 }, - 'locationname' => { 409 => 'location.name', 429 => 0x31 }, - 'locationnote' => { 409 => 'location.note' }, - 'locationrole' => { 409 => 'location.role' }, - 'locationshown' => { 535 => 'LocationShown' }, - 'locationshowncity' => { 535 => [\'LocationShown','LocationShownCity'] }, - 'locationshowncountrycode' => { 535 => [\'LocationShown','LocationShownCountryCode'] }, - 'locationshowncountryname' => { 535 => [\'LocationShown','LocationShownCountryName'] }, - 'locationshowngpsaltitude' => { 535 => [\'LocationShown','LocationShownGPSAltitude'] }, - 'locationshowngpsaltituderef' => { 535 => [\'LocationShown','LocationShownGPSAltitudeRef'] }, - 'locationshowngpslatitude' => { 535 => [\'LocationShown','LocationShownGPSLatitude'] }, - 'locationshowngpslongitude' => { 535 => [\'LocationShown','LocationShownGPSLongitude'] }, - 'locationshownidentifier' => { 535 => [\'LocationShown','LocationShownIdentifier'] }, - 'locationshownlocationid' => { 535 => [\'LocationShown','LocationShownLocationId'] }, - 'locationshownlocationname' => { 535 => [\'LocationShown','LocationShownLocationName'] }, - 'locationshownprovincestate' => { 535 => [\'LocationShown','LocationShownProvinceState'] }, - 'locationshownsublocation' => { 535 => [\'LocationShown','LocationShownSublocation'] }, - 'locationshownworldregion' => { 535 => [\'LocationShown','LocationShownWorldRegion'] }, + 'locationname' => { 410 => 'location.name', 431 => 0x31 }, + 'locationnote' => { 410 => 'location.note' }, + 'locationrole' => { 410 => 'location.role' }, + 'locationshown' => { 537 => 'LocationShown' }, + 'locationshowncity' => { 537 => [\'LocationShown','LocationShownCity'] }, + 'locationshowncountrycode' => { 537 => [\'LocationShown','LocationShownCountryCode'] }, + 'locationshowncountryname' => { 537 => [\'LocationShown','LocationShownCountryName'] }, + 'locationshowngpsaltitude' => { 537 => [\'LocationShown','LocationShownGPSAltitude'] }, + 'locationshowngpsaltituderef' => { 537 => [\'LocationShown','LocationShownGPSAltitudeRef'] }, + 'locationshowngpslatitude' => { 537 => [\'LocationShown','LocationShownGPSLatitude'] }, + 'locationshowngpslongitude' => { 537 => [\'LocationShown','LocationShownGPSLongitude'] }, + 'locationshownidentifier' => { 537 => [\'LocationShown','LocationShownIdentifier'] }, + 'locationshownlocationid' => { 537 => [\'LocationShown','LocationShownLocationId'] }, + 'locationshownlocationname' => { 537 => [\'LocationShown','LocationShownLocationName'] }, + 'locationshownprovincestate' => { 537 => [\'LocationShown','LocationShownProvinceState'] }, + 'locationshownsublocation' => { 537 => [\'LocationShown','LocationShownSublocation'] }, + 'locationshownworldregion' => { 537 => [\'LocationShown','LocationShownWorldRegion'] }, 'lockmicrophonebutton' => { 90 => 0x709 }, - 'logcomment' => { 550 => 'logComment' }, + 'logcomment' => { 552 => 'logComment' }, 'logscale' => { 145 => 0x902 }, - 'longdescription' => { 407 => 'ldes' }, - 'longexposurenoisereduction' => { 67 => 0x4, 90 => 0x201, 91 => 0x1, 92 => 0x2, 93 => 0x1, 94 => 0x1, 95 => 0x2, 96 => 0x1, 354 => 0x49, 442 => 0x2b, 443 => 0x25, 444 => 0x25, 456 => 0x2008, 461 => 0x11, 488 => 0x44 }, + 'longdescription' => { 408 => 'ldes' }, + 'longexposurenoisereduction' => { 67 => 0x4, 90 => 0x201, 91 => 0x1, 92 => 0x2, 93 => 0x1, 94 => 0x1, 95 => 0x2, 96 => 0x1, 354 => 0x49, 444 => 0x2b, 445 => 0x25, 446 => 0x25, 458 => 0x2008, 463 => 0x11, 490 => 0x44 }, 'longexposurenoisereduction2' => { 61 => 0x8 }, 'longexposurenrused' => { 354 => 0xbe }, 'longitude' => { 122 => 'Longitude' }, - 'look' => { 521 => 'Look', 523 => 'Look' }, - 'lookamount' => { 521 => [\'Look','LookAmount'], 523 => [\'Look','LookAmount'] }, - 'lookcluster' => { 521 => [\'Look','LookCluster'], 523 => [\'Look','LookCluster'] }, - 'lookcopyright' => { 521 => [\'Look','LookCopyright'], 523 => [\'Look','LookCopyright'] }, - 'lookgroup' => { 521 => [\'Look','LookGroup'], 523 => [\'Look','LookGroup'] }, - 'lookname' => { 521 => 'LookName', 523 => 'LookName' }, - 'lookparameters' => { 521 => [\'Look','LookParameters'], 523 => [\'Look','LookParameters'] }, - 'lookparameterscameraprofile' => { 521 => [\'Look','LookParametersCameraProfile'], 523 => [\'Look','LookParametersCameraProfile'] }, - 'lookparametersclarity2012' => { 521 => [\'Look','LookParametersClarity2012'], 523 => [\'Look','LookParametersClarity2012'] }, - 'lookparametersconverttograyscale' => { 521 => [\'Look','LookParametersConvertToGrayscale'], 523 => [\'Look','LookParametersConvertToGrayscale'] }, - 'lookparametershighlights2012' => { 521 => [\'Look','LookParametersHighlights2012'], 523 => [\'Look','LookParametersHighlights2012'] }, - 'lookparameterslooktable' => { 521 => [\'Look','LookParametersLookTable'], 523 => [\'Look','LookParametersLookTable'] }, - 'lookparametersprocessversion' => { 521 => [\'Look','LookParametersProcessVersion'], 523 => [\'Look','LookParametersProcessVersion'] }, - 'lookparametersshadows2012' => { 521 => [\'Look','LookParametersShadows2012'], 523 => [\'Look','LookParametersShadows2012'] }, - 'lookparameterstonecurvepv2012' => { 521 => [\'Look','LookParametersToneCurvePV2012'], 523 => [\'Look','LookParametersToneCurvePV2012'] }, - 'lookparameterstonecurvepv2012blue' => { 521 => [\'Look','LookParametersToneCurvePV2012Blue'], 523 => [\'Look','LookParametersToneCurvePV2012Blue'] }, - 'lookparameterstonecurvepv2012green' => { 521 => [\'Look','LookParametersToneCurvePV2012Green'], 523 => [\'Look','LookParametersToneCurvePV2012Green'] }, - 'lookparameterstonecurvepv2012red' => { 521 => [\'Look','LookParametersToneCurvePV2012Red'], 523 => [\'Look','LookParametersToneCurvePV2012Red'] }, - 'lookparametersversion' => { 521 => [\'Look','LookParametersVersion'], 523 => [\'Look','LookParametersVersion'] }, - 'looksupportsamount' => { 521 => [\'Look','LookSupportsAmount'], 523 => [\'Look','LookSupportsAmount'] }, - 'looksupportsmonochrome' => { 521 => [\'Look','LookSupportsMonochrome'], 523 => [\'Look','LookSupportsMonochrome'] }, - 'looksupportsoutputreferred' => { 521 => [\'Look','LookSupportsOutputReferred'], 523 => [\'Look','LookSupportsOutputReferred'] }, - 'lookuuid' => { 521 => [\'Look','LookUUID'], 523 => [\'Look','LookUUID'] }, - 'loop' => { 550 => 'loop' }, - 'loopstyle' => { 415 => 'LOOP' }, + 'look' => { 523 => 'Look', 525 => 'Look' }, + 'lookamount' => { 523 => [\'Look','LookAmount'], 525 => [\'Look','LookAmount'] }, + 'lookcluster' => { 523 => [\'Look','LookCluster'], 525 => [\'Look','LookCluster'] }, + 'lookcopyright' => { 523 => [\'Look','LookCopyright'], 525 => [\'Look','LookCopyright'] }, + 'lookgroup' => { 523 => [\'Look','LookGroup'], 525 => [\'Look','LookGroup'] }, + 'lookname' => { 523 => 'LookName', 525 => 'LookName' }, + 'lookparameters' => { 523 => [\'Look','LookParameters'], 525 => [\'Look','LookParameters'] }, + 'lookparameterscameraprofile' => { 523 => [\'Look','LookParametersCameraProfile'], 525 => [\'Look','LookParametersCameraProfile'] }, + 'lookparametersclarity2012' => { 523 => [\'Look','LookParametersClarity2012'], 525 => [\'Look','LookParametersClarity2012'] }, + 'lookparametersconverttograyscale' => { 523 => [\'Look','LookParametersConvertToGrayscale'], 525 => [\'Look','LookParametersConvertToGrayscale'] }, + 'lookparametershighlights2012' => { 523 => [\'Look','LookParametersHighlights2012'], 525 => [\'Look','LookParametersHighlights2012'] }, + 'lookparameterslooktable' => { 523 => [\'Look','LookParametersLookTable'], 525 => [\'Look','LookParametersLookTable'] }, + 'lookparametersprocessversion' => { 523 => [\'Look','LookParametersProcessVersion'], 525 => [\'Look','LookParametersProcessVersion'] }, + 'lookparametersshadows2012' => { 523 => [\'Look','LookParametersShadows2012'], 525 => [\'Look','LookParametersShadows2012'] }, + 'lookparameterstonecurvepv2012' => { 523 => [\'Look','LookParametersToneCurvePV2012'], 525 => [\'Look','LookParametersToneCurvePV2012'] }, + 'lookparameterstonecurvepv2012blue' => { 523 => [\'Look','LookParametersToneCurvePV2012Blue'], 525 => [\'Look','LookParametersToneCurvePV2012Blue'] }, + 'lookparameterstonecurvepv2012green' => { 523 => [\'Look','LookParametersToneCurvePV2012Green'], 525 => [\'Look','LookParametersToneCurvePV2012Green'] }, + 'lookparameterstonecurvepv2012red' => { 523 => [\'Look','LookParametersToneCurvePV2012Red'], 525 => [\'Look','LookParametersToneCurvePV2012Red'] }, + 'lookparametersversion' => { 523 => [\'Look','LookParametersVersion'], 525 => [\'Look','LookParametersVersion'] }, + 'looksupportsamount' => { 523 => [\'Look','LookSupportsAmount'], 525 => [\'Look','LookSupportsAmount'] }, + 'looksupportsmonochrome' => { 523 => [\'Look','LookSupportsMonochrome'], 525 => [\'Look','LookSupportsMonochrome'] }, + 'looksupportsoutputreferred' => { 523 => [\'Look','LookSupportsOutputReferred'], 525 => [\'Look','LookSupportsOutputReferred'] }, + 'lookuuid' => { 523 => [\'Look','LookUUID'], 525 => [\'Look','LookUUID'] }, + 'loop' => { 552 => 'loop' }, + 'loopstyle' => { 416 => 'LOOP' }, 'lowestbiostratigraphiczone' => { 124 => [\'GeologicalContext','GeologicalContextLowestBiostratigraphicZone'] }, - 'luminanceadjustmentaqua' => { 521 => 'LuminanceAdjustmentAqua', 523 => 'LuminanceAdjustmentAqua' }, - 'luminanceadjustmentblue' => { 521 => 'LuminanceAdjustmentBlue', 523 => 'LuminanceAdjustmentBlue' }, - 'luminanceadjustmentgreen' => { 521 => 'LuminanceAdjustmentGreen', 523 => 'LuminanceAdjustmentGreen' }, - 'luminanceadjustmentmagenta' => { 521 => 'LuminanceAdjustmentMagenta', 523 => 'LuminanceAdjustmentMagenta' }, - 'luminanceadjustmentorange' => { 521 => 'LuminanceAdjustmentOrange', 523 => 'LuminanceAdjustmentOrange' }, - 'luminanceadjustmentpurple' => { 521 => 'LuminanceAdjustmentPurple', 523 => 'LuminanceAdjustmentPurple' }, - 'luminanceadjustmentred' => { 521 => 'LuminanceAdjustmentRed', 523 => 'LuminanceAdjustmentRed' }, - 'luminanceadjustmentyellow' => { 521 => 'LuminanceAdjustmentYellow', 523 => 'LuminanceAdjustmentYellow' }, + 'luminanceadjustmentaqua' => { 523 => 'LuminanceAdjustmentAqua', 525 => 'LuminanceAdjustmentAqua' }, + 'luminanceadjustmentblue' => { 523 => 'LuminanceAdjustmentBlue', 525 => 'LuminanceAdjustmentBlue' }, + 'luminanceadjustmentgreen' => { 523 => 'LuminanceAdjustmentGreen', 525 => 'LuminanceAdjustmentGreen' }, + 'luminanceadjustmentmagenta' => { 523 => 'LuminanceAdjustmentMagenta', 525 => 'LuminanceAdjustmentMagenta' }, + 'luminanceadjustmentorange' => { 523 => 'LuminanceAdjustmentOrange', 525 => 'LuminanceAdjustmentOrange' }, + 'luminanceadjustmentpurple' => { 523 => 'LuminanceAdjustmentPurple', 525 => 'LuminanceAdjustmentPurple' }, + 'luminanceadjustmentred' => { 523 => 'LuminanceAdjustmentRed', 525 => 'LuminanceAdjustmentRed' }, + 'luminanceadjustmentyellow' => { 523 => 'LuminanceAdjustmentYellow', 525 => 'LuminanceAdjustmentYellow' }, 'luminancecurvelimits' => { 114 => 0x150 }, 'luminancecurvepoints' => { 114 => 0x126 }, 'luminancenoiseamplitude' => { 1 => 0x1d }, - 'luminancenoisereduction' => { 109 => 0x20600, 115 => 0x5f, 432 => 0x1b }, - 'luminancenoisereductioncontrast' => { 521 => 'LuminanceNoiseReductionContrast', 523 => 'LuminanceNoiseReductionContrast' }, - 'luminancenoisereductiondetail' => { 521 => 'LuminanceNoiseReductionDetail', 523 => 'LuminanceNoiseReductionDetail' }, + 'luminancenoisereduction' => { 109 => 0x20600, 115 => 0x5f, 434 => 0x1b }, + 'luminancenoisereductioncontrast' => { 523 => 'LuminanceNoiseReductionContrast', 525 => 'LuminanceNoiseReductionContrast' }, + 'luminancenoisereductiondetail' => { 523 => 'LuminanceNoiseReductionDetail', 525 => 'LuminanceNoiseReductionDetail' }, 'luminancenr_tiff_jpeg' => { 115 => 0x6d }, - 'luminancesmoothing' => { 521 => 'LuminanceSmoothing', 523 => 'LuminanceSmoothing' }, + 'luminancesmoothing' => { 523 => 'LuminanceSmoothing', 525 => 'LuminanceSmoothing' }, 'lvshootingareadisplay' => { 90 => [0x40b,0x40c] }, - 'lyrics' => { 407 => "\xa9lyr", 415 => "\xa9lyr", 550 => 'lyrics' }, - 'lyricsuri' => { 415 => 'lrcu' }, + 'lyrics' => { 408 => "\xa9lyr", 416 => "\xa9lyr", 552 => 'lyrics' }, + 'lyricsuri' => { 416 => 'lrcu' }, 'm16cversion' => { 349 => 0x333 }, - 'macatom' => { 522 => 'macAtom' }, - 'macatomapplicationcode' => { 522 => [\'macAtom','macAtomApplicationCode'] }, - 'macatominvocationappleevent' => { 522 => [\'macAtom','macAtomInvocationAppleEvent'] }, - 'macatomposixprojectpath' => { 522 => [\'macAtom','macAtomPosixProjectPath'] }, + 'macatom' => { 524 => 'macAtom' }, + 'macatomapplicationcode' => { 524 => [\'macAtom','macAtomApplicationCode'] }, + 'macatominvocationappleevent' => { 524 => [\'macAtom','macAtomInvocationAppleEvent'] }, + 'macatomposixprojectpath' => { 524 => [\'macAtom','macAtomPosixProjectPath'] }, 'machineobservation' => { 124 => 'MachineObservation' }, 'machineobservationday' => { 124 => [\'MachineObservation','MachineObservationDay'] }, 'machineobservationearliestdate' => { 124 => [\'MachineObservation','MachineObservationEarliestDate'] }, @@ -4379,20 +4382,20 @@ my %tagLookup = ( 'machineobservationstartdayofyear' => { 124 => [\'MachineObservation','MachineObservationStartDayOfYear'] }, 'machineobservationverbatimeventdate' => { 124 => [\'MachineObservation','MachineObservationVerbatimEventDate'] }, 'machineobservationyear' => { 124 => [\'MachineObservation','MachineObservationYear'] }, - 'macro' => { 133 => 0x1020, 135 => 0x202, 158 => 0x2b, 335 => 0x202, 421 => 0x21, 431 => 0x202, 456 => 0xb040 }, + 'macro' => { 133 => 0x1020, 135 => 0x202, 158 => 0x2b, 335 => 0x202, 423 => 0x21, 433 => 0x202, 458 => 0xb040 }, 'macroled' => { 333 => 0x120a }, 'macromagnification' => { 7 => 0x1b, 11 => 0x1b, 14 => 0x1b, 15 => 0x1b, 19 => 0x1b, 20 => 0x1b, 61 => 0x10 }, - 'macromode' => { 37 => 0x1, 188 => 0xb, 330 => 0x300, 354 => 0x1c, 422 => 0x1009 }, + 'macromode' => { 37 => 0x1, 188 => 0xb, 330 => 0x300, 354 => 0x1c, 424 => 0x1009 }, 'magentahsl' => { 109 => 0x20917 }, 'magicfilter' => { 330 => 0x52c }, 'magnifiedview' => { 92 => 0x11, 94 => 0x9 }, 'mainboardversion' => { 145 => 0x438 }, 'maindialexposurecomp' => { 320 => '0.6' }, - 'mainingredient' => { 542 => 'mainIngredient' }, - 'majorbrand' => { 409 => 'major_brand' }, - 'majorversion' => { 511 => 'MajorVersion' }, - 'make' => { 104 => 0x0, 121 => 0x1, 125 => 0x10f, 163 => 'Make', 343 => 'Make', 359 => 0x10f, 409 => 'make', 415 => ['@mak',"\xa9mak"], 539 => 'make', 546 => 'Make' }, - 'makernote' => { 527 => 'MakerNote' }, + 'mainingredient' => { 544 => 'mainIngredient' }, + 'majorbrand' => { 410 => 'major_brand' }, + 'majorversion' => { 513 => 'MajorVersion' }, + 'make' => { 104 => 0x0, 121 => 0x1, 125 => 0x10f, 163 => 'Make', 343 => 'Make', 359 => 0x10f, 410 => 'make', 416 => ['@mak',"\xa9mak"], 541 => 'make', 548 => 'Make' }, + 'makernote' => { 529 => 'MakerNote' }, 'makernoteapple' => { 123 => 'MakN', 125 => 0x927c }, 'makernotecanon' => { 87 => 'CMT3', 123 => 'MakN', 125 => 0x927c }, 'makernotecasio' => { 123 => 'MakN', 125 => 0x927c }, @@ -4447,7 +4450,7 @@ my %tagLookup = ( 'makernotenikon2' => { 123 => 'MakN', 125 => 0x927c }, 'makernotenikon3' => { 123 => 'MakN', 125 => 0x927c }, 'makernotenintendo' => { 123 => 'MakN', 125 => 0x927c }, - 'makernoteoffset' => { 431 => 0xff }, + 'makernoteoffset' => { 433 => 0xff }, 'makernoteolympus' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteolympus2' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteolympus3' => { 123 => 'MakN', 125 => 0x927c }, @@ -4460,7 +4463,7 @@ my %tagLookup = ( 'makernotepentax4' => { 123 => 'MakN', 125 => 0x927c }, 'makernotepentax5' => { 123 => 'MakN', 125 => 0x927c }, 'makernotepentax6' => { 123 => 'MakN', 125 => 0x927c }, - 'makernotepentaxunknown' => { 415 => 'PXMN' }, + 'makernotepentaxunknown' => { 416 => 'PXMN' }, 'makernotephaseone' => { 123 => 'MakN', 125 => 0x927c }, 'makernotereconyx' => { 123 => 'MakN', 125 => 0x927c }, 'makernotereconyx2' => { 123 => 'MakN', 125 => 0x927c }, @@ -4484,248 +4487,248 @@ my %tagLookup = ( 'makernotesony5' => { 123 => 'MakN', 125 => 0x927c }, 'makernotesonyericsson' => { 123 => 'MakN', 125 => 0x927c }, 'makernotesonysrf' => { 123 => 'MakN', 125 => 0x927c }, - 'makernotetype' => { 422 => 0x1 }, + 'makernotetype' => { 424 => 0x1 }, 'makernoteunknown' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteunknownbinary' => { 123 => 'MakN', 125 => 0x927c }, 'makernoteunknowntext' => { 123 => 'MakN', 125 => 0x927c }, - 'makernoteversion' => { 1 => 0x1, 193 => 0x0, 243 => 0x1, 335 => 0x0, 354 => 0x8000, 426 => 0x0, 429 => 0x1, 432 => [0x1d,0x1f], 445 => 0x2000 }, - 'makerurl' => { 415 => "\xa9mal" }, - 'managedfrom' => { 551 => 'ManagedFrom' }, - 'managedfromalternatepaths' => { 551 => [\'ManagedFrom','ManagedFromAlternatePaths'] }, - 'managedfromdocumentid' => { 551 => [\'ManagedFrom','ManagedFromDocumentID'] }, - 'managedfromfilepath' => { 551 => [\'ManagedFrom','ManagedFromFilePath'] }, - 'managedfromfrompart' => { 551 => [\'ManagedFrom','ManagedFromFromPart'] }, - 'managedfrominstanceid' => { 551 => [\'ManagedFrom','ManagedFromInstanceID'] }, - 'managedfromlastmodifydate' => { 551 => [\'ManagedFrom','ManagedFromLastModifyDate'] }, - 'managedfromlasturl' => { 551 => [\'ManagedFrom','ManagedFromLastURL'] }, - 'managedfromlinkcategory' => { 551 => [\'ManagedFrom','ManagedFromLinkCategory'] }, - 'managedfromlinkform' => { 551 => [\'ManagedFrom','ManagedFromLinkForm'] }, - 'managedfrommanager' => { 551 => [\'ManagedFrom','ManagedFromManager'] }, - 'managedfrommanagervariant' => { 551 => [\'ManagedFrom','ManagedFromManagerVariant'] }, - 'managedfrommanageto' => { 551 => [\'ManagedFrom','ManagedFromManageTo'] }, - 'managedfrommanageui' => { 551 => [\'ManagedFrom','ManagedFromManageUI'] }, - 'managedfrommaskmarkers' => { 551 => [\'ManagedFrom','ManagedFromMaskMarkers'] }, - 'managedfromoriginaldocumentid' => { 551 => [\'ManagedFrom','ManagedFromOriginalDocumentID'] }, - 'managedfrompartmapping' => { 551 => [\'ManagedFrom','ManagedFromPartMapping'] }, - 'managedfromplacedresolutionunit' => { 551 => [\'ManagedFrom','ManagedFromPlacedResolutionUnit'] }, - 'managedfromplacedxresolution' => { 551 => [\'ManagedFrom','ManagedFromPlacedXResolution'] }, - 'managedfromplacedyresolution' => { 551 => [\'ManagedFrom','ManagedFromPlacedYResolution'] }, - 'managedfromrenditionclass' => { 551 => [\'ManagedFrom','ManagedFromRenditionClass'] }, - 'managedfromrenditionparams' => { 551 => [\'ManagedFrom','ManagedFromRenditionParams'] }, - 'managedfromtopart' => { 551 => [\'ManagedFrom','ManagedFromToPart'] }, - 'managedfromversionid' => { 551 => [\'ManagedFrom','ManagedFromVersionID'] }, - 'manager' => { 551 => 'Manager' }, - 'managervariant' => { 551 => 'ManagerVariant' }, - 'manageto' => { 551 => 'ManageTo' }, - 'manageui' => { 551 => 'ManageUI' }, - 'manifest' => { 551 => 'Manifest' }, - 'manifestlinkform' => { 551 => [\'Manifest','ManifestLinkForm'] }, - 'manifestplacedresolutionunit' => { 551 => [\'Manifest','ManifestPlacedResolutionUnit'] }, - 'manifestplacedxresolution' => { 551 => [\'Manifest','ManifestPlacedXResolution'] }, - 'manifestplacedyresolution' => { 551 => [\'Manifest','ManifestPlacedYResolution'] }, - 'manifestreference' => { 551 => [\'Manifest','ManifestReference'] }, - 'manifestreferencealternatepaths' => { 551 => [\'Manifest','ManifestReferenceAlternatePaths'] }, - 'manifestreferencedocumentid' => { 551 => [\'Manifest','ManifestReferenceDocumentID'] }, - 'manifestreferencefilepath' => { 551 => [\'Manifest','ManifestReferenceFilePath'] }, - 'manifestreferencefrompart' => { 551 => [\'Manifest','ManifestReferenceFromPart'] }, - 'manifestreferenceinstanceid' => { 551 => [\'Manifest','ManifestReferenceInstanceID'] }, - 'manifestreferencelastmodifydate' => { 551 => [\'Manifest','ManifestReferenceLastModifyDate'] }, - 'manifestreferencelasturl' => { 551 => [\'Manifest','ManifestReferenceLastURL'] }, - 'manifestreferencelinkcategory' => { 551 => [\'Manifest','ManifestReferenceLinkCategory'] }, - 'manifestreferencelinkform' => { 551 => [\'Manifest','ManifestReferenceLinkForm'] }, - 'manifestreferencemanager' => { 551 => [\'Manifest','ManifestReferenceManager'] }, - 'manifestreferencemanagervariant' => { 551 => [\'Manifest','ManifestReferenceManagerVariant'] }, - 'manifestreferencemanageto' => { 551 => [\'Manifest','ManifestReferenceManageTo'] }, - 'manifestreferencemanageui' => { 551 => [\'Manifest','ManifestReferenceManageUI'] }, - 'manifestreferencemaskmarkers' => { 551 => [\'Manifest','ManifestReferenceMaskMarkers'] }, - 'manifestreferenceoriginaldocumentid' => { 551 => [\'Manifest','ManifestReferenceOriginalDocumentID'] }, - 'manifestreferencepartmapping' => { 551 => [\'Manifest','ManifestReferencePartMapping'] }, - 'manifestreferenceplacedresolutionunit' => { 551 => [\'Manifest','ManifestReferencePlacedResolutionUnit'] }, - 'manifestreferenceplacedxresolution' => { 551 => [\'Manifest','ManifestReferencePlacedXResolution'] }, - 'manifestreferenceplacedyresolution' => { 551 => [\'Manifest','ManifestReferencePlacedYResolution'] }, - 'manifestreferencerenditionclass' => { 551 => [\'Manifest','ManifestReferenceRenditionClass'] }, - 'manifestreferencerenditionparams' => { 551 => [\'Manifest','ManifestReferenceRenditionParams'] }, - 'manifestreferencetopart' => { 551 => [\'Manifest','ManifestReferenceToPart'] }, - 'manifestreferenceversionid' => { 551 => [\'Manifest','ManifestReferenceVersionID'] }, + 'makernoteversion' => { 1 => 0x1, 193 => 0x0, 243 => 0x1, 335 => 0x0, 354 => 0x8000, 428 => 0x0, 431 => 0x1, 434 => [0x1d,0x1f], 447 => 0x2000 }, + 'makerurl' => { 416 => "\xa9mal" }, + 'managedfrom' => { 553 => 'ManagedFrom' }, + 'managedfromalternatepaths' => { 553 => [\'ManagedFrom','ManagedFromAlternatePaths'] }, + 'managedfromdocumentid' => { 553 => [\'ManagedFrom','ManagedFromDocumentID'] }, + 'managedfromfilepath' => { 553 => [\'ManagedFrom','ManagedFromFilePath'] }, + 'managedfromfrompart' => { 553 => [\'ManagedFrom','ManagedFromFromPart'] }, + 'managedfrominstanceid' => { 553 => [\'ManagedFrom','ManagedFromInstanceID'] }, + 'managedfromlastmodifydate' => { 553 => [\'ManagedFrom','ManagedFromLastModifyDate'] }, + 'managedfromlasturl' => { 553 => [\'ManagedFrom','ManagedFromLastURL'] }, + 'managedfromlinkcategory' => { 553 => [\'ManagedFrom','ManagedFromLinkCategory'] }, + 'managedfromlinkform' => { 553 => [\'ManagedFrom','ManagedFromLinkForm'] }, + 'managedfrommanager' => { 553 => [\'ManagedFrom','ManagedFromManager'] }, + 'managedfrommanagervariant' => { 553 => [\'ManagedFrom','ManagedFromManagerVariant'] }, + 'managedfrommanageto' => { 553 => [\'ManagedFrom','ManagedFromManageTo'] }, + 'managedfrommanageui' => { 553 => [\'ManagedFrom','ManagedFromManageUI'] }, + 'managedfrommaskmarkers' => { 553 => [\'ManagedFrom','ManagedFromMaskMarkers'] }, + 'managedfromoriginaldocumentid' => { 553 => [\'ManagedFrom','ManagedFromOriginalDocumentID'] }, + 'managedfrompartmapping' => { 553 => [\'ManagedFrom','ManagedFromPartMapping'] }, + 'managedfromplacedresolutionunit' => { 553 => [\'ManagedFrom','ManagedFromPlacedResolutionUnit'] }, + 'managedfromplacedxresolution' => { 553 => [\'ManagedFrom','ManagedFromPlacedXResolution'] }, + 'managedfromplacedyresolution' => { 553 => [\'ManagedFrom','ManagedFromPlacedYResolution'] }, + 'managedfromrenditionclass' => { 553 => [\'ManagedFrom','ManagedFromRenditionClass'] }, + 'managedfromrenditionparams' => { 553 => [\'ManagedFrom','ManagedFromRenditionParams'] }, + 'managedfromtopart' => { 553 => [\'ManagedFrom','ManagedFromToPart'] }, + 'managedfromversionid' => { 553 => [\'ManagedFrom','ManagedFromVersionID'] }, + 'manager' => { 553 => 'Manager' }, + 'managervariant' => { 553 => 'ManagerVariant' }, + 'manageto' => { 553 => 'ManageTo' }, + 'manageui' => { 553 => 'ManageUI' }, + 'manifest' => { 553 => 'Manifest' }, + 'manifestlinkform' => { 553 => [\'Manifest','ManifestLinkForm'] }, + 'manifestplacedresolutionunit' => { 553 => [\'Manifest','ManifestPlacedResolutionUnit'] }, + 'manifestplacedxresolution' => { 553 => [\'Manifest','ManifestPlacedXResolution'] }, + 'manifestplacedyresolution' => { 553 => [\'Manifest','ManifestPlacedYResolution'] }, + 'manifestreference' => { 553 => [\'Manifest','ManifestReference'] }, + 'manifestreferencealternatepaths' => { 553 => [\'Manifest','ManifestReferenceAlternatePaths'] }, + 'manifestreferencedocumentid' => { 553 => [\'Manifest','ManifestReferenceDocumentID'] }, + 'manifestreferencefilepath' => { 553 => [\'Manifest','ManifestReferenceFilePath'] }, + 'manifestreferencefrompart' => { 553 => [\'Manifest','ManifestReferenceFromPart'] }, + 'manifestreferenceinstanceid' => { 553 => [\'Manifest','ManifestReferenceInstanceID'] }, + 'manifestreferencelastmodifydate' => { 553 => [\'Manifest','ManifestReferenceLastModifyDate'] }, + 'manifestreferencelasturl' => { 553 => [\'Manifest','ManifestReferenceLastURL'] }, + 'manifestreferencelinkcategory' => { 553 => [\'Manifest','ManifestReferenceLinkCategory'] }, + 'manifestreferencelinkform' => { 553 => [\'Manifest','ManifestReferenceLinkForm'] }, + 'manifestreferencemanager' => { 553 => [\'Manifest','ManifestReferenceManager'] }, + 'manifestreferencemanagervariant' => { 553 => [\'Manifest','ManifestReferenceManagerVariant'] }, + 'manifestreferencemanageto' => { 553 => [\'Manifest','ManifestReferenceManageTo'] }, + 'manifestreferencemanageui' => { 553 => [\'Manifest','ManifestReferenceManageUI'] }, + 'manifestreferencemaskmarkers' => { 553 => [\'Manifest','ManifestReferenceMaskMarkers'] }, + 'manifestreferenceoriginaldocumentid' => { 553 => [\'Manifest','ManifestReferenceOriginalDocumentID'] }, + 'manifestreferencepartmapping' => { 553 => [\'Manifest','ManifestReferencePartMapping'] }, + 'manifestreferenceplacedresolutionunit' => { 553 => [\'Manifest','ManifestReferencePlacedResolutionUnit'] }, + 'manifestreferenceplacedxresolution' => { 553 => [\'Manifest','ManifestReferencePlacedXResolution'] }, + 'manifestreferenceplacedyresolution' => { 553 => [\'Manifest','ManifestReferencePlacedYResolution'] }, + 'manifestreferencerenditionclass' => { 553 => [\'Manifest','ManifestReferenceRenditionClass'] }, + 'manifestreferencerenditionparams' => { 553 => [\'Manifest','ManifestReferenceRenditionParams'] }, + 'manifestreferencetopart' => { 553 => [\'Manifest','ManifestReferenceToPart'] }, + 'manifestreferenceversionid' => { 553 => [\'Manifest','ManifestReferenceVersionID'] }, 'manometerpressure' => { 330 => 0x900, 354 => 0x86 }, 'manometerreading' => { 330 => 0x901 }, 'manualafpointselectpattern' => { 90 => 0x513 }, 'manualafpointselpattern' => { 2 => 0xf }, 'manualflash' => { 333 => 0x1209 }, - 'manualflashoutput' => { 37 => 0x29, 311 => '8.2', 314 => '22.2', 315 => '23.1', 316 => '23.2', 318 => '16.2', 319 => '23.2', 320 => '8.2', 321 => '23.2', 324 => '24.2', 422 => 0x100c }, + 'manualflashoutput' => { 37 => 0x29, 311 => '8.2', 314 => '22.2', 315 => '23.1', 316 => '23.2', 318 => '16.2', 319 => '23.2', 320 => '8.2', 321 => '23.2', 324 => '24.2', 424 => 0x100c }, 'manualflashstrength' => { 330 => 0x406 }, - 'manualfocusdistance' => { 243 => 0x85, 335 => 0x100c, 431 => 0x223 }, + 'manualfocusdistance' => { 243 => 0x85, 335 => 0x100c, 433 => 0x223 }, 'manualfocuspointillumination' => { 325 => 0x17, 326 => 0x17, 327 => 0x17, 328 => 0x17 }, 'manualfocusringinafmode' => { 325 => 0x1b, 326 => 0x1a, 327 => 0x1a, 328 => 0x1a }, 'manualtv' => { 89 => 0x5, 90 => 0x705 }, 'manufacturedate' => { 198 => 0x6705, 369 => 0x1 }, - 'manufacturedate1' => { 424 => 0x4 }, - 'manufacturedate2' => { 424 => 0x5 }, - 'manufacturer' => { 504 => 'Manufacturer', 539 => 'manufacturer' }, + 'manufacturedate1' => { 426 => 0x4 }, + 'manufacturedate2' => { 426 => 0x5 }, + 'manufacturer' => { 506 => 'Manufacturer', 541 => 'manufacturer' }, 'mariahchromablursize' => { 145 => 0xf0d }, 'mariahmaphithreshold' => { 145 => 0xf0c }, 'mariahmaplothreshold' => { 145 => 0xf0b }, 'mariahsigmathreshold' => { 145 => 0xf0e }, 'mariahtexturethreshold' => { 145 => 0xf0a }, - 'marked' => { 537 => 'Marked', 554 => 'Marked' }, - 'markers' => { 550 => 'markers' }, - 'markerscomment' => { 550 => [\'markers','markersComment'] }, - 'markerscuepointparams' => { 550 => [\'markers','markersCuePointParams'] }, - 'markerscuepointparamskey' => { 550 => [\'markers','markersCuePointParamsKey'] }, - 'markerscuepointparamsvalue' => { 550 => [\'markers','markersCuePointParamsValue'] }, - 'markerscuepointtype' => { 550 => [\'markers','markersCuePointType'] }, - 'markersduration' => { 550 => [\'markers','markersDuration'] }, - 'markerslocation' => { 550 => [\'markers','markersLocation'] }, - 'markersname' => { 550 => [\'markers','markersName'] }, - 'markersprobability' => { 550 => [\'markers','markersProbability'] }, - 'markersspeaker' => { 550 => [\'markers','markersSpeaker'] }, - 'markersstarttime' => { 550 => [\'markers','markersStartTime'] }, - 'markerstarget' => { 550 => [\'markers','markersTarget'] }, - 'markerstype' => { 550 => [\'markers','markersType'] }, + 'marked' => { 539 => 'Marked', 556 => 'Marked' }, + 'markers' => { 552 => 'markers' }, + 'markerscomment' => { 552 => [\'markers','markersComment'] }, + 'markerscuepointparams' => { 552 => [\'markers','markersCuePointParams'] }, + 'markerscuepointparamskey' => { 552 => [\'markers','markersCuePointParamsKey'] }, + 'markerscuepointparamsvalue' => { 552 => [\'markers','markersCuePointParamsValue'] }, + 'markerscuepointtype' => { 552 => [\'markers','markersCuePointType'] }, + 'markersduration' => { 552 => [\'markers','markersDuration'] }, + 'markerslocation' => { 552 => [\'markers','markersLocation'] }, + 'markersname' => { 552 => [\'markers','markersName'] }, + 'markersprobability' => { 552 => [\'markers','markersProbability'] }, + 'markersspeaker' => { 552 => [\'markers','markersSpeaker'] }, + 'markersstarttime' => { 552 => [\'markers','markersStartTime'] }, + 'markerstarget' => { 552 => [\'markers','markersTarget'] }, + 'markerstype' => { 552 => [\'markers','markersType'] }, 'maskedareas' => { 125 => 0xc68e }, - 'maskgroupbasedcorractive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'] }, - 'maskgroupbasedcorramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'] }, - 'maskgroupbasedcorrblacks2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'] }, - 'maskgroupbasedcorrbrightness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'] }, - 'maskgroupbasedcorrclarity' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'] }, - 'maskgroupbasedcorrclarity2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'] }, - 'maskgroupbasedcorrcontrast' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'] }, - 'maskgroupbasedcorrcontrast2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'] }, - 'maskgroupbasedcorrcorrectionname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'] }, - 'maskgroupbasedcorrcorrectionsyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'] }, - 'maskgroupbasedcorrdefringe' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'] }, - 'maskgroupbasedcorrdehaze' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'] }, - 'maskgroupbasedcorrections' => { 521 => 'MaskGroupBasedCorrections', 523 => 'MaskGroupBasedCorrections' }, - 'maskgroupbasedcorrexposure' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'] }, - 'maskgroupbasedcorrexposure2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'] }, - 'maskgroupbasedcorrhighlights2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'] }, - 'maskgroupbasedcorrhue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'] }, - 'maskgroupbasedcorrluminancenoise' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'] }, - 'maskgroupbasedcorrmask' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'] }, - 'maskgroupbasedcorrmaskalpha' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'] }, - 'maskgroupbasedcorrmaskangle' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'] }, - 'maskgroupbasedcorrmaskbottom' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'] }, - 'maskgroupbasedcorrmaskcentervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'] }, - 'maskgroupbasedcorrmaskcenterweight' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'maskgroupbasedcorrmaskdabs' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'] }, - 'maskgroupbasedcorrmaskfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'] }, - 'maskgroupbasedcorrmaskflipped' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'] }, - 'maskgroupbasedcorrmaskflow' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'] }, - 'maskgroupbasedcorrmaskfullx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'] }, - 'maskgroupbasedcorrmaskfully' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'] }, - 'maskgroupbasedcorrmaskinputdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'] }, - 'maskgroupbasedcorrmaskleft' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'] }, - 'maskgroupbasedcorrmaskmaskactive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'] }, - 'maskgroupbasedcorrmaskmaskblendmode' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'maskgroupbasedcorrmaskmaskdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'maskgroupbasedcorrmaskmaskinverted' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'maskgroupbasedcorrmaskmaskname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'] }, - 'maskgroupbasedcorrmaskmasks' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'] }, - 'maskgroupbasedcorrmaskmasksalpha' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'maskgroupbasedcorrmaskmasksangle' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'maskgroupbasedcorrmaskmasksbottom' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'maskgroupbasedcorrmaskmaskscentervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'maskgroupbasedcorrmaskmaskscenterweight' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'maskgroupbasedcorrmaskmasksdabs' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'maskgroupbasedcorrmaskmasksfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'maskgroupbasedcorrmaskmasksflipped' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'maskgroupbasedcorrmaskmasksflow' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'maskgroupbasedcorrmaskmasksfullx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'maskgroupbasedcorrmaskmasksfully' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'maskgroupbasedcorrmaskmasksinputdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'maskgroupbasedcorrmaskmasksleft' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'maskgroupbasedcorrmaskmasksmaskactive' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'maskgroupbasedcorrmaskmasksmaskblendmode' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'maskgroupbasedcorrmaskmasksmaskdigest' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'maskgroupbasedcorrmaskmasksmaskinverted' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'maskgroupbasedcorrmaskmasksmaskname' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'maskgroupbasedcorrmaskmasksmasksubtype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'maskgroupbasedcorrmaskmasksmasksyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'maskgroupbasedcorrmaskmasksmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'maskgroupbasedcorrmaskmasksmidpoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'maskgroupbasedcorrmaskmasksorigin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'maskgroupbasedcorrmaskmasksperimetervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'maskgroupbasedcorrmaskmasksradius' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'maskgroupbasedcorrmaskmasksreferencepoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'maskgroupbasedcorrmaskmasksright' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'] }, - 'maskgroupbasedcorrmaskmasksroundness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'maskgroupbasedcorrmaskmaskssizex' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'maskgroupbasedcorrmaskmaskssizey' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'maskgroupbasedcorrmaskmaskstop' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'] }, - 'maskgroupbasedcorrmaskmasksubtype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'maskgroupbasedcorrmaskmasksvalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'maskgroupbasedcorrmaskmasksversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'maskgroupbasedcorrmaskmaskswhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'maskgroupbasedcorrmaskmaskswholeimagearea' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'maskgroupbasedcorrmaskmasksx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'] }, - 'maskgroupbasedcorrmaskmasksy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'] }, - 'maskgroupbasedcorrmaskmasksyncid' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'maskgroupbasedcorrmaskmaskszerox' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'maskgroupbasedcorrmaskmaskszeroy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'maskgroupbasedcorrmaskmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'maskgroupbasedcorrmaskmidpoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'] }, - 'maskgroupbasedcorrmaskorigin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'] }, - 'maskgroupbasedcorrmaskperimetervalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'maskgroupbasedcorrmaskradius' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'] }, - 'maskgroupbasedcorrmaskrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'maskgroupbasedcorrmaskrangeareamodels' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'maskgroupbasedcorrmaskrangeareamodelscolorsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'maskgroupbasedcorrmaskrangeareamodelscomponents' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'maskgroupbasedcorrmaskrangecoloramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'maskgroupbasedcorrmaskrangedepthfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'maskgroupbasedcorrmaskrangedepthmax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'maskgroupbasedcorrmaskrangedepthmin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'maskgroupbasedcorrmaskrangeinvert' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'maskgroupbasedcorrmaskrangelumfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'maskgroupbasedcorrmaskrangeluminancedepthsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'maskgroupbasedcorrmaskrangelummax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'maskgroupbasedcorrmaskrangelummin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'maskgroupbasedcorrmaskrangelumrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'maskgroupbasedcorrmaskrangesampletype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'maskgroupbasedcorrmaskrangetype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'maskgroupbasedcorrmaskrangeversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'maskgroupbasedcorrmaskreferencepoint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'maskgroupbasedcorrmaskright' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'] }, - 'maskgroupbasedcorrmaskroundness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'] }, - 'maskgroupbasedcorrmasksizex' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'] }, - 'maskgroupbasedcorrmasksizey' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'] }, - 'maskgroupbasedcorrmasktop' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'] }, - 'maskgroupbasedcorrmaskvalue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'] }, - 'maskgroupbasedcorrmaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'] }, - 'maskgroupbasedcorrmaskwhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'] }, - 'maskgroupbasedcorrmaskwholeimagearea' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'maskgroupbasedcorrmaskx' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'] }, - 'maskgroupbasedcorrmasky' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'] }, - 'maskgroupbasedcorrmaskzerox' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'] }, - 'maskgroupbasedcorrmaskzeroy' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'] }, - 'maskgroupbasedcorrmoire' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'] }, - 'maskgroupbasedcorrrangemask' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'] }, - 'maskgroupbasedcorrrangemaskareamodels' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'maskgroupbasedcorrrangemaskareamodelscolorsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'maskgroupbasedcorrrangemaskareamodelscomponents' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'maskgroupbasedcorrrangemaskcoloramount' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'maskgroupbasedcorrrangemaskdepthfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'maskgroupbasedcorrrangemaskdepthmax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'maskgroupbasedcorrrangemaskdepthmin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'maskgroupbasedcorrrangemaskinvert' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'maskgroupbasedcorrrangemasklumfeather' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'maskgroupbasedcorrrangemaskluminancedepthsampleinfo' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'maskgroupbasedcorrrangemasklummax' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'maskgroupbasedcorrrangemasklummin' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'maskgroupbasedcorrrangemasklumrange' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'maskgroupbasedcorrrangemasksampletype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'maskgroupbasedcorrrangemasktype' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'] }, - 'maskgroupbasedcorrrangemaskversion' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'maskgroupbasedcorrsaturation' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'] }, - 'maskgroupbasedcorrshadows2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'] }, - 'maskgroupbasedcorrsharpness' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'] }, - 'maskgroupbasedcorrtemperature' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'] }, - 'maskgroupbasedcorrtexture' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'] }, - 'maskgroupbasedcorrtint' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'] }, - 'maskgroupbasedcorrtoninghue' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'] }, - 'maskgroupbasedcorrtoningsaturation' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'] }, - 'maskgroupbasedcorrwhat' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'] }, - 'maskgroupbasedcorrwhites2012' => { 521 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'], 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'] }, + 'maskgroupbasedcorractive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionActive'] }, + 'maskgroupbasedcorramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionAmount'] }, + 'maskgroupbasedcorrblacks2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBlacks2012'] }, + 'maskgroupbasedcorrbrightness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalBrightness'] }, + 'maskgroupbasedcorrclarity' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity'] }, + 'maskgroupbasedcorrclarity2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalClarity2012'] }, + 'maskgroupbasedcorrcontrast' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast'] }, + 'maskgroupbasedcorrcontrast2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalContrast2012'] }, + 'maskgroupbasedcorrcorrectionname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionName'] }, + 'maskgroupbasedcorrcorrectionsyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionSyncID'] }, + 'maskgroupbasedcorrdefringe' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDefringe'] }, + 'maskgroupbasedcorrdehaze' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalDehaze'] }, + 'maskgroupbasedcorrections' => { 523 => 'MaskGroupBasedCorrections', 525 => 'MaskGroupBasedCorrections' }, + 'maskgroupbasedcorrexposure' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure'] }, + 'maskgroupbasedcorrexposure2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalExposure2012'] }, + 'maskgroupbasedcorrhighlights2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHighlights2012'] }, + 'maskgroupbasedcorrhue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalHue'] }, + 'maskgroupbasedcorrluminancenoise' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalLuminanceNoise'] }, + 'maskgroupbasedcorrmask' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasks'] }, + 'maskgroupbasedcorrmaskalpha' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAlpha'] }, + 'maskgroupbasedcorrmaskangle' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksAngle'] }, + 'maskgroupbasedcorrmaskbottom' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksBottom'] }, + 'maskgroupbasedcorrmaskcentervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterValue'] }, + 'maskgroupbasedcorrmaskcenterweight' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'maskgroupbasedcorrmaskdabs' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksDabs'] }, + 'maskgroupbasedcorrmaskfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFeather'] }, + 'maskgroupbasedcorrmaskflipped' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlipped'] }, + 'maskgroupbasedcorrmaskflow' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFlow'] }, + 'maskgroupbasedcorrmaskfullx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullX'] }, + 'maskgroupbasedcorrmaskfully' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksFullY'] }, + 'maskgroupbasedcorrmaskinputdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksInputDigest'] }, + 'maskgroupbasedcorrmaskleft' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksLeft'] }, + 'maskgroupbasedcorrmaskmaskactive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskActive'] }, + 'maskgroupbasedcorrmaskmaskblendmode' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'maskgroupbasedcorrmaskmaskdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'maskgroupbasedcorrmaskmaskinverted' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'maskgroupbasedcorrmaskmaskname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskName'] }, + 'maskgroupbasedcorrmaskmasks' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasks'] }, + 'maskgroupbasedcorrmaskmasksalpha' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'maskgroupbasedcorrmaskmasksangle' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'maskgroupbasedcorrmaskmasksbottom' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'maskgroupbasedcorrmaskmaskscentervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'maskgroupbasedcorrmaskmaskscenterweight' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'maskgroupbasedcorrmaskmasksdabs' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'maskgroupbasedcorrmaskmasksfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'maskgroupbasedcorrmaskmasksflipped' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'maskgroupbasedcorrmaskmasksflow' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'maskgroupbasedcorrmaskmasksfullx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'maskgroupbasedcorrmaskmasksfully' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'maskgroupbasedcorrmaskmasksinputdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'maskgroupbasedcorrmaskmasksleft' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'maskgroupbasedcorrmaskmasksmaskactive' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'maskgroupbasedcorrmaskmasksmaskblendmode' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'maskgroupbasedcorrmaskmasksmaskdigest' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'maskgroupbasedcorrmaskmasksmaskinverted' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'maskgroupbasedcorrmaskmasksmaskname' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'maskgroupbasedcorrmaskmasksmasksubtype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'maskgroupbasedcorrmaskmasksmasksyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'maskgroupbasedcorrmaskmasksmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'maskgroupbasedcorrmaskmasksmidpoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'maskgroupbasedcorrmaskmasksorigin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'maskgroupbasedcorrmaskmasksperimetervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'maskgroupbasedcorrmaskmasksradius' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'maskgroupbasedcorrmaskmasksreferencepoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'maskgroupbasedcorrmaskmasksright' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRight'] }, + 'maskgroupbasedcorrmaskmasksroundness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'maskgroupbasedcorrmaskmaskssizex' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'maskgroupbasedcorrmaskmaskssizey' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'maskgroupbasedcorrmaskmaskstop' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksTop'] }, + 'maskgroupbasedcorrmaskmasksubtype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'maskgroupbasedcorrmaskmasksvalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'maskgroupbasedcorrmaskmasksversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'maskgroupbasedcorrmaskmaskswhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'maskgroupbasedcorrmaskmaskswholeimagearea' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'maskgroupbasedcorrmaskmasksx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksX'] }, + 'maskgroupbasedcorrmaskmasksy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksY'] }, + 'maskgroupbasedcorrmaskmasksyncid' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'maskgroupbasedcorrmaskmaskszerox' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'maskgroupbasedcorrmaskmaskszeroy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'maskgroupbasedcorrmaskmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'maskgroupbasedcorrmaskmidpoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMidpoint'] }, + 'maskgroupbasedcorrmaskorigin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksOrigin'] }, + 'maskgroupbasedcorrmaskperimetervalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'maskgroupbasedcorrmaskradius' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRadius'] }, + 'maskgroupbasedcorrmaskrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'maskgroupbasedcorrmaskrangeareamodels' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'maskgroupbasedcorrmaskrangeareamodelscolorsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'maskgroupbasedcorrmaskrangeareamodelscomponents' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'maskgroupbasedcorrmaskrangecoloramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'maskgroupbasedcorrmaskrangedepthfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'maskgroupbasedcorrmaskrangedepthmax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'maskgroupbasedcorrmaskrangedepthmin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'maskgroupbasedcorrmaskrangeinvert' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'maskgroupbasedcorrmaskrangelumfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'maskgroupbasedcorrmaskrangeluminancedepthsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'maskgroupbasedcorrmaskrangelummax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'maskgroupbasedcorrmaskrangelummin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'maskgroupbasedcorrmaskrangelumrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'maskgroupbasedcorrmaskrangesampletype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'maskgroupbasedcorrmaskrangetype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'maskgroupbasedcorrmaskrangeversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'maskgroupbasedcorrmaskreferencepoint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'maskgroupbasedcorrmaskright' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRight'] }, + 'maskgroupbasedcorrmaskroundness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksRoundness'] }, + 'maskgroupbasedcorrmasksizex' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeX'] }, + 'maskgroupbasedcorrmasksizey' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksSizeY'] }, + 'maskgroupbasedcorrmasktop' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksTop'] }, + 'maskgroupbasedcorrmaskvalue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksMaskValue'] }, + 'maskgroupbasedcorrmaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksVersion'] }, + 'maskgroupbasedcorrmaskwhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWhat'] }, + 'maskgroupbasedcorrmaskwholeimagearea' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'maskgroupbasedcorrmaskx' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksX'] }, + 'maskgroupbasedcorrmasky' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksY'] }, + 'maskgroupbasedcorrmaskzerox' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroX'] }, + 'maskgroupbasedcorrmaskzeroy' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionMasksZeroY'] }, + 'maskgroupbasedcorrmoire' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalMoire'] }, + 'maskgroupbasedcorrrangemask' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMask'] }, + 'maskgroupbasedcorrrangemaskareamodels' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'maskgroupbasedcorrrangemaskareamodelscolorsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'maskgroupbasedcorrrangemaskareamodelscomponents' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'maskgroupbasedcorrrangemaskcoloramount' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'maskgroupbasedcorrrangemaskdepthfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'maskgroupbasedcorrrangemaskdepthmax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'maskgroupbasedcorrrangemaskdepthmin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'maskgroupbasedcorrrangemaskinvert' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'maskgroupbasedcorrrangemasklumfeather' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'maskgroupbasedcorrrangemaskluminancedepthsampleinfo' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'maskgroupbasedcorrrangemasklummax' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'maskgroupbasedcorrrangemasklummin' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'maskgroupbasedcorrrangemasklumrange' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'maskgroupbasedcorrrangemasksampletype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'maskgroupbasedcorrrangemasktype' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskType'] }, + 'maskgroupbasedcorrrangemaskversion' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'maskgroupbasedcorrsaturation' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSaturation'] }, + 'maskgroupbasedcorrshadows2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalShadows2012'] }, + 'maskgroupbasedcorrsharpness' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalSharpness'] }, + 'maskgroupbasedcorrtemperature' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTemperature'] }, + 'maskgroupbasedcorrtexture' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTexture'] }, + 'maskgroupbasedcorrtint' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalTint'] }, + 'maskgroupbasedcorrtoninghue' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningHue'] }, + 'maskgroupbasedcorrtoningsaturation' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalToningSaturation'] }, + 'maskgroupbasedcorrwhat' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsWhat'] }, + 'maskgroupbasedcorrwhites2012' => { 523 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'], 525 => [\'MaskGroupBasedCorrections','MaskGroupBasedCorrectionsLocalWhites2012'] }, 'masterdocumentid' => { 138 => 0xb9 }, 'mastergain' => { 268 => 0x50 }, 'materialsample' => { 124 => 'MaterialSample' }, @@ -4735,25 +4738,25 @@ my %tagLookup = ( 'matrixselectthreshold' => { 145 => 0x91a }, 'matrixselectthreshold1' => { 145 => 0x91e }, 'matrixselectthreshold2' => { 145 => 0x91f }, - 'matrixstructure' => { 414 => 0xa }, + 'matrixstructure' => { 415 => 0xa }, 'maxaperture' => { 37 => 0x1a, 145 => 0x3f9, 151 => 0x6103, 170 => 'MaxAperture', 188 => 0x17, 194 => 0x49c5, 241 => 0x36, 331 => 0x20a, 380 => '14.1' }, 'maxapertureatmaxfocal' => { 133 => 0x1407, 170 => 'MaxApertureAtMaxFocal', 235 => 0xb, 236 => 0x10, 237 => 0x11, 241 => 0x12, 331 => 0x206 }, 'maxapertureatminfocal' => { 133 => 0x1406, 235 => 0xa, 236 => 0xf, 237 => 0x10, 241 => 0x11, 331 => 0x205 }, - 'maxaperturevalue' => { 125 => 0x9205, 399 => 0x414, 527 => 'MaxApertureValue' }, - 'maxavailheight' => { 535 => 'MaxAvailHeight' }, - 'maxavailwidth' => { 535 => 'MaxAvailWidth' }, + 'maxaperturevalue' => { 125 => 0x9205, 399 => 0x414, 529 => 'MaxApertureValue' }, + 'maxavailheight' => { 537 => 'MaxAvailHeight' }, + 'maxavailwidth' => { 537 => 'MaxAvailWidth' }, 'maxcontinuousrelease' => { 309 => 0xb, 310 => 0xc, 312 => '12.1', 313 => '12.1', 318 => 0xc, 319 => 0xb, 322 => '12.1', 323 => '12.1', 325 => 0x41, 326 => 0x3d, 327 => 0x3d, 328 => 0x3d }, 'maxfaces' => { 334 => 0x1202 }, - 'maxfocallength' => { 7 => 0xe6, 8 => 0x10, 9 => 0x1ab, 10 => 0x13, 11 => 0x115, 12 => 0x13, 13 => 0x153, 14 => 0xda, 16 => 0xfa, 17 => 0xee, 18 => 0x103, 19 => 0x95, 20 => 0xea, 21 => 0x157, 22 => 0xee, 23 => 0xec, 24 => 0x12b, 25 => 0x165, 26 => 0x16a, 27 => 0x188, 28 => 0x116, 29 => 0x18d, 37 => 0x17, 133 => 0x1405, 170 => 'MaxFocalLength', 235 => 0x9, 236 => 0xe, 237 => 0xf, 241 => 0x10, 331 => 0x208, 469 => 0x127c, 470 => 0x1138, 471 => 0x330, 472 => 0x330, 473 => 0x30e }, + 'maxfocallength' => { 7 => 0xe6, 8 => 0x10, 9 => 0x1ab, 10 => 0x13, 11 => 0x115, 12 => 0x13, 13 => 0x153, 14 => 0xda, 16 => 0xfa, 17 => 0xee, 18 => 0x103, 19 => 0x95, 20 => 0xea, 21 => 0x157, 22 => 0xee, 23 => 0xec, 24 => 0x12b, 25 => 0x165, 26 => 0x16a, 27 => 0x188, 28 => 0x116, 29 => 0x18d, 37 => 0x17, 133 => 0x1405, 170 => 'MaxFocalLength', 235 => 0x9, 236 => 0xe, 237 => 0xf, 241 => 0x10, 331 => 0x208, 471 => 0x127c, 472 => 0x1138, 473 => 0x330, 474 => 0x330, 475 => 0x30e }, 'maxfocallength2' => { 66 => 0x9 }, 'maximumdensityrange' => { 140 => 0x8c }, - 'maxpagesize' => { 555 => 'MaxPageSize' }, - 'maxpagesizeh' => { 555 => [\'MaxPageSize','MaxPageSizeH'] }, - 'maxpagesizeunit' => { 555 => [\'MaxPageSize','MaxPageSizeUnit'] }, - 'maxpagesizew' => { 555 => [\'MaxPageSize','MaxPageSizeW'] }, + 'maxpagesize' => { 557 => 'MaxPageSize' }, + 'maxpagesizeh' => { 557 => [\'MaxPageSize','MaxPageSizeH'] }, + 'maxpagesizeunit' => { 557 => [\'MaxPageSize','MaxPageSizeUnit'] }, + 'maxpagesizew' => { 557 => [\'MaxPageSize','MaxPageSizeW'] }, 'maxpixelvaluethreshold' => { 145 => 0xc7d }, 'maxsamplevalue' => { 125 => 0x119 }, - 'maxstorage' => { 545 => 'maxstorage' }, + 'maxstorage' => { 547 => 'maxstorage' }, 'mb-d10batteries' => { 309 => '12.6' }, 'mb-d10batterytype' => { 318 => '13.3' }, 'mb-d11batterytype' => { 319 => '2.3' }, @@ -4766,7 +4769,7 @@ my %tagLookup = ( 'mditemfscreationdate' => { 180 => 'MDItemFSCreationDate' }, 'mditemfslabel' => { 180 => 'MDItemFSLabel' }, 'mditemusertags' => { 180 => 'MDItemUserTags' }, - 'meal' => { 542 => 'meal' }, + 'meal' => { 544 => 'meal' }, 'measuredev' => { 28 => 0x9, 82 => 0x3, 103 => 0x1814, 163 => 'MeasuredEV' }, 'measuredev2' => { 13 => 0x8, 28 => 0x8, 82 => 0x17 }, 'measuredev3' => { 13 => 0x9 }, @@ -4783,72 +4786,72 @@ my %tagLookup = ( 'measurementtype' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementType'] }, 'measurementunit' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementUnit'] }, 'measurementvalue' => { 124 => [\'MeasurementOrFact','MeasurementOrFactMeasurementValue'] }, - 'measuretype' => { 504 => 'MeasureType' }, + 'measuretype' => { 506 => 'MeasureType' }, 'mechanicalshuttercount' => { 243 => 0x37 }, 'mediaclassprimaryid' => { 186 => 'WM/MediaClassPrimaryID' }, 'mediaclasssecondaryid' => { 186 => 'WM/MediaClassSecondaryID' }, 'mediaconstraints' => { 340 => 'MediaConstraints' }, - 'mediacreatedate' => { 411 => 0x1 }, - 'mediaeventiddate' => { 509 => 'MediaEventIdDate' }, - 'mediamodifydate' => { 411 => 0x2 }, + 'mediacreatedate' => { 412 => 0x1 }, + 'mediaeventiddate' => { 511 => 'MediaEventIdDate' }, + 'mediamodifydate' => { 412 => 0x2 }, 'mediasummarycode' => { 340 => 'MediaSummaryCode' }, - 'mediatype' => { 407 => 'stik' }, + 'mediatype' => { 408 => 'stik' }, 'memoaudioquality' => { 90 => 0x812 }, - 'memorycardconfiguration' => { 448 => 0x16 }, + 'memorycardconfiguration' => { 450 => 0x16 }, 'memorycardnumber' => { 220 => 0x2 }, 'menubuttondisplayposition' => { 88 => 0xb, 91 => 0xa, 92 => 0xb, 95 => 0xb }, 'menubuttonreturn' => { 96 => 0xb }, 'menumonitorofftime' => { 309 => '26.1', 310 => '22.1', 312 => '22.1', 313 => '22.1', 317 => '21.1', 318 => '8.2', 319 => '21.1', 322 => '22.1', 323 => '22.1', 324 => '22.1', 325 => 0x39, 326 => 0x35, 327 => 0x35, 328 => 0x35 }, 'mergedimages' => { 354 => 0x76 }, - 'metadataauthority' => { 535 => 'metadataAuthority' }, - 'metadataauthorityidentifier' => { 535 => [\'metadataAuthority','metadataAuthorityIdentifier'] }, - 'metadataauthorityname' => { 535 => [\'metadataAuthority','metadataAuthorityName'] }, - 'metadatadate' => { 548 => 'MetadataDate' }, - 'metadataeditingsoftware' => { 125 => 0xa43c, 528 => 'MetadataEditingSoftware' }, - 'metadatalastedited' => { 535 => 'metadataLastEdited' }, - 'metadatalasteditor' => { 535 => 'metadataLastEditor' }, - 'metadatalasteditoridentifier' => { 535 => [\'metadataLastEditor','metadataLastEditorIdentifier'] }, - 'metadatalasteditorname' => { 535 => [\'metadataLastEditor','metadataLastEditorName'] }, - 'metadatamoddate' => { 550 => 'metadataModDate' }, - 'metaversion' => { 464 => 0x34 }, - 'meterinfo1row1' => { 457 => 0x0, 458 => 0x0 }, - 'meterinfo1row2' => { 457 => 0x6c, 458 => 0x5a }, - 'meterinfo1row3' => { 457 => 0xd8, 458 => 0xb4 }, - 'meterinfo1row4' => { 457 => 0x144, 458 => 0x10e }, - 'meterinfo1row5' => { 457 => 0x1b0, 458 => 0x168 }, - 'meterinfo1row6' => { 457 => 0x21c, 458 => 0x1c2 }, - 'meterinfo1row7' => { 457 => 0x288, 458 => 0x21c }, - 'meterinfo2row1' => { 457 => 0x2f4, 458 => 0x276 }, - 'meterinfo2row2' => { 457 => 0x378, 458 => 0x2e4 }, - 'meterinfo2row3' => { 457 => 0x3fc, 458 => 0x352 }, - 'meterinfo2row4' => { 457 => 0x480, 458 => 0x3c0 }, - 'meterinfo2row5' => { 457 => 0x504, 458 => 0x42e }, - 'meterinfo2row6' => { 457 => 0x588, 458 => 0x49c }, - 'meterinfo2row7' => { 457 => 0x60c, 458 => 0x50a }, - 'meterinfo2row8' => { 457 => 0x690, 458 => 0x578 }, - 'meterinfo2row9' => { 457 => 0x714, 458 => 0x5e6 }, + 'metadataauthority' => { 537 => 'metadataAuthority' }, + 'metadataauthorityidentifier' => { 537 => [\'metadataAuthority','metadataAuthorityIdentifier'] }, + 'metadataauthorityname' => { 537 => [\'metadataAuthority','metadataAuthorityName'] }, + 'metadatadate' => { 550 => 'MetadataDate' }, + 'metadataeditingsoftware' => { 125 => 0xa43c, 530 => 'MetadataEditingSoftware' }, + 'metadatalastedited' => { 537 => 'metadataLastEdited' }, + 'metadatalasteditor' => { 537 => 'metadataLastEditor' }, + 'metadatalasteditoridentifier' => { 537 => [\'metadataLastEditor','metadataLastEditorIdentifier'] }, + 'metadatalasteditorname' => { 537 => [\'metadataLastEditor','metadataLastEditorName'] }, + 'metadatamoddate' => { 552 => 'metadataModDate' }, + 'metaversion' => { 466 => 0x34 }, + 'meterinfo1row1' => { 459 => 0x0, 460 => 0x0 }, + 'meterinfo1row2' => { 459 => 0x6c, 460 => 0x5a }, + 'meterinfo1row3' => { 459 => 0xd8, 460 => 0xb4 }, + 'meterinfo1row4' => { 459 => 0x144, 460 => 0x10e }, + 'meterinfo1row5' => { 459 => 0x1b0, 460 => 0x168 }, + 'meterinfo1row6' => { 459 => 0x21c, 460 => 0x1c2 }, + 'meterinfo1row7' => { 459 => 0x288, 460 => 0x21c }, + 'meterinfo2row1' => { 459 => 0x2f4, 460 => 0x276 }, + 'meterinfo2row2' => { 459 => 0x378, 460 => 0x2e4 }, + 'meterinfo2row3' => { 459 => 0x3fc, 460 => 0x352 }, + 'meterinfo2row4' => { 459 => 0x480, 460 => 0x3c0 }, + 'meterinfo2row5' => { 459 => 0x504, 460 => 0x42e }, + 'meterinfo2row6' => { 459 => 0x588, 460 => 0x49c }, + 'meterinfo2row7' => { 459 => 0x60c, 460 => 0x50a }, + 'meterinfo2row8' => { 459 => 0x690, 460 => 0x578 }, + 'meterinfo2row9' => { 459 => 0x714, 460 => 0x5e6 }, 'metering' => { 311 => '6.1' }, - 'meteringmode' => { 37 => 0x11, 125 => 0x9207, 147 => 0x1c, 188 => 0x7, 189 => 0x25, 191 => 0x12, 330 => 0x202, 390 => 0x17, 432 => 0x9, 442 => 0x15, 443 => 0x13, 444 => 0x7, 461 => 0x3, 465 => 0x1174, 466 => 0x1178, 467 => 0x1154, 468 => 0x11d0, 469 => 0x11ac, 470 => 0x1064, 471 => 0x25c, 472 => 0x25c, 473 => 0x24b, 527 => 'MeteringMode' }, - 'meteringmode2' => { 370 => '2.1', 456 => 0x202c }, + 'meteringmode' => { 37 => 0x11, 125 => 0x9207, 147 => 0x1c, 188 => 0x7, 189 => 0x25, 191 => 0x12, 330 => 0x202, 390 => 0x17, 434 => 0x9, 444 => 0x15, 445 => 0x13, 446 => 0x7, 463 => 0x3, 467 => 0x1174, 468 => 0x1178, 469 => 0x1154, 470 => 0x11d0, 471 => 0x11ac, 472 => 0x1064, 473 => 0x25c, 474 => 0x25c, 475 => 0x24b, 529 => 'MeteringMode' }, + 'meteringmode2' => { 370 => '2.1', 458 => 0x202c }, 'meteringmode3' => { 370 => '16.1' }, 'meteringoffscaleindicator' => { 191 => 0x53 }, 'meteringtime' => { 309 => '22.2', 311 => '3.2', 314 => '17.1', 315 => '18.1', 318 => '7.3', 319 => '18.1', 320 => '3.2', 324 => '19.1' }, - 'micro1version' => { 417 => 0x1f }, - 'micro2version' => { 417 => 0x2d }, + 'micro1version' => { 419 => 0x1f }, + 'micro2version' => { 419 => 0x2d }, 'microphoneattenuator' => { 249 => 0x34e, 250 => 0x34e, 251 => 0x2d2, 252 => 0x2fa, 253 => 0x2fa }, 'microphonefrequencyresponse' => { 249 => 0x350, 250 => 0x350, 251 => 0x2d4, 252 => 0x2fc, 253 => 0x2fc }, 'microphonejackpower' => { 249 => 0x376, 250 => 0x376, 251 => 0x2fa, 252 => 0x322, 253 => 0x322 }, 'microphonesensitivity' => { 249 => 0x34c, 250 => 0x34c, 251 => 0x2d0, 252 => 0x2f8, 253 => 0x2f8 }, - 'microvideo' => { 501 => 'MicroVideo' }, - 'microvideooffset' => { 501 => 'MicroVideoOffset' }, - 'microvideopresentationtimestampus' => { 501 => 'MicroVideoPresentationTimestampUs' }, - 'microvideoversion' => { 501 => 'MicroVideoVersion' }, + 'microvideo' => { 503 => 'MicroVideo' }, + 'microvideooffset' => { 503 => 'MicroVideoOffset' }, + 'microvideopresentationtimestampus' => { 503 => 'MicroVideoPresentationTimestampUs' }, + 'microvideoversion' => { 503 => 'MicroVideoVersion' }, 'midrangesharpness' => { 262 => 0x3b }, 'mieversion' => { 171 => '0Vers' }, - 'mime' => { 504 => 'Mime' }, + 'mime' => { 506 => 'Mime' }, 'minaperture' => { 37 => 0x1b, 145 => 0x3f8, 170 => 'MinAperture', 380 => '0.2' }, 'minaperturevalue' => { 399 => 0x415 }, - 'minfocallength' => { 7 => 0xe4, 8 => 0xe, 9 => 0x1a9, 10 => 0x11, 11 => 0x113, 12 => 0x11, 13 => 0x151, 14 => 0xd8, 16 => 0xf8, 17 => 0xec, 18 => 0x101, 19 => 0x93, 20 => 0xe8, 21 => 0x155, 22 => 0xec, 23 => 0xea, 24 => 0x129, 25 => 0x163, 26 => 0x168, 27 => 0x186, 28 => 0x114, 29 => 0x18b, 37 => 0x18, 133 => 0x1404, 170 => 'MinFocalLength', 235 => 0x8, 236 => 0xd, 237 => 0xe, 241 => 0xf, 331 => 0x207, 469 => 0x127a, 470 => 0x1136, 471 => 0x32e, 472 => 0x32e, 473 => 0x30c }, + 'minfocallength' => { 7 => 0xe4, 8 => 0xe, 9 => 0x1a9, 10 => 0x11, 11 => 0x113, 12 => 0x11, 13 => 0x151, 14 => 0xd8, 16 => 0xf8, 17 => 0xec, 18 => 0x101, 19 => 0x93, 20 => 0xe8, 21 => 0x155, 22 => 0xec, 23 => 0xea, 24 => 0x129, 25 => 0x163, 26 => 0x168, 27 => 0x186, 28 => 0x114, 29 => 0x18b, 37 => 0x18, 133 => 0x1404, 170 => 'MinFocalLength', 235 => 0x8, 236 => 0xd, 237 => 0xe, 241 => 0xf, 331 => 0x207, 471 => 0x127a, 472 => 0x1136, 473 => 0x32e, 474 => 0x32e, 475 => 0x30c }, 'minfocallength2' => { 66 => 0x8 }, 'minfocusdistance' => { 380 => 0x3 }, 'minimumiso' => { 354 => 0xe8 }, @@ -4859,24 +4862,24 @@ my %tagLookup = ( 'minoltaquality' => { 188 => 0x5, 189 => 0xd, 190 => 0x3, 193 => [0x102,0x103] }, 'minoltatime' => { 188 => 0x16 }, 'minormodelagedisclosure' => { 340 => 'MinorModelAgeDisclosure' }, - 'minorversion' => { 409 => 'minor_version', 511 => 'MinorVersion' }, + 'minorversion' => { 410 => 'minor_version', 513 => 'MinorVersion' }, 'minsamplevalue' => { 125 => 0x118 }, 'mirrorlockup' => { 88 => 0xc, 89 => 0xc, 90 => 0x60f, 91 => 0xb, 92 => 0xc, 93 => 0x6, 94 => 0x6, 95 => 0xc, 96 => 0x3 }, - 'mobilecountrycode' => { 520 => 'mcc' }, - 'mobilenetworkcode' => { 520 => 'mnc' }, - 'moddate' => { 343 => 'modify-date', 537 => 'ModDate' }, - 'modedialposition' => { 448 => 0x14 }, - 'model' => { 104 => 0x6, 125 => 0x110, 163 => 'Model', 343 => 'Model', 359 => 0x110, 390 => 0x23f, 409 => 'model', 415 => ['@mod','CNMN','cmnm',"\xa9mdl","\xa9mod"], 432 => 0x84, 504 => 'Model', 539 => 'model', 546 => 'Model' }, - 'modelage' => { 535 => 'ModelAge' }, + 'mobilecountrycode' => { 522 => 'mcc' }, + 'mobilenetworkcode' => { 522 => 'mnc' }, + 'moddate' => { 343 => 'modify-date', 539 => 'ModDate' }, + 'modedialposition' => { 450 => 0x14 }, + 'model' => { 104 => 0x6, 125 => 0x110, 163 => 'Model', 343 => 'Model', 359 => 0x110, 390 => 0x23f, 410 => 'model', 416 => ['@mod','CNMN','cmnm',"\xa9mdl","\xa9mod"], 434 => 0x84, 506 => 'Model', 541 => 'model', 548 => 'Model' }, + 'modelage' => { 537 => 'ModelAge' }, 'modelid' => { 329 => 0x0 }, 'modelingflash' => { 309 => '21.4', 310 => '31.1', 312 => '31.1', 313 => '31.1', 318 => '26.4', 319 => '30.2', 320 => '7.4', 321 => '30.1', 322 => '31.1', 323 => '31.1', 324 => '31.3', 325 => 0x61, 326 => 0x5d, 327 => 0x5d, 328 => 0x5d }, 'modelreleaseid' => { 340 => 'ModelReleaseID' }, 'modelreleasestatus' => { 340 => 'ModelReleaseStatus' }, - 'modelreleaseyear' => { 479 => 0x52, 480 => 0x46, 481 => 0x53 }, + 'modelreleaseyear' => { 481 => 0x52, 482 => 0x46, 483 => 0x53 }, 'modeltiepoint' => { 125 => 0x8482 }, 'modeltransform' => { 125 => 0x85d8 }, - 'modelyear' => { 539 => 'modelYear' }, - 'modificationdate' => { 540 => 'modificationDate' }, + 'modelyear' => { 541 => 'modelYear' }, + 'modificationdate' => { 542 => 'modificationDate' }, 'modifiedcolortemp' => { 71 => 0x9 }, 'modifieddigitalgain' => { 71 => 0xb }, 'modifiedparamflag' => { 62 => 0x1 }, @@ -4890,8 +4893,8 @@ my %tagLookup = ( 'modifiedwhitebalance' => { 71 => 0x8 }, 'modifiedwhitebalanceblue' => { 71 => 0x7 }, 'modifiedwhitebalancered' => { 71 => 0x6 }, - 'modifydate' => { 125 => 0x132, 164 => 'ModifyDate', 339 => 'ModDate', 341 => 'tIME', 406 => 'ModDate', 412 => 0x2, 548 => 'ModifyDate' }, - 'moirefilter' => { 125 => 0xfe58, 521 => 'MoireFilter', 523 => 'MoireFilter' }, + 'modifydate' => { 125 => 0x132, 164 => 'ModifyDate', 339 => 'ModDate', 341 => 'tIME', 406 => 'ModDate', 413 => 0x2, 550 => 'ModifyDate' }, + 'moirefilter' => { 125 => 0xfe58, 523 => 'MoireFilter', 525 => 'MoireFilter' }, 'monitorbrightness' => { 247 => 0x904, 249 => 0x69a, 250 => 0x6aa, 251 => 0x59a, 252 => 0x5ca, 253 => 0x5e2 }, 'monitordisplayoff' => { 191 => 0x4c }, 'monitormatrix' => { 145 => 0x8fc }, @@ -4917,16 +4920,16 @@ my %tagLookup = ( 'monochromevignetting' => { 330 => 0x53a }, 'monthdaycreated' => { 147 => 0x12, 156 => 0xe }, 'mood' => { 186 => 'WM/Mood' }, - 'moonphase' => { 416 => 0x12, 417 => 0x43, 418 => 0x4c }, - 'morepermissions' => { 519 => 'morePermissions' }, - 'motionphoto' => { 501 => 'MotionPhoto' }, - 'motionphotopresentationtimestampus' => { 501 => 'MotionPhotoPresentationTimestampUs' }, - 'motionphotoversion' => { 501 => 'MotionPhotoVersion' }, - 'motionphotovideo' => { 410 => 'mpvd' }, - 'motionsensitivity' => { 416 => 0x29, 418 => 0x60 }, - 'movementcount' => { 407 => "\xa9mvc" }, - 'movementname' => { 407 => "\xa9mvn" }, - 'movementnumber' => { 407 => "\xa9mvi" }, + 'moonphase' => { 418 => 0x12, 419 => 0x43, 420 => 0x4c }, + 'morepermissions' => { 521 => 'morePermissions' }, + 'motionphoto' => { 503 => 'MotionPhoto' }, + 'motionphotopresentationtimestampus' => { 503 => 'MotionPhotoPresentationTimestampUs' }, + 'motionphotoversion' => { 503 => 'MotionPhotoVersion' }, + 'motionphotovideo' => { 411 => 'mpvd' }, + 'motionsensitivity' => { 418 => 0x29, 420 => 0x60 }, + 'movementcount' => { 408 => "\xa9mvc" }, + 'movementname' => { 408 => "\xa9mvn" }, + 'movementnumber' => { 408 => "\xa9mvi" }, 'movieactived-lighting' => { 248 => 0x238, 249 => 0x334, 250 => 0x334, 251 => 0x2b8, 252 => 0x2e0, 253 => 0x2e0 }, 'movieaelockbuttonassignment' => { 322 => '40.1' }, 'movieaf-onbutton' => { 325 => 0xd3, 326 => 0xcb, 327 => 0xcb, 328 => 0xcb }, @@ -4980,9 +4983,9 @@ my %tagLookup = ( 'movievignettecontrolsameasphoto' => { 248 => 0x240 }, 'movievrmode' => { 249 => 0x344, 250 => 0x344, 251 => 0x2c8, 252 => 0x2f0, 253 => 0x2f0 }, 'moviezebrapattern' => { 326 => 0x213, 327 => 0x213, 328 => 0x22b }, - 'multiburstimageheight' => { 456 => 0x1002 }, - 'multiburstimagewidth' => { 456 => 0x1001 }, - 'multiburstmode' => { 456 => 0x1000 }, + 'multiburstimageheight' => { 458 => 0x1002 }, + 'multiburstimagewidth' => { 458 => 0x1001 }, + 'multiburstmode' => { 458 => 0x1000 }, 'multicontrollerwhilemetering' => { 90 => 0x517 }, 'multiexposure' => { 73 => 0x1, 354 => 0xb4 }, 'multiexposureautogain' => { 255 => 0x3 }, @@ -4990,8 +4993,8 @@ my %tagLookup = ( 'multiexposuremode' => { 255 => 0x1, 256 => 0x1 }, 'multiexposureoverlaymode' => { 256 => 0x3 }, 'multiexposureshots' => { 73 => 0x3, 247 => 0x1be, 249 => 0x9a, 250 => 0x9a, 251 => 0x8e, 252 => 0x9c, 253 => 0x9c, 255 => 0x2, 256 => 0x2 }, - 'multiframenoisereduction' => { 444 => 0x35, 456 => 0x200b, 461 => 0x15 }, - 'multiframenreffect' => { 456 => 0x2023 }, + 'multiframenoisereduction' => { 446 => 0x35, 458 => 0x200b, 463 => 0x15 }, + 'multiframenreffect' => { 458 => 0x2023 }, 'multifunctionlock' => { 90 => 0x70f }, 'multipleexposuremode' => { 247 => 0x1bc, 249 => 0x98, 250 => 0x98, 251 => 0x8c, 252 => 0x9a, 253 => 0x9a, 334 => 0x101c }, 'multipleexposureset' => { 370 => '10.1' }, @@ -5002,22 +5005,22 @@ my %tagLookup = ( 'multiselectorplaybackmode' => { 309 => ['13.5','9.2'], 310 => '10.2', 313 => '10.2', 318 => '27.2', 322 => '10.2', 323 => '10.2', 325 => 0xb7, 326 => 0xb3, 327 => 0xb3, 328 => 0xb3 }, 'multiselectorshootmode' => { 309 => '9.1', 310 => '10.1', 312 => '10.1', 313 => '10.1', 318 => '27.1', 322 => '10.1', 323 => '10.1', 325 => 0xb3, 326 => 0xaf, 327 => 0xaf, 328 => 0xaf }, 'multishot' => { 359 => 0x121 }, - 'mute' => { 409 => 'player.movie.audio.mute' }, + 'mute' => { 407 => 'player.movie.audio.mute', 410 => 'player.movie.audio.mute' }, 'mycolormode' => { 74 => 0x2 }, - 'name' => { 415 => 'name', 521 => 'Name', 523 => 'Name' }, - 'narrator' => { 407 => "\xa9nrt" }, - 'nationalcatalognumber' => { 540 => 'nationalCatalogNumber' }, - 'nativedigest' => { 527 => 'NativeDigest', 546 => 'NativeDigest' }, - 'nativeformat' => { 516 => 'NativeFormat' }, - 'ndfilter' => { 82 => 0x1c, 330 => 0x204, 422 => 0x1019 }, - 'near' => { 504 => 'Near' }, + 'name' => { 416 => 'name', 523 => 'Name', 525 => 'Name' }, + 'narrator' => { 408 => "\xa9nrt" }, + 'nationalcatalognumber' => { 542 => 'nationalCatalogNumber' }, + 'nativedigest' => { 529 => 'NativeDigest', 548 => 'NativeDigest' }, + 'nativeformat' => { 518 => 'NativeFormat' }, + 'ndfilter' => { 82 => 0x1c, 330 => 0x204, 424 => 0x1019 }, + 'near' => { 506 => 'Near' }, 'nefbitdepth' => { 243 => 0xe22 }, 'nefcompression' => { 243 => 0x93, 244 => 0xa }, 'neflinearizationtable' => { 243 => 0x96 }, - 'negativecachelargepreviewsize' => { 521 => 'NegativeCacheLargePreviewSize', 523 => 'NegativeCacheLargePreviewSize' }, - 'negativecachemaximumsize' => { 521 => 'NegativeCacheMaximumSize', 523 => 'NegativeCacheMaximumSize' }, - 'negativecachepath' => { 521 => 'NegativeCachePath', 523 => 'NegativeCachePath' }, - 'neutraldensityfactor' => { 518 => 'NeutralDensityFactor' }, + 'negativecachelargepreviewsize' => { 523 => 'NegativeCacheLargePreviewSize', 525 => 'NegativeCacheLargePreviewSize' }, + 'negativecachemaximumsize' => { 523 => 'NegativeCacheMaximumSize', 525 => 'NegativeCacheMaximumSize' }, + 'negativecachepath' => { 523 => 'NegativeCachePath', 525 => 'NegativeCachePath' }, + 'neutraldensityfactor' => { 520 => 'NeutralDensityFactor' }, 'neutraldensityfilter' => { 390 => 0x88 }, 'neutraloutputhighlightpoint' => { 115 => 0x2f }, 'neutraloutputshadowpoint' => { 115 => 0x30 }, @@ -5036,7 +5039,7 @@ my %tagLookup = ( 'newlensdata' => { 241 => 0x2f }, 'newrawimagedigest' => { 125 => 0xc7a7 }, 'newsphotoversion' => { 140 => 0x0 }, - 'nickname' => { 548 => 'Nickname' }, + 'nickname' => { 550 => 'Nickname' }, 'nikoncapturedata' => { 243 => 0xe01 }, 'nikoncaptureeditversions' => { 243 => 0xe13 }, 'nikoncaptureoffsets' => { 243 => 0xe0e }, @@ -5048,12 +5051,12 @@ my %tagLookup = ( 'nikonsettings' => { 243 => 0x4e }, 'noisefilter' => { 330 => 0x527 }, 'noiseprofile' => { 125 => 0xc761 }, - 'noisereduction' => { 133 => [0x100b,0x100e], 189 => 0xb0, 190 => 0x60, 191 => 0x3f, 243 => 0x95, 302 => 0x753dcbc0, 303 => 0x17, 330 => 0x50a, 335 => 0x103a, 354 => 0x2d, 390 => 0x49, 422 => 0x100f, 424 => 0x2a }, + 'noisereduction' => { 133 => [0x100b,0x100e], 189 => 0xb0, 190 => 0x60, 191 => 0x3f, 243 => 0x95, 302 => 0x753dcbc0, 303 => 0x17, 330 => 0x50a, 335 => 0x103a, 354 => 0x2d, 390 => 0x49, 424 => 0x100f, 426 => 0x2a }, 'noisereduction2' => { 334 => 0x1010 }, 'noisereductionapplied' => { 125 => 0xc6f7 }, 'noisereductionintensity' => { 303 => 0x9 }, 'noisereductionmethod' => { 303 => 0x11 }, - 'noisereductionmode' => { 493 => 0x801e }, + 'noisereductionmode' => { 495 => 0x801e }, 'noisereductionparametersatcapture' => { 145 => 0xe73 }, 'noisereductionparameterscamera' => { 145 => 0xe72 }, 'noisereductionparametershost3mp' => { 145 => 0xe71 }, @@ -5065,7 +5068,7 @@ my %tagLookup = ( 'noisereductionparams' => { 359 => 0x1b }, 'noisereductionsharpness' => { 303 => 0xd }, 'noisereductionstrength' => { 354 => 0xd6 }, - 'noisereductionvalue' => { 493 => 0x8027 }, + 'noisereductionvalue' => { 495 => 0x8027 }, 'nomemorycard' => { 309 => '22.1', 310 => '4.2', 311 => '0.3', 314 => '2.4', 315 => '3.2', 316 => '3.2', 318 => '33.7', 319 => '3.2', 320 => '0.3', 322 => '4.2', 324 => '4.5' }, 'nominalmaxaperture' => { 380 => 0xa }, 'nominalminaperture' => { 380 => '10.1' }, @@ -5112,28 +5115,28 @@ my %tagLookup = ( 'normalizedcropcorners' => { 344 => 'NormalizedCropCorners' }, 'normallinetime' => { 145 => 0x186a }, 'normalwhitelevel' => { 44 => 0x32a, 45 => 0x280, 46 => 0x294, 49 => [0x2b8,0x2cf,0x2d3], 50 => 0x569, 51 => 0x1e3, 52 => [0x1fc,0x2dc], 53 => [0x230,0x30e], 54 => 0x31c }, - 'notes' => { 495 => 'Notes', 515 => 'notes' }, - 'npages' => { 555 => 'NPages' }, + 'notes' => { 497 => 'Notes', 517 => 'notes' }, + 'npages' => { 557 => 'NPages' }, 'nullrecord' => { 103 => 0x0 }, 'numafpoints' => { 366 => 0x2 }, - 'number' => { 540 => 'number' }, - 'numberofbeats' => { 550 => 'numberOfBeats' }, + 'number' => { 542 => 'number' }, + 'numberofbeats' => { 552 => 'numberOfBeats' }, 'numberoffocuspoints' => { 312 => '1.3', 313 => '1.3', 316 => '0.2', 317 => '0.3', 319 => '0.3' }, 'numfaceelements' => { 133 => 0x4200 }, 'numfacepositions' => { 346 => 0x0 }, 'numindexentries' => { 140 => 0x54 }, 'numwbentries' => { 360 => 0x0, 361 => 0x0 }, - 'object' => { 540 => 'object' }, + 'object' => { 542 => 'object' }, 'objectattributereference' => { 138 => 0x4 }, - 'objectcycle' => { 138 => 0x4b, 515 => 'ObjectCycle' }, - 'objectdescription' => { 539 => 'objectDescription' }, + 'objectcycle' => { 138 => 0x4b, 517 => 'ObjectCycle' }, + 'objectdescription' => { 541 => 'objectDescription' }, 'objectdistance' => { 118 => 0x6, 119 => 0x2022 }, 'objectname' => { 138 => 0x5 }, 'objectpreviewdata' => { 138 => 0xca }, 'objectpreviewfileformat' => { 138 => 0xc8 }, 'objectpreviewfileversion' => { 138 => 0xc9 }, - 'objectsubtype' => { 539 => 'objectSubtype' }, - 'objecttype' => { 539 => 'objectType' }, + 'objectsubtype' => { 541 => 'objectSubtype' }, + 'objecttype' => { 541 => 'objectType' }, 'objecttypereference' => { 138 => 0x3 }, 'occurrence' => { 124 => 'Occurrence' }, 'occurrenceassociatedmedia' => { 124 => [\'Occurrence','OccurrenceAssociatedMedia'] }, @@ -5165,17 +5168,17 @@ my %tagLookup = ( 'occurrencereproductivecondition' => { 124 => [\'Occurrence','OccurrenceReproductiveCondition'] }, 'occurrencesex' => { 124 => [\'Occurrence','OccurrenceSex'] }, 'occurrencestatus' => { 124 => [\'Occurrence','OccurrenceOccurrenceStatus'] }, - 'oecfcolumns' => { 527 => [\'OECF','OECFColumns'] }, - 'oecfnames' => { 527 => [\'OECF','OECFNames'] }, - 'oecfrows' => { 527 => [\'OECF','OECFRows'] }, - 'oecfvalues' => { 527 => [\'OECF','OECFValues'] }, - 'offsaledate' => { 540 => 'offSaleDate' }, - 'offsaledatea-platform' => { 540 => [\'offSaleDate','offSaleDateA-platform'] }, - 'offsaledatedate' => { 540 => [\'offSaleDate','offSaleDateDate'] }, + 'oecfcolumns' => { 529 => [\'OECF','OECFColumns'] }, + 'oecfnames' => { 529 => [\'OECF','OECFNames'] }, + 'oecfrows' => { 529 => [\'OECF','OECFRows'] }, + 'oecfvalues' => { 529 => [\'OECF','OECFValues'] }, + 'offsaledate' => { 542 => 'offSaleDate' }, + 'offsaledatea-platform' => { 542 => [\'offSaleDate','offSaleDateA-platform'] }, + 'offsaledatedate' => { 542 => [\'offSaleDate','offSaleDateDate'] }, 'offsetdacvalue' => { 145 => 0x190a }, - 'offsethdr' => { 532 => 'OffsetHDR' }, + 'offsethdr' => { 534 => 'OffsetHDR' }, 'offsetschema' => { 125 => 0xea1d }, - 'offsetsdr' => { 532 => 'OffsetSDR' }, + 'offsetsdr' => { 534 => 'OffsetSDR' }, 'offsettime' => { 125 => 0x9010 }, 'offsettimedigitized' => { 125 => 0x9012 }, 'offsettimeoriginal' => { 125 => 0x9011 }, @@ -5192,25 +5195,25 @@ my %tagLookup = ( 'omensurfaceindex' => { 145 => 0xa64 }, 'oneshotafrelease' => { 2 => 0x9 }, 'onetouchwb' => { 335 => 0x302 }, - 'onsaledate' => { 540 => 'onSaleDate' }, - 'onsaledatea-platform' => { 540 => [\'onSaleDate','onSaleDateA-platform'] }, - 'onsaledatedate' => { 540 => [\'onSaleDate','onSaleDateDate'] }, - 'onsaleday' => { 540 => 'onSaleDay' }, - 'onsaledaya-platform' => { 540 => [\'onSaleDay','onSaleDayA-platform'] }, - 'onsaledayday' => { 540 => [\'onSaleDay','onSaleDayDay'] }, + 'onsaledate' => { 542 => 'onSaleDate' }, + 'onsaledatea-platform' => { 542 => [\'onSaleDate','onSaleDateA-platform'] }, + 'onsaledatedate' => { 542 => [\'onSaleDate','onSaleDateDate'] }, + 'onsaleday' => { 542 => 'onSaleDay' }, + 'onsaledaya-platform' => { 542 => [\'onSaleDay','onSaleDayA-platform'] }, + 'onsaledayday' => { 542 => [\'onSaleDay','onSaleDayDay'] }, 'opcodelist1' => { 125 => 0xc740 }, 'opcodelist2' => { 125 => 0xc741 }, 'opcodelist3' => { 125 => 0xc74e }, 'opticalzoom' => { 149 => 0xfa3d, 151 => [0x6006,0xf006], 152 => 0x1000, 153 => 0xf, 156 => 0x1e, 158 => 0x20, 159 => 0x1c, 170 => 'OpticalZoom' }, 'opticalzoomcode' => { 82 => 0xa }, 'opticalzoommode' => { 354 => 0x34 }, - 'opticalzoomon' => { 431 => 0x219 }, - 'optionenddate' => { 543 => 'optionEndDate' }, - 'opto-electricconvfactor' => { 527 => 'OECF' }, + 'opticalzoomon' => { 433 => 0x219 }, + 'optionenddate' => { 545 => 'optionEndDate' }, + 'opto-electricconvfactor' => { 529 => 'OECF' }, 'orangehsl' => { 109 => 0x20911 }, 'ordernumber' => { 133 => 0x8002 }, - 'organisationinimagecode' => { 535 => 'OrganisationInImageCode' }, - 'organisationinimagename' => { 535 => 'OrganisationInImageName' }, + 'organisationinimagecode' => { 537 => 'OrganisationInImageCode' }, + 'organisationinimagename' => { 537 => 'OrganisationInImageName' }, 'organism' => { 124 => 'Organism' }, 'organismassociatedoccurrences' => { 124 => [\'Organism','OrganismAssociatedOccurrences'] }, 'organismassociatedorganisms' => { 124 => [\'Organism','OrganismAssociatedOrganisms'] }, @@ -5219,26 +5222,26 @@ my %tagLookup = ( 'organismpreviousidentifications' => { 124 => [\'Organism','OrganismPreviousIdentifications'] }, 'organismremarks' => { 124 => [\'Organism','OrganismOrganismRemarks'] }, 'organismscope' => { 124 => [\'Organism','OrganismOrganismScope'] }, - 'organization' => { 540 => 'organization' }, - 'orientation' => { 125 => 0x112, 359 => 0x112, 539 => 'orientation', 546 => 'Orientation' }, - 'orientation2' => { 461 => [0x28,0x2e] }, + 'organization' => { 542 => 'organization' }, + 'orientation' => { 125 => 0x112, 359 => 0x112, 541 => 'orientation', 548 => 'Orientation' }, + 'orientation2' => { 463 => [0x28,0x2e] }, 'orientationlinkedaf' => { 2 => 0xe }, 'orientationlinkedafpoint' => { 90 => 0x516 }, 'originalalbumtitle' => { 186 => 'WM/OriginalAlbumTitle' }, - 'originalartist' => { 186 => 'WM/OriginalArtist', 407 => "\xa9ope" }, + 'originalartist' => { 186 => 'WM/OriginalArtist', 408 => "\xa9ope" }, 'originalbestqualitysize' => { 125 => 0xc792 }, - 'originalcreatedatetime' => { 509 => 'OriginalCreateDateTime' }, + 'originalcreatedatetime' => { 511 => 'OriginalCreateDateTime' }, 'originaldecisiondata' => { 120 => 'Canon-OriginalDecisionData' }, 'originaldecisiondataoffset' => { 69 => 0x83 }, 'originaldefaultcropsize' => { 125 => 0xc793 }, 'originaldefaultfinalsize' => { 125 => 0xc791 }, 'originaldirectory' => { 351 => 0x408 }, - 'originaldocumentid' => { 551 => 'OriginalDocumentID' }, - 'originalfilename' => { 103 => 0x816, 145 => 0x3e9, 157 => 0x20, 351 => 0x407, 509 => 'OriginalFilename' }, - 'originalimagehash' => { 498 => 'OriginalImageHash' }, - 'originalimagehashtype' => { 498 => 'OriginalImageHashType' }, + 'originaldocumentid' => { 553 => 'OriginalDocumentID' }, + 'originalfilename' => { 103 => 0x816, 145 => 0x3e9, 157 => 0x20, 351 => 0x407, 511 => 'OriginalFilename' }, + 'originalimagehash' => { 500 => 'OriginalImageHash' }, + 'originalimagehashtype' => { 500 => 'OriginalImageHashType' }, 'originalimageheight' => { 84 => 0xc, 129 => 0x1 }, - 'originalimagemd5' => { 498 => 'OriginalImageMD5' }, + 'originalimagemd5' => { 500 => 'OriginalImageMD5' }, 'originalimagesize' => { 169 => 'OriginalImageSize' }, 'originalimagewidth' => { 84 => 0xb, 129 => 0x0 }, 'originallyricist' => { 186 => 'WM/OriginalLyricist' }, @@ -5246,9 +5249,9 @@ my %tagLookup = ( 'originalrawfiledigest' => { 125 => 0xc71d }, 'originalrawfilename' => { 125 => 0xc68b }, 'originaltransmissionreference' => { 138 => 0x67 }, - 'originatingprogram' => { 138 => 0x41, 515 => 'OriginatingProgram' }, - 'originplatform' => { 540 => 'originPlatform' }, - 'os' => { 525 => 'os' }, + 'originatingprogram' => { 138 => 0x41, 517 => 'OriginatingProgram' }, + 'originplatform' => { 542 => 'originPlatform' }, + 'os' => { 527 => 'os' }, 'otherconditions' => { 340 => 'OtherConditions' }, 'otherconstraints' => { 340 => 'OtherConstraints' }, 'otherimage' => { 120 => 'Exif-OtherImage' }, @@ -5258,9 +5261,9 @@ my %tagLookup = ( 'otherlicensedocuments' => { 340 => 'OtherLicenseDocuments' }, 'otherlicenseinfo' => { 340 => 'OtherLicenseInfo' }, 'otherlicenserequirements' => { 340 => 'OtherLicenseRequirements' }, - 'outcue' => { 550 => 'outCue' }, - 'outcuescale' => { 550 => [\'outCue','outCueScale'] }, - 'outcuevalue' => { 550 => [\'outCue','outCueValue'] }, + 'outcue' => { 552 => 'outCue' }, + 'outcuescale' => { 552 => [\'outCue','outCueScale'] }, + 'outcuevalue' => { 552 => [\'outCue','outCueValue'] }, 'outputimageheight' => { 207 => 0x3 }, 'outputimagewidth' => { 207 => 0x2 }, 'outputlut' => { 354 => 0xa7 }, @@ -5268,165 +5271,165 @@ my %tagLookup = ( 'outputresolution' => { 207 => 0x4 }, 'overclockcols' => { 145 => 0x189c }, 'overclockrows' => { 145 => 0x18c4 }, - 'overridelookvignette' => { 521 => 'OverrideLookVignette', 523 => 'OverrideLookVignette' }, - 'owner' => { 407 => 'ownr', 554 => 'Owner' }, + 'overridelookvignette' => { 523 => 'OverrideLookVignette', 525 => 'OverrideLookVignette' }, + 'owner' => { 408 => 'ownr', 556 => 'Owner' }, 'ownerid' => { 138 => 0xbc }, - 'ownername' => { 15 => 0x10f, 69 => 0x9, 103 => 0x810, 125 => [0xa430,0xfde8], 163 => 'OwnerName', 518 => 'OwnerName', 528 => 'CameraOwnerName' }, + 'ownername' => { 15 => 0x10f, 69 => 0x9, 103 => 0x810, 125 => [0xa430,0xfde8], 163 => 'OwnerName', 520 => 'OwnerName', 530 => 'CameraOwnerName' }, 'padding' => { 125 => 0xea1c }, - 'pagecount' => { 540 => 'pageCount' }, - 'pageimage' => { 548 => [\'PageInfo','PageInfoImage'] }, - 'pageimageformat' => { 548 => [\'PageInfo','PageInfoFormat'] }, - 'pageimageheight' => { 548 => [\'PageInfo','PageInfoHeight'] }, - 'pageimagepagenumber' => { 548 => [\'PageInfo','PageInfoPageNumber'] }, - 'pageimagewidth' => { 548 => [\'PageInfo','PageInfoWidth'] }, - 'pageinfo' => { 548 => 'PageInfo' }, + 'pagecount' => { 542 => 'pageCount' }, + 'pageimage' => { 550 => [\'PageInfo','PageInfoImage'] }, + 'pageimageformat' => { 550 => [\'PageInfo','PageInfoFormat'] }, + 'pageimageheight' => { 550 => [\'PageInfo','PageInfoHeight'] }, + 'pageimagepagenumber' => { 550 => [\'PageInfo','PageInfoPageNumber'] }, + 'pageimagewidth' => { 550 => [\'PageInfo','PageInfoWidth'] }, + 'pageinfo' => { 550 => 'PageInfo' }, 'pagename' => { 125 => 0x11d }, 'pagenumber' => { 125 => 0x129 }, - 'pageprogressiondirection' => { 540 => 'pageProgressionDirection' }, - 'pagerange' => { 540 => 'pageRange' }, - 'paintbasedcorrectionmasks' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'] }, - 'paintbasedcorrections' => { 521 => 'PaintBasedCorrections', 523 => 'PaintBasedCorrections' }, - 'paintcorrectionactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'] }, - 'paintcorrectionamount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'] }, - 'paintcorrectionblacks2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'] }, - 'paintcorrectionbrightness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'] }, - 'paintcorrectionclarity' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'] }, - 'paintcorrectionclarity2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'] }, - 'paintcorrectioncontrast' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'] }, - 'paintcorrectioncontrast2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'] }, - 'paintcorrectioncorrectionname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'] }, - 'paintcorrectioncorrectionsyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'] }, - 'paintcorrectiondefringe' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'] }, - 'paintcorrectiondehaze' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'] }, - 'paintcorrectionexposure' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'] }, - 'paintcorrectionexposure2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'] }, - 'paintcorrectionhighlights2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'] }, - 'paintcorrectionhue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'] }, - 'paintcorrectionluminancenoise' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'] }, - 'paintcorrectionmaskalpha' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'] }, - 'paintcorrectionmaskangle' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'] }, - 'paintcorrectionmaskbottom' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'] }, - 'paintcorrectionmaskcentervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'] }, - 'paintcorrectionmaskcenterweight' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'] }, - 'paintcorrectionmaskdabs' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'] }, - 'paintcorrectionmaskfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'] }, - 'paintcorrectionmaskflipped' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'] }, - 'paintcorrectionmaskflow' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'] }, - 'paintcorrectionmaskfullx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'] }, - 'paintcorrectionmaskfully' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'] }, - 'paintcorrectionmaskinputdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'] }, - 'paintcorrectionmaskleft' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'] }, - 'paintcorrectionmaskmaskactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'] }, - 'paintcorrectionmaskmaskblendmode' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'] }, - 'paintcorrectionmaskmaskdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'] }, - 'paintcorrectionmaskmaskinverted' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'] }, - 'paintcorrectionmaskmaskname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'] }, - 'paintcorrectionmaskmasks' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'] }, - 'paintcorrectionmaskmasksalpha' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'] }, - 'paintcorrectionmaskmasksangle' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'] }, - 'paintcorrectionmaskmasksbottom' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'] }, - 'paintcorrectionmaskmaskscentervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'] }, - 'paintcorrectionmaskmaskscenterweight' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, - 'paintcorrectionmaskmasksdabs' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'] }, - 'paintcorrectionmaskmasksfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'] }, - 'paintcorrectionmaskmasksflipped' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'] }, - 'paintcorrectionmaskmasksflow' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'] }, - 'paintcorrectionmaskmasksfullx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'] }, - 'paintcorrectionmaskmasksfully' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'] }, - 'paintcorrectionmaskmasksinputdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'] }, - 'paintcorrectionmaskmasksleft' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'] }, - 'paintcorrectionmaskmasksmaskactive' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'] }, - 'paintcorrectionmaskmasksmaskblendmode' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, - 'paintcorrectionmaskmasksmaskdigest' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, - 'paintcorrectionmaskmasksmaskinverted' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, - 'paintcorrectionmaskmasksmaskname' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'] }, - 'paintcorrectionmaskmasksmasksubtype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, - 'paintcorrectionmaskmasksmasksyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, - 'paintcorrectionmaskmasksmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, - 'paintcorrectionmaskmasksmidpoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'] }, - 'paintcorrectionmaskmasksorigin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'] }, - 'paintcorrectionmaskmasksperimetervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, - 'paintcorrectionmaskmasksradius' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'] }, - 'paintcorrectionmaskmasksreferencepoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, - 'paintcorrectionmaskmasksright' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'] }, - 'paintcorrectionmaskmasksroundness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'] }, - 'paintcorrectionmaskmaskssizex' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'] }, - 'paintcorrectionmaskmaskssizey' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'] }, - 'paintcorrectionmaskmaskstop' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'] }, - 'paintcorrectionmaskmasksubtype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'] }, - 'paintcorrectionmaskmasksvalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'] }, - 'paintcorrectionmaskmasksversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'] }, - 'paintcorrectionmaskmaskswhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'] }, - 'paintcorrectionmaskmaskswholeimagearea' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, - 'paintcorrectionmaskmasksx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'] }, - 'paintcorrectionmaskmasksy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'] }, - 'paintcorrectionmaskmasksyncid' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'] }, - 'paintcorrectionmaskmaskszerox' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'] }, - 'paintcorrectionmaskmaskszeroy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'] }, - 'paintcorrectionmaskmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'] }, - 'paintcorrectionmaskmidpoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'] }, - 'paintcorrectionmaskorigin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'] }, - 'paintcorrectionmaskperimetervalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'] }, - 'paintcorrectionmaskradius' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'] }, - 'paintcorrectionmaskrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, - 'paintcorrectionmaskrangeareamodels' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, - 'paintcorrectionmaskrangeareamodelscolorsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'paintcorrectionmaskrangeareamodelscomponents' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'paintcorrectionmaskrangecoloramount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, - 'paintcorrectionmaskrangedepthfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, - 'paintcorrectionmaskrangedepthmax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, - 'paintcorrectionmaskrangedepthmin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, - 'paintcorrectionmaskrangeinvert' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, - 'paintcorrectionmaskrangelumfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, - 'paintcorrectionmaskrangeluminancedepthsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'paintcorrectionmaskrangelummax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, - 'paintcorrectionmaskrangelummin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, - 'paintcorrectionmaskrangelumrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, - 'paintcorrectionmaskrangesampletype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, - 'paintcorrectionmaskrangetype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, - 'paintcorrectionmaskrangeversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, - 'paintcorrectionmaskreferencepoint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'] }, - 'paintcorrectionmaskright' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'] }, - 'paintcorrectionmaskroundness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'] }, - 'paintcorrectionmasksizex' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'] }, - 'paintcorrectionmasksizey' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'] }, - 'paintcorrectionmasktop' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'] }, - 'paintcorrectionmaskvalue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'] }, - 'paintcorrectionmaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'] }, - 'paintcorrectionmaskwhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'] }, - 'paintcorrectionmaskwholeimagearea' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'] }, - 'paintcorrectionmaskx' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'] }, - 'paintcorrectionmasky' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'] }, - 'paintcorrectionmaskzerox' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'] }, - 'paintcorrectionmaskzeroy' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'] }, - 'paintcorrectionmoire' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'] }, - 'paintcorrectionrangemask' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'] }, - 'paintcorrectionrangemaskareamodels' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'] }, - 'paintcorrectionrangemaskareamodelscolorsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'paintcorrectionrangemaskareamodelscomponents' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'paintcorrectionrangemaskcoloramount' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'] }, - 'paintcorrectionrangemaskdepthfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, - 'paintcorrectionrangemaskdepthmax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'] }, - 'paintcorrectionrangemaskdepthmin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'] }, - 'paintcorrectionrangemaskinvert' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'] }, - 'paintcorrectionrangemasklumfeather' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'] }, - 'paintcorrectionrangemaskluminancedepthsampleinfo' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'paintcorrectionrangemasklummax' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'] }, - 'paintcorrectionrangemasklummin' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'] }, - 'paintcorrectionrangemasklumrange' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'] }, - 'paintcorrectionrangemasksampletype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'] }, - 'paintcorrectionrangemasktype' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'] }, - 'paintcorrectionrangemaskversion' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'] }, - 'paintcorrectionsaturation' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'] }, - 'paintcorrectionshadows2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'] }, - 'paintcorrectionsharpness' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'] }, - 'paintcorrectiontemperature' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'] }, - 'paintcorrectiontexture' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'] }, - 'paintcorrectiontint' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'] }, - 'paintcorrectiontoninghue' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'] }, - 'paintcorrectiontoningsaturation' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'] }, - 'paintcorrectionwhat' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'] }, - 'paintcorrectionwhites2012' => { 521 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'], 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'] }, + 'pageprogressiondirection' => { 542 => 'pageProgressionDirection' }, + 'pagerange' => { 542 => 'pageRange' }, + 'paintbasedcorrectionmasks' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasks'] }, + 'paintbasedcorrections' => { 523 => 'PaintBasedCorrections', 525 => 'PaintBasedCorrections' }, + 'paintcorrectionactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionActive'] }, + 'paintcorrectionamount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionAmount'] }, + 'paintcorrectionblacks2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBlacks2012'] }, + 'paintcorrectionbrightness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalBrightness'] }, + 'paintcorrectionclarity' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity'] }, + 'paintcorrectionclarity2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalClarity2012'] }, + 'paintcorrectioncontrast' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast'] }, + 'paintcorrectioncontrast2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalContrast2012'] }, + 'paintcorrectioncorrectionname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionName'] }, + 'paintcorrectioncorrectionsyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionSyncID'] }, + 'paintcorrectiondefringe' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDefringe'] }, + 'paintcorrectiondehaze' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalDehaze'] }, + 'paintcorrectionexposure' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure'] }, + 'paintcorrectionexposure2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalExposure2012'] }, + 'paintcorrectionhighlights2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHighlights2012'] }, + 'paintcorrectionhue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalHue'] }, + 'paintcorrectionluminancenoise' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalLuminanceNoise'] }, + 'paintcorrectionmaskalpha' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAlpha'] }, + 'paintcorrectionmaskangle' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksAngle'] }, + 'paintcorrectionmaskbottom' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksBottom'] }, + 'paintcorrectionmaskcentervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterValue'] }, + 'paintcorrectionmaskcenterweight' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCenterWeight'] }, + 'paintcorrectionmaskdabs' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksDabs'] }, + 'paintcorrectionmaskfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFeather'] }, + 'paintcorrectionmaskflipped' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlipped'] }, + 'paintcorrectionmaskflow' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFlow'] }, + 'paintcorrectionmaskfullx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullX'] }, + 'paintcorrectionmaskfully' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksFullY'] }, + 'paintcorrectionmaskinputdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksInputDigest'] }, + 'paintcorrectionmaskleft' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksLeft'] }, + 'paintcorrectionmaskmaskactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskActive'] }, + 'paintcorrectionmaskmaskblendmode' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskBlendMode'] }, + 'paintcorrectionmaskmaskdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskDigest'] }, + 'paintcorrectionmaskmaskinverted' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskInverted'] }, + 'paintcorrectionmaskmaskname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskName'] }, + 'paintcorrectionmaskmasks' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasks'] }, + 'paintcorrectionmaskmasksalpha' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAlpha'] }, + 'paintcorrectionmaskmasksangle' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksAngle'] }, + 'paintcorrectionmaskmasksbottom' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksBottom'] }, + 'paintcorrectionmaskmaskscentervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterValue'] }, + 'paintcorrectionmaskmaskscenterweight' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksCenterWeight'] }, + 'paintcorrectionmaskmasksdabs' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksDabs'] }, + 'paintcorrectionmaskmasksfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFeather'] }, + 'paintcorrectionmaskmasksflipped' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlipped'] }, + 'paintcorrectionmaskmasksflow' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFlow'] }, + 'paintcorrectionmaskmasksfullx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullX'] }, + 'paintcorrectionmaskmasksfully' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksFullY'] }, + 'paintcorrectionmaskmasksinputdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksInputDigest'] }, + 'paintcorrectionmaskmasksleft' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksLeft'] }, + 'paintcorrectionmaskmasksmaskactive' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskActive'] }, + 'paintcorrectionmaskmasksmaskblendmode' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskBlendMode'] }, + 'paintcorrectionmaskmasksmaskdigest' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskDigest'] }, + 'paintcorrectionmaskmasksmaskinverted' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskInverted'] }, + 'paintcorrectionmaskmasksmaskname' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskName'] }, + 'paintcorrectionmaskmasksmasksubtype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSubType'] }, + 'paintcorrectionmaskmasksmasksyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskSyncID'] }, + 'paintcorrectionmaskmasksmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskVersion'] }, + 'paintcorrectionmaskmasksmidpoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMidpoint'] }, + 'paintcorrectionmaskmasksorigin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksOrigin'] }, + 'paintcorrectionmaskmasksperimetervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksPerimeterValue'] }, + 'paintcorrectionmaskmasksradius' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRadius'] }, + 'paintcorrectionmaskmasksreferencepoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksReferencePoint'] }, + 'paintcorrectionmaskmasksright' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRight'] }, + 'paintcorrectionmaskmasksroundness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksRoundness'] }, + 'paintcorrectionmaskmaskssizex' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeX'] }, + 'paintcorrectionmaskmaskssizey' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksSizeY'] }, + 'paintcorrectionmaskmaskstop' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksTop'] }, + 'paintcorrectionmaskmasksubtype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSubType'] }, + 'paintcorrectionmaskmasksvalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksMaskValue'] }, + 'paintcorrectionmaskmasksversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksVersion'] }, + 'paintcorrectionmaskmaskswhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWhat'] }, + 'paintcorrectionmaskmaskswholeimagearea' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksWholeImageArea'] }, + 'paintcorrectionmaskmasksx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksX'] }, + 'paintcorrectionmaskmasksy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksY'] }, + 'paintcorrectionmaskmasksyncid' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskSyncID'] }, + 'paintcorrectionmaskmaskszerox' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroX'] }, + 'paintcorrectionmaskmaskszeroy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMasksZeroY'] }, + 'paintcorrectionmaskmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskVersion'] }, + 'paintcorrectionmaskmidpoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMidpoint'] }, + 'paintcorrectionmaskorigin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksOrigin'] }, + 'paintcorrectionmaskperimetervalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksPerimeterValue'] }, + 'paintcorrectionmaskradius' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRadius'] }, + 'paintcorrectionmaskrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMask'] }, + 'paintcorrectionmaskrangeareamodels' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModels'] }, + 'paintcorrectionmaskrangeareamodelscolorsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'paintcorrectionmaskrangeareamodelscomponents' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'paintcorrectionmaskrangecoloramount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskColorAmount'] }, + 'paintcorrectionmaskrangedepthfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthFeather'] }, + 'paintcorrectionmaskrangedepthmax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMax'] }, + 'paintcorrectionmaskrangedepthmin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskDepthMin'] }, + 'paintcorrectionmaskrangeinvert' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskInvert'] }, + 'paintcorrectionmaskrangelumfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumFeather'] }, + 'paintcorrectionmaskrangeluminancedepthsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'paintcorrectionmaskrangelummax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMax'] }, + 'paintcorrectionmaskrangelummin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumMin'] }, + 'paintcorrectionmaskrangelumrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskLumRange'] }, + 'paintcorrectionmaskrangesampletype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskSampleType'] }, + 'paintcorrectionmaskrangetype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskType'] }, + 'paintcorrectionmaskrangeversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksCorrectionRangeMaskVersion'] }, + 'paintcorrectionmaskreferencepoint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksReferencePoint'] }, + 'paintcorrectionmaskright' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRight'] }, + 'paintcorrectionmaskroundness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksRoundness'] }, + 'paintcorrectionmasksizex' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeX'] }, + 'paintcorrectionmasksizey' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksSizeY'] }, + 'paintcorrectionmasktop' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksTop'] }, + 'paintcorrectionmaskvalue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksMaskValue'] }, + 'paintcorrectionmaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksVersion'] }, + 'paintcorrectionmaskwhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWhat'] }, + 'paintcorrectionmaskwholeimagearea' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksWholeImageArea'] }, + 'paintcorrectionmaskx' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksX'] }, + 'paintcorrectionmasky' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksY'] }, + 'paintcorrectionmaskzerox' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroX'] }, + 'paintcorrectionmaskzeroy' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionMasksZeroY'] }, + 'paintcorrectionmoire' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalMoire'] }, + 'paintcorrectionrangemask' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMask'] }, + 'paintcorrectionrangemaskareamodels' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModels'] }, + 'paintcorrectionrangemaskareamodelscolorsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'paintcorrectionrangemaskareamodelscomponents' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'paintcorrectionrangemaskcoloramount' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskColorAmount'] }, + 'paintcorrectionrangemaskdepthfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthFeather'] }, + 'paintcorrectionrangemaskdepthmax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMax'] }, + 'paintcorrectionrangemaskdepthmin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskDepthMin'] }, + 'paintcorrectionrangemaskinvert' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskInvert'] }, + 'paintcorrectionrangemasklumfeather' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumFeather'] }, + 'paintcorrectionrangemaskluminancedepthsampleinfo' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'paintcorrectionrangemasklummax' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMax'] }, + 'paintcorrectionrangemasklummin' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumMin'] }, + 'paintcorrectionrangemasklumrange' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskLumRange'] }, + 'paintcorrectionrangemasksampletype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskSampleType'] }, + 'paintcorrectionrangemasktype' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskType'] }, + 'paintcorrectionrangemaskversion' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsCorrectionRangeMaskVersion'] }, + 'paintcorrectionsaturation' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSaturation'] }, + 'paintcorrectionshadows2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalShadows2012'] }, + 'paintcorrectionsharpness' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalSharpness'] }, + 'paintcorrectiontemperature' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTemperature'] }, + 'paintcorrectiontexture' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTexture'] }, + 'paintcorrectiontint' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalTint'] }, + 'paintcorrectiontoninghue' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningHue'] }, + 'paintcorrectiontoningsaturation' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalToningSaturation'] }, + 'paintcorrectionwhat' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsWhat'] }, + 'paintcorrectionwhites2012' => { 523 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'], 525 => [\'PaintBasedCorrections','PaintBasedCorrectionsLocalWhites2012'] }, 'panasonicdatetime' => { 357 => 0x0 }, 'panasonicexifversion' => { 354 => 0x26 }, 'panasonicimageheight' => { 354 => 0x4c }, @@ -5435,20 +5438,20 @@ my %tagLookup = ( 'panasonictitle' => { 125 => 0xc6d2 }, 'panasonictitle2' => { 125 => 0xc6d3 }, 'panoramaangle' => { 133 => 0x1153 }, - 'panoramacropbottom' => { 462 => 0x7 }, - 'panoramacropleft' => { 462 => 0x4 }, - 'panoramacropright' => { 462 => 0x6 }, - 'panoramacroptop' => { 462 => 0x5 }, - 'panoramadirection' => { 77 => 0x5, 133 => 0x1154, 462 => 0x3 }, - 'panoramaframeheight' => { 462 => 0x9 }, + 'panoramacropbottom' => { 464 => 0x7 }, + 'panoramacropleft' => { 464 => 0x4 }, + 'panoramacropright' => { 464 => 0x6 }, + 'panoramacroptop' => { 464 => 0x5 }, + 'panoramadirection' => { 77 => 0x5, 133 => 0x1154, 464 => 0x3 }, + 'panoramaframeheight' => { 464 => 0x9 }, 'panoramaframenumber' => { 77 => 0x2 }, - 'panoramaframewidth' => { 462 => 0x8 }, - 'panoramafullheight' => { 462 => 0x2 }, - 'panoramafullwidth' => { 462 => 0x1 }, + 'panoramaframewidth' => { 464 => 0x8 }, + 'panoramafullheight' => { 464 => 0x2 }, + 'panoramafullwidth' => { 464 => 0x1 }, 'panoramamode' => { 147 => 0x3c, 330 => 0x601 }, - 'panoramasize3d' => { 444 => 0x38 }, - 'panoramasourceheight' => { 462 => 0xb }, - 'panoramasourcewidth' => { 462 => 0xa }, + 'panoramasize3d' => { 446 => 0x38 }, + 'panoramasourceheight' => { 464 => 0xb }, + 'panoramasourcewidth' => { 464 => 0xa }, 'panoramicstitchcameramotion' => { 183 => 'PanoramicStitchCameraMotion', 184 => 0x1 }, 'panoramicstitchmaptype' => { 183 => 'PanoramicStitchMapType', 184 => 0x2 }, 'panoramicstitchphi0' => { 183 => 'PanoramicStitchPhi0', 184 => 0x5 }, @@ -5456,39 +5459,39 @@ my %tagLookup = ( 'panoramicstitchtheta0' => { 183 => 'PanoramicStitchTheta0', 184 => 0x3 }, 'panoramicstitchtheta1' => { 183 => 'PanoramicStitchTheta1', 184 => 0x4 }, 'panoramicstitchversion' => { 184 => 0x0 }, - 'pantry' => { 551 => 'Pantry' }, - 'pantryinstanceid' => { 551 => [\'Pantry','PantryInstanceID'] }, + 'pantry' => { 553 => 'Pantry' }, + 'pantryinstanceid' => { 553 => [\'Pantry','PantryInstanceID'] }, 'parallax' => { 133 => 0xb211, 329 => 0x28 }, 'parameters' => { 343 => 'parameters' }, - 'parametricdarks' => { 521 => 'ParametricDarks', 523 => 'ParametricDarks' }, - 'parametrichighlights' => { 521 => 'ParametricHighlights', 523 => 'ParametricHighlights' }, - 'parametrichighlightsplit' => { 521 => 'ParametricHighlightSplit', 523 => 'ParametricHighlightSplit' }, - 'parametriclights' => { 521 => 'ParametricLights', 523 => 'ParametricLights' }, - 'parametricmidtonesplit' => { 521 => 'ParametricMidtoneSplit', 523 => 'ParametricMidtoneSplit' }, - 'parametricshadows' => { 521 => 'ParametricShadows', 523 => 'ParametricShadows' }, - 'parametricshadowsplit' => { 521 => 'ParametricShadowSplit', 523 => 'ParametricShadowSplit' }, + 'parametricdarks' => { 523 => 'ParametricDarks', 525 => 'ParametricDarks' }, + 'parametrichighlights' => { 523 => 'ParametricHighlights', 525 => 'ParametricHighlights' }, + 'parametrichighlightsplit' => { 523 => 'ParametricHighlightSplit', 525 => 'ParametricHighlightSplit' }, + 'parametriclights' => { 523 => 'ParametricLights', 525 => 'ParametricLights' }, + 'parametricmidtonesplit' => { 523 => 'ParametricMidtoneSplit', 525 => 'ParametricMidtoneSplit' }, + 'parametricshadows' => { 523 => 'ParametricShadows', 525 => 'ParametricShadows' }, + 'parametricshadowsplit' => { 523 => 'ParametricShadowSplit', 525 => 'ParametricShadowSplit' }, 'parentalrating' => { 186 => 'WM/ParentalRating' }, - 'parentid' => { 535 => 'parentId' }, - 'parentmediaeventid' => { 509 => 'ParentMediaEventID' }, - 'parentmeid' => { 509 => 'ParentMEID' }, - 'parentproductid' => { 407 => '@ppi' }, - 'parentreference1' => { 533 => [\'TagStructure','TagStructureParentReference'] }, - 'parentreference2' => { 533 => [\'TagStructure','TagStructureSubLabelsParentReference'] }, - 'parentreference3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsParentReference'] }, - 'parentreference4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentreference5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentreference6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, - 'parentshorttitle' => { 407 => '@PST' }, - 'parenttitle' => { 407 => '@pti' }, + 'parentid' => { 537 => 'parentId' }, + 'parentmediaeventid' => { 511 => 'ParentMediaEventID' }, + 'parentmeid' => { 511 => 'ParentMEID' }, + 'parentproductid' => { 408 => '@ppi' }, + 'parentreference1' => { 535 => [\'TagStructure','TagStructureParentReference'] }, + 'parentreference2' => { 535 => [\'TagStructure','TagStructureSubLabelsParentReference'] }, + 'parentreference3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsParentReference'] }, + 'parentreference4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentreference5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentreference6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsParentReference'] }, + 'parentshorttitle' => { 408 => '@PST' }, + 'parenttitle' => { 408 => '@pti' }, 'partialactivecols1' => { 145 => 0x17e8 }, 'partialactivecols2' => { 145 => 0x17f2 }, 'partialactiverows1' => { 145 => 0x17fc }, 'partialactiverows2' => { 145 => 0x1806 }, - 'partofcompilation' => { 550 => 'partOfCompilation' }, - 'patientbirthdate' => { 496 => 'PatientDOB' }, - 'patientid' => { 496 => 'PatientID' }, - 'patientname' => { 496 => 'PatientName' }, - 'patientsex' => { 496 => 'PatientSex' }, + 'partofcompilation' => { 552 => 'partOfCompilation' }, + 'patientbirthdate' => { 498 => 'PatientDOB' }, + 'patientid' => { 498 => 'PatientID' }, + 'patientname' => { 498 => 'PatientName' }, + 'patientsex' => { 498 => 'PatientSex' }, 'patternareaheight' => { 145 => 0x963 }, 'patternareawidth' => { 145 => 0x962 }, 'patterncorrectionfactorscale' => { 145 => 0x969 }, @@ -5500,52 +5503,52 @@ my %tagLookup = ( 'patternimagerwidth' => { 145 => 0x960 }, 'patternx' => { 145 => 0x966 }, 'patterny' => { 145 => 0x967 }, - 'pdfversion' => { 537 => 'PDFVersion' }, + 'pdfversion' => { 539 => 'PDFVersion' }, 'pentaximagesize' => { 390 => 0x9 }, 'pentaxmodelid' => { 369 => 0x0, 390 => 0x5 }, 'pentaxmodeltype' => { 390 => 0x1 }, 'pentaxversion' => { 390 => 0x0 }, - 'people' => { 499 => 'People', 513 => 'People' }, + 'people' => { 501 => 'People', 515 => 'People' }, 'perchannelblacklevel' => { 44 => 0x157, 45 => 0x16b, 46 => 0x17f, 48 => 0xc4, 49 => [0x2b4,0x2cb,0x2cf], 50 => [0x108,0x14d], 51 => 0x1df, 52 => [0x1f8,0x2d8], 53 => [0x22c,0x30a], 54 => 0x149 }, - 'performer' => { 407 => 'perf', 415 => 'perf' }, - 'performerkeywords' => { 415 => "\xa9prk" }, - 'performers' => { 415 => "\xa9prf" }, - 'performerurl' => { 415 => "\xa9prl" }, + 'performer' => { 408 => 'perf', 416 => 'perf' }, + 'performerkeywords' => { 416 => "\xa9prk" }, + 'performers' => { 416 => "\xa9prf" }, + 'performerurl' => { 416 => "\xa9prl" }, 'period' => { 186 => 'WM/Period' }, - 'peripheralillumcentralradius' => { 493 => 0x8030 }, - 'peripheralillumcentralvalue' => { 493 => 0x8031 }, + 'peripheralillumcentralradius' => { 495 => 0x8030 }, + 'peripheralillumcentralvalue' => { 495 => 0x8031 }, 'peripheralillumination' => { 109 => 0x20702, 115 => 0x68 }, 'peripheralilluminationcorr' => { 67 => 0x1, 379 => 0x2 }, 'peripheralilluminationon' => { 109 => '0x20702.0', 115 => 0x64 }, - 'peripheralillumperiphvalue' => { 493 => 0x8032 }, + 'peripheralillumperiphvalue' => { 495 => 0x8032 }, 'peripherallighting' => { 84 => 0x2, 133 => 0x3804 }, 'peripherallightingsetting' => { 85 => 0x5 }, 'peripherallightingvalue' => { 84 => 0x6 }, - 'permissions' => { 543 => 'permissions' }, - 'permits' => { 519 => 'permits' }, - 'person' => { 540 => 'person' }, - 'personality' => { 509 => 'Personality' }, - 'personheard' => { 535 => 'PersonHeard' }, - 'personheardidentifier' => { 535 => [\'PersonHeard','PersonHeardIdentifier'] }, - 'personheardname' => { 535 => [\'PersonHeard','PersonHeardName'] }, - 'personinimage' => { 535 => 'PersonInImage' }, - 'personinimagecharacteristic' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristic'] }, - 'personinimagecvtermcvid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvId'] }, - 'personinimagecvtermid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermId'] }, - 'personinimagecvtermname' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermName'] }, - 'personinimagecvtermrefinedabout' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermRefinedAbout'] }, - 'personinimagedescription' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonDescription'] }, - 'personinimageid' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonId'] }, - 'personinimagename' => { 535 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonName'] }, - 'personinimagewdetails' => { 535 => 'PersonInImageWDetails' }, - 'perspectiveaspect' => { 521 => 'PerspectiveAspect', 523 => 'PerspectiveAspect' }, - 'perspectivehorizontal' => { 521 => 'PerspectiveHorizontal', 523 => 'PerspectiveHorizontal' }, - 'perspectiverotate' => { 521 => 'PerspectiveRotate', 523 => 'PerspectiveRotate' }, - 'perspectivescale' => { 521 => 'PerspectiveScale', 523 => 'PerspectiveScale' }, - 'perspectiveupright' => { 521 => 'PerspectiveUpright', 523 => 'PerspectiveUpright' }, - 'perspectivevertical' => { 521 => 'PerspectiveVertical', 523 => 'PerspectiveVertical' }, - 'perspectivex' => { 521 => 'PerspectiveX', 523 => 'PerspectiveX' }, - 'perspectivey' => { 521 => 'PerspectiveY', 523 => 'PerspectiveY' }, + 'permissions' => { 545 => 'permissions' }, + 'permits' => { 521 => 'permits' }, + 'person' => { 542 => 'person' }, + 'personality' => { 511 => 'Personality' }, + 'personheard' => { 537 => 'PersonHeard' }, + 'personheardidentifier' => { 537 => [\'PersonHeard','PersonHeardIdentifier'] }, + 'personheardname' => { 537 => [\'PersonHeard','PersonHeardName'] }, + 'personinimage' => { 537 => 'PersonInImage' }, + 'personinimagecharacteristic' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristic'] }, + 'personinimagecvtermcvid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvId'] }, + 'personinimagecvtermid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermId'] }, + 'personinimagecvtermname' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermName'] }, + 'personinimagecvtermrefinedabout' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonCharacteristicCvTermRefinedAbout'] }, + 'personinimagedescription' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonDescription'] }, + 'personinimageid' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonId'] }, + 'personinimagename' => { 537 => [\'PersonInImageWDetails','PersonInImageWDetailsPersonName'] }, + 'personinimagewdetails' => { 537 => 'PersonInImageWDetails' }, + 'perspectiveaspect' => { 523 => 'PerspectiveAspect', 525 => 'PerspectiveAspect' }, + 'perspectivehorizontal' => { 523 => 'PerspectiveHorizontal', 525 => 'PerspectiveHorizontal' }, + 'perspectiverotate' => { 523 => 'PerspectiveRotate', 525 => 'PerspectiveRotate' }, + 'perspectivescale' => { 523 => 'PerspectiveScale', 525 => 'PerspectiveScale' }, + 'perspectiveupright' => { 523 => 'PerspectiveUpright', 525 => 'PerspectiveUpright' }, + 'perspectivevertical' => { 523 => 'PerspectiveVertical', 525 => 'PerspectiveVertical' }, + 'perspectivex' => { 523 => 'PerspectiveX', 525 => 'PerspectiveX' }, + 'perspectivey' => { 523 => 'PerspectiveY', 525 => 'PerspectiveY' }, 'pf0customfuncregistration' => { 98 => 0x1 }, 'pf10retainprogramshift' => { 98 => 0xb }, 'pf13drivepriority' => { 98 => 0xe }, @@ -5608,11 +5611,11 @@ my %tagLookup = ( 'photoeffectsgreen' => { 304 => 0x6 }, 'photoeffectsred' => { 304 => 0x4 }, 'photoeffectstype' => { 304 => 0x0 }, - 'photographer' => { 125 => 0xa437, 528 => 'Photographer' }, - 'photographicsensitivity' => { 528 => 'PhotographicSensitivity' }, + 'photographer' => { 125 => 0xa437, 530 => 'Photographer' }, + 'photographicsensitivity' => { 530 => 'PhotographicSensitivity' }, 'photoidentifier' => { 1 => 0x2b }, 'photoinfoplayback' => { 309 => '17.6', 318 => '33.6' }, - 'photometricinterpretation' => { 125 => 0x106, 546 => 'PhotometricInterpretation' }, + 'photometricinterpretation' => { 125 => 0x106, 548 => 'PhotometricInterpretation' }, 'photosappfeatureflags' => { 1 => 0x1f }, 'photoshootingmenubank' => { 249 => 0x11e, 250 => 0x11e, 251 => 0x112, 252 => 0x122, 253 => 0x122, 254 => 0x24, 272 => 0x0 }, 'photoshootingmenubankimagearea' => { 246 => 0x6dd, 249 => 0x144, 250 => 0x144, 251 => 0x134, 252 => 0x148, 253 => 0x148, 272 => '7.1' }, @@ -5620,10 +5623,10 @@ my %tagLookup = ( 'photoshopquality' => { 403 => 0x0 }, 'photoshopthumbnail' => { 404 => 0x40c }, 'photostyle' => { 354 => 0x89 }, - 'picasawebgphotoid' => { 526 => 'picasawebGPhotoId' }, - 'pick' => { 550 => 'pick' }, - 'picklabel' => { 526 => 'PickLabel' }, - 'pictinfo' => { 431 => 0x208 }, + 'picasawebgphotoid' => { 528 => 'picasawebGPhotoId' }, + 'pick' => { 552 => 'pick' }, + 'picklabel' => { 528 => 'PickLabel' }, + 'pictinfo' => { 433 => 0x208 }, 'picturecontrol' => { 302 => 0xe2173c47 }, 'picturecontrolactive' => { 305 => 0x0 }, 'picturecontroladjust' => { 260 => 0x30, 261 => 0x30, 262 => 0x36 }, @@ -5632,10 +5635,10 @@ my %tagLookup = ( 'picturecontrolmode' => { 305 => 0x13 }, 'picturecontrolname' => { 260 => 0x4, 261 => 0x4, 262 => 0x8 }, 'picturecontrolquickadjust' => { 260 => 0x31, 261 => 0x31, 262 => 0x37 }, - 'pictureeffect' => { 456 => 0x200e }, - 'pictureeffect2' => { 465 => 0x1163, 466 => 0x1167, 467 => 0x1143, 468 => 0x11bf, 469 => 0x119b, 470 => 0x1053, 471 => 0x24b, 472 => 0x24b, 473 => 0x23c, 488 => 0x46 }, + 'pictureeffect' => { 458 => 0x200e }, + 'pictureeffect2' => { 467 => 0x1163, 468 => 0x1167, 469 => 0x1143, 470 => 0x11bf, 471 => 0x119b, 472 => 0x1053, 473 => 0x24b, 474 => 0x24b, 475 => 0x23c, 490 => 0x46 }, 'picturefinish' => { 189 => 0x71 }, - 'picturemode' => { 133 => 0x1031, 330 => 0x520, 390 => [0xb,0x33], 432 => 0x3d }, + 'picturemode' => { 133 => 0x1031, 330 => 0x520, 390 => [0xb,0x33], 434 => 0x3d }, 'picturemode2' => { 370 => 0x0 }, 'picturemodebwfilter' => { 330 => 0x525 }, 'picturemodecontrast' => { 330 => 0x523 }, @@ -5644,27 +5647,27 @@ my %tagLookup = ( 'picturemodesaturation' => { 330 => 0x521 }, 'picturemodesharpness' => { 330 => 0x524 }, 'picturemodetone' => { 330 => 0x526 }, - 'pictureprofile' => { 465 => [0x115e,0x115f], 466 => [0x1162,0x1163], 467 => [0x113e,0x113f], 468 => [0x11ba,0x11bb], 469 => [0x1196,0x1197], 470 => [0x104e,0x104f], 471 => [0x246,0x247], 472 => [0x246,0x247], 473 => [0x237,0x238] }, + 'pictureprofile' => { 467 => [0x115e,0x115f], 468 => [0x1162,0x1163], 469 => [0x113e,0x113f], 470 => [0x11ba,0x11bb], 471 => [0x1196,0x1197], 472 => [0x104e,0x104f], 473 => [0x246,0x247], 474 => [0x246,0x247], 475 => [0x237,0x238] }, 'picturestyle' => { 8 => [0x4b,0x51], 9 => 0xf4, 10 => 0x6c, 11 => 0x86, 12 => 0x73, 16 => 0xab, 17 => 0xa7, 18 => 0xb0, 19 => 0x6c, 20 => 0xa7, 21 => 0xf4, 22 => 0xb3, 24 => 0xf4, 25 => 0xfa, 27 => 0x169, 79 => 0xa, 109 => 0x20301, 115 => 0x2 }, 'picturestylepc' => { 69 => 0x4009 }, 'picturestyleuserdef' => { 69 => 0x4008 }, - 'picturewizard' => { 429 => 0x21 }, - 'picturewizardcolor' => { 428 => 0x1 }, - 'picturewizardcontrast' => { 428 => 0x4 }, - 'picturewizardmode' => { 428 => 0x0 }, - 'picturewizardsaturation' => { 428 => 0x2 }, - 'picturewizardsharpness' => { 428 => 0x3 }, + 'picturewizard' => { 431 => 0x21 }, + 'picturewizardcolor' => { 430 => 0x1 }, + 'picturewizardcontrast' => { 430 => 0x4 }, + 'picturewizardmode' => { 430 => 0x0 }, + 'picturewizardsaturation' => { 430 => 0x2 }, + 'picturewizardsharpness' => { 430 => 0x3 }, 'pipelineversion' => { 183 => 'PipelineVersion' }, - 'pitch' => { 121 => 0x6, 310 => '4.1', 322 => '4.1', 415 => ['ptch',"\xa9fpt"] }, - 'pitchangle' => { 66 => 0x5, 258 => 0x4, 330 => 0x904, 344 => 'PitchAngle', 354 => 0x91, 388 => 0x2, 389 => 0x5, 427 => 0x1 }, - 'pitchshift' => { 409 => 'player.movie.audio.pitchshift' }, - 'pixelaspectratio' => { 408 => 'pasp' }, + 'pitch' => { 121 => 0x6, 310 => '4.1', 322 => '4.1', 416 => ['ptch',"\xa9fpt"] }, + 'pitchangle' => { 66 => 0x5, 258 => 0x4, 330 => 0x904, 344 => 'PitchAngle', 354 => 0x91, 388 => 0x2, 389 => 0x5, 429 => 0x1 }, + 'pitchshift' => { 407 => 'player.movie.audio.pitchshift', 410 => 'player.movie.audio.pitchshift' }, + 'pixelaspectratio' => { 409 => 'pasp' }, 'pixelclockfrequency' => { 145 => 0x40b }, 'pixelcorrectionoffset' => { 145 => 0x972 }, 'pixelcorrectionscale' => { 145 => 0x971 }, 'pixelscale' => { 125 => 0x830e }, 'pixelshiftdelay' => { 247 => 0x38c, 250 => 0x802 }, - 'pixelshiftinfo' => { 456 => 0x202f }, + 'pixelshiftinfo' => { 458 => 0x202f }, 'pixelshiftinterval' => { 247 => 0x38e }, 'pixelshiftnumbershots' => { 247 => 0x38a, 250 => 0x800 }, 'pixelshiftoffset' => { 133 => 0x1106 }, @@ -5674,29 +5677,29 @@ my %tagLookup = ( 'pixelsperunitx' => { 342 => 0x0 }, 'pixelsperunity' => { 342 => 0x4 }, 'pixelunits' => { 342 => 0x8 }, - 'planarconfiguration' => { 125 => 0x11c, 546 => 'PlanarConfiguration' }, - 'plane' => { 497 => [\'Planes','PlanesPlane'] }, - 'planeboundary' => { 497 => [\'Planes','PlanesPlaneBoundary'] }, - 'planeboundaryvertexcount' => { 497 => [\'Planes','PlanesPlaneBoundaryVertexCount'] }, - 'planeextentx' => { 497 => [\'Planes','PlanesPlaneExtentX'] }, - 'planeextentz' => { 497 => [\'Planes','PlanesPlaneExtentZ'] }, - 'planepose' => { 497 => [\'Planes','PlanesPlanePose'] }, - 'planeposepositionx' => { 497 => [\'Planes','PlanesPlanePosePositionX'] }, - 'planeposepositiony' => { 497 => [\'Planes','PlanesPlanePosePositionY'] }, - 'planeposepositionz' => { 497 => [\'Planes','PlanesPlanePosePositionZ'] }, - 'planeposerotationw' => { 497 => [\'Planes','PlanesPlanePoseRotationW'] }, - 'planeposerotationx' => { 497 => [\'Planes','PlanesPlanePoseRotationX'] }, - 'planeposerotationy' => { 497 => [\'Planes','PlanesPlanePoseRotationY'] }, - 'planeposerotationz' => { 497 => [\'Planes','PlanesPlanePoseRotationZ'] }, - 'planeposetimestamp' => { 497 => [\'Planes','PlanesPlanePoseTimestamp'] }, - 'planes' => { 497 => 'Planes' }, - 'planningref' => { 535 => 'PlanningRef' }, - 'planningrefidentifier' => { 535 => [\'PlanningRef','PlanningRefIdentifier'] }, - 'planningrefname' => { 535 => [\'PlanningRef','PlanningRefName'] }, - 'planningrefrole' => { 535 => [\'PlanningRef','PlanningRefRole'] }, - 'platenames' => { 555 => 'PlateNames' }, - 'platform' => { 540 => 'platform' }, - 'playallframes' => { 415 => 'AllF' }, + 'planarconfiguration' => { 125 => 0x11c, 548 => 'PlanarConfiguration' }, + 'plane' => { 499 => [\'Planes','PlanesPlane'] }, + 'planeboundary' => { 499 => [\'Planes','PlanesPlaneBoundary'] }, + 'planeboundaryvertexcount' => { 499 => [\'Planes','PlanesPlaneBoundaryVertexCount'] }, + 'planeextentx' => { 499 => [\'Planes','PlanesPlaneExtentX'] }, + 'planeextentz' => { 499 => [\'Planes','PlanesPlaneExtentZ'] }, + 'planepose' => { 499 => [\'Planes','PlanesPlanePose'] }, + 'planeposepositionx' => { 499 => [\'Planes','PlanesPlanePosePositionX'] }, + 'planeposepositiony' => { 499 => [\'Planes','PlanesPlanePosePositionY'] }, + 'planeposepositionz' => { 499 => [\'Planes','PlanesPlanePosePositionZ'] }, + 'planeposerotationw' => { 499 => [\'Planes','PlanesPlanePoseRotationW'] }, + 'planeposerotationx' => { 499 => [\'Planes','PlanesPlanePoseRotationX'] }, + 'planeposerotationy' => { 499 => [\'Planes','PlanesPlanePoseRotationY'] }, + 'planeposerotationz' => { 499 => [\'Planes','PlanesPlanePoseRotationZ'] }, + 'planeposetimestamp' => { 499 => [\'Planes','PlanesPlanePoseTimestamp'] }, + 'planes' => { 499 => 'Planes' }, + 'planningref' => { 537 => 'PlanningRef' }, + 'planningrefidentifier' => { 537 => [\'PlanningRef','PlanningRefIdentifier'] }, + 'planningrefname' => { 537 => [\'PlanningRef','PlanningRefName'] }, + 'planningrefrole' => { 537 => [\'PlanningRef','PlanningRefRole'] }, + 'platenames' => { 557 => 'PlateNames' }, + 'platform' => { 542 => 'platform' }, + 'playallframes' => { 416 => 'AllF' }, 'playbackbutton' => { 250 => 0x804, 253 => 0x808 }, 'playbackbuttonplaybackmode' => { 250 => 0x80e, 253 => 0x814 }, 'playbackflickdown' => { 325 => 0x149, 326 => 0x159, 327 => 0x159, 328 => 0x171 }, @@ -5705,18 +5708,18 @@ my %tagLookup = ( 'playbackmonitorofftime' => { 309 => '25.2', 310 => '36.1', 312 => '36.1', 313 => '36.1', 317 => '35.1', 318 => '8.1', 319 => '35.1', 322 => '36.1', 323 => '36.1', 324 => '21.1', 325 => 0x37, 326 => 0x33, 327 => 0x33, 328 => 0x33 }, 'playbackzoom' => { 310 => '37.1' }, 'playdisplay' => { 191 => 0x4e }, - 'playerversion' => { 409 => 'player.version' }, - 'playgap' => { 407 => 'pgap' }, - 'playmode' => { 415 => 'SDLN' }, - 'playselection' => { 415 => 'SelO' }, + 'playerversion' => { 410 => 'player.version' }, + 'playgap' => { 408 => 'pgap' }, + 'playmode' => { 416 => 'SDLN' }, + 'playselection' => { 416 => 'SelO' }, 'plusversion' => { 340 => 'Version' }, 'pmversion' => { 402 => 'PMVersion' }, 'pngwarning' => { 343 => 'Warning' }, - 'podcast' => { 407 => 'pcst' }, - 'podcasturl' => { 407 => 'purl' }, + 'podcast' => { 408 => 'pcst' }, + 'podcasturl' => { 408 => 'purl' }, 'poilevel' => { 242 => 0x8 }, 'portraitimpressionbalance' => { 247 => 0x378, 249 => 0x26e, 250 => 0x26e, 263 => 0xa0 }, - 'portraitnote' => { 501 => 'PortraitNote' }, + 'portraitnote' => { 503 => 'PortraitNote' }, 'portraitoutputhighlightpoint' => { 115 => 0x1d }, 'portraitoutputshadowpoint' => { 115 => 0x1e }, 'portraitrawcolortone' => { 115 => 0x16 }, @@ -5729,41 +5732,41 @@ my %tagLookup = ( 'portraitrawshadowpoint' => { 115 => 0x1c }, 'portraitrawsharpness' => { 115 => 0x1a }, 'portraitrefiner' => { 119 => 0x302b }, - 'portraitrequest' => { 501 => 'PortraitRequest' }, + 'portraitrequest' => { 503 => 'PortraitRequest' }, 'portraitunsharpmaskfineness' => { 115 => 0x9a }, 'portraitunsharpmaskstrength' => { 115 => 0x98 }, 'portraitunsharpmaskthreshold' => { 115 => 0x9c }, - 'portraitversion' => { 501 => 'PortraitVersion' }, - 'pose' => { 497 => 'Pose' }, - 'poseheadingdegrees' => { 507 => 'PoseHeadingDegrees' }, - 'posepitchdegrees' => { 507 => 'PosePitchDegrees' }, - 'posepositionx' => { 497 => [\'Pose','PosePositionX'] }, - 'posepositiony' => { 497 => [\'Pose','PosePositionY'] }, - 'posepositionz' => { 497 => [\'Pose','PosePositionZ'] }, - 'poserolldegrees' => { 507 => 'PoseRollDegrees' }, - 'poserotationw' => { 497 => [\'Pose','PoseRotationW'] }, - 'poserotationx' => { 497 => [\'Pose','PoseRotationX'] }, - 'poserotationy' => { 497 => [\'Pose','PoseRotationY'] }, - 'poserotationz' => { 497 => [\'Pose','PoseRotationZ'] }, - 'posetimestamp' => { 497 => [\'Pose','PoseTimestamp'] }, - 'positiondescriptor' => { 539 => 'positionDescriptor' }, + 'portraitversion' => { 503 => 'PortraitVersion' }, + 'pose' => { 499 => 'Pose' }, + 'poseheadingdegrees' => { 509 => 'PoseHeadingDegrees' }, + 'posepitchdegrees' => { 509 => 'PosePitchDegrees' }, + 'posepositionx' => { 499 => [\'Pose','PosePositionX'] }, + 'posepositiony' => { 499 => [\'Pose','PosePositionY'] }, + 'posepositionz' => { 499 => [\'Pose','PosePositionZ'] }, + 'poserolldegrees' => { 509 => 'PoseRollDegrees' }, + 'poserotationw' => { 499 => [\'Pose','PoseRotationW'] }, + 'poserotationx' => { 499 => [\'Pose','PoseRotationX'] }, + 'poserotationy' => { 499 => [\'Pose','PoseRotationY'] }, + 'poserotationz' => { 499 => [\'Pose','PoseRotationZ'] }, + 'posetimestamp' => { 499 => [\'Pose','PoseTimestamp'] }, + 'positiondescriptor' => { 541 => 'positionDescriptor' }, 'postalcode' => { 168 => 'PostalCode' }, - 'postcropvignetteamount' => { 521 => 'PostCropVignetteAmount', 523 => 'PostCropVignetteAmount' }, - 'postcropvignettefeather' => { 521 => 'PostCropVignetteFeather', 523 => 'PostCropVignetteFeather' }, - 'postcropvignettehighlightcontrast' => { 521 => 'PostCropVignetteHighlightContrast', 523 => 'PostCropVignetteHighlightContrast' }, - 'postcropvignettemidpoint' => { 521 => 'PostCropVignetteMidpoint', 523 => 'PostCropVignetteMidpoint' }, - 'postcropvignetteroundness' => { 521 => 'PostCropVignetteRoundness', 523 => 'PostCropVignetteRoundness' }, - 'postcropvignettestyle' => { 521 => 'PostCropVignetteStyle', 523 => 'PostCropVignetteStyle' }, + 'postcropvignetteamount' => { 523 => 'PostCropVignetteAmount', 525 => 'PostCropVignetteAmount' }, + 'postcropvignettefeather' => { 523 => 'PostCropVignetteFeather', 525 => 'PostCropVignetteFeather' }, + 'postcropvignettehighlightcontrast' => { 523 => 'PostCropVignetteHighlightContrast', 525 => 'PostCropVignetteHighlightContrast' }, + 'postcropvignettemidpoint' => { 523 => 'PostCropVignetteMidpoint', 525 => 'PostCropVignetteMidpoint' }, + 'postcropvignetteroundness' => { 523 => 'PostCropVignetteRoundness', 525 => 'PostCropVignetteRoundness' }, + 'postcropvignettestyle' => { 523 => 'PostCropVignetteStyle', 525 => 'PostCropVignetteStyle' }, 'postfocusmerging' => { 354 => 0xbf }, 'postreleaseburstlength' => { 252 => 0x714, 253 => 0x784, 326 => 0x289 }, - 'potentialface1position' => { 452 => 0xb }, - 'potentialface2position' => { 452 => 0x15 }, - 'potentialface3position' => { 452 => 0x1f }, - 'potentialface4position' => { 452 => 0x29 }, - 'potentialface5position' => { 452 => 0x33 }, - 'potentialface6position' => { 452 => 0x3d }, - 'potentialface7position' => { 452 => 0x47 }, - 'potentialface8position' => { 452 => 0x51 }, + 'potentialface1position' => { 454 => 0xb }, + 'potentialface2position' => { 454 => 0x15 }, + 'potentialface3position' => { 454 => 0x1f }, + 'potentialface4position' => { 454 => 0x29 }, + 'potentialface5position' => { 454 => 0x33 }, + 'potentialface6position' => { 454 => 0x3d }, + 'potentialface7position' => { 454 => 0x47 }, + 'potentialface8position' => { 454 => 0x51 }, 'poweravailable' => { 368 => '0.2' }, 'powersource' => { 368 => '0.1' }, 'poweruptime' => { 243 => 0xb6 }, @@ -5774,13 +5777,13 @@ my %tagLookup = ( 'prefs' => { 138 => 0xdd, 402 => 'Prefs' }, 'prereadfastresetcount' => { 145 => 0x187e }, 'prereleaseburstlength' => { 252 => 0x712, 253 => 0x782, 326 => 0x287 }, - 'preservedfilename' => { 551 => 'PreservedFileName' }, + 'preservedfilename' => { 553 => 'PreservedFileName' }, 'preservedspecimen' => { 124 => 'PreservedSpecimen' }, 'preservedspecimenmaterialsampleid' => { 124 => [\'PreservedSpecimen','PreservedSpecimenMaterialSampleID'] }, - 'presettype' => { 521 => 'PresetType', 523 => 'PresetType' }, - 'presetwhitebalance' => { 191 => 0x24, 493 => 0x8002 }, - 'presetwhitebalanceadj' => { 493 => 0x8014 }, - 'pressure' => { 125 => 0x9402, 528 => 'Pressure' }, + 'presettype' => { 523 => 'PresetType', 525 => 'PresetType' }, + 'presetwhitebalance' => { 191 => 0x24, 495 => 0x8002 }, + 'presetwhitebalanceadj' => { 495 => 0x8014 }, + 'pressure' => { 125 => 0x9402, 530 => 'Pressure' }, 'previewapplicationname' => { 125 => 0xc716 }, 'previewapplicationversion' => { 125 => 0xc717 }, 'previewbutton' => { 309 => ['14.1','15.1'], 310 => '15.1', 312 => '15.1', 313 => '15.1', 318 => '29.1', 319 => '14.1', 322 => '15.1', 323 => '15.1' }, @@ -5790,15 +5793,15 @@ my %tagLookup = ( 'previewcropleft' => { 401 => 0xec }, 'previewcropright' => { 401 => 0xee }, 'previewcroptop' => { 401 => 0xed }, - 'previewdate' => { 413 => 0x0 }, + 'previewdate' => { 414 => 0x0 }, 'previewdatetime' => { 125 => 0xc71b }, - 'previewimage' => { 119 => 0x2000, 120 => 'Exif-PreviewImage', 126 => 'PreviewImage', 128 => 0x4, 173 => 'data', 193 => 0x81, 335 => 0x280, 352 => 0x300, 407 => 'snal', 415 => 'mcvr', 456 => 0x2001 }, + 'previewimage' => { 119 => 0x2000, 120 => 'Exif-PreviewImage', 126 => 'PreviewImage', 128 => 0x4, 173 => 'data', 193 => 0x81, 335 => 0x280, 352 => 0x300, 408 => 'snal', 416 => 'mcvr', 458 => 0x2001 }, 'previewimageborders' => { 390 => 0x3e }, 'previewimageheight' => { 78 => 0x4, 149 => 0xfa58 }, - 'previewimagelength' => { 78 => 0x2, 119 => 0x3, 125 => [0x117,0x202], 193 => 0x89, 264 => 0x202, 330 => 0x102, 335 => 0x1037, 390 => 0x3, 421 => 0x1e, 426 => 0x3, 432 => [0x1b,0x1d], 445 => 0x202 }, + 'previewimagelength' => { 78 => 0x2, 119 => 0x3, 125 => [0x117,0x202], 193 => 0x89, 264 => 0x202, 330 => 0x102, 335 => 0x1037, 390 => 0x3, 423 => 0x1e, 428 => 0x3, 434 => [0x1b,0x1d], 447 => 0x202 }, 'previewimagename' => { 173 => '1Name' }, - 'previewimagesize' => { 119 => 0x2, 154 => 0x2, 173 => 'ImageSize', 390 => 0x2, 432 => [0x1c,0x1e], 456 => 0xb02c, 493 => 0x9012 }, - 'previewimagestart' => { 78 => 0x5, 119 => 0x4, 125 => [0x111,0x201], 193 => 0x88, 264 => 0x201, 330 => 0x101, 335 => 0x1036, 390 => 0x4, 421 => 0x1c, 426 => 0x2, 432 => [0x1a,0x1c], 445 => 0x201 }, + 'previewimagesize' => { 119 => 0x2, 154 => 0x2, 173 => 'ImageSize', 390 => 0x2, 434 => [0x1c,0x1e], 458 => 0xb02c, 495 => 0x9012 }, + 'previewimagestart' => { 78 => 0x5, 119 => 0x4, 125 => [0x111,0x201], 193 => 0x88, 264 => 0x201, 330 => 0x101, 335 => 0x1036, 390 => 0x4, 423 => 0x1c, 428 => 0x2, 434 => [0x1a,0x1c], 447 => 0x201 }, 'previewimagetype' => { 173 => '0Type' }, 'previewimagevalid' => { 330 => 0x100, 335 => 0x1035 }, 'previewimagewidth' => { 78 => 0x3, 149 => 0xfa57 }, @@ -5806,36 +5809,36 @@ my %tagLookup = ( 'previewsettingsdigest' => { 125 => 0xc719 }, 'previewsettingsname' => { 125 => 0xc718 }, 'primaryafpoint' => { 200 => [0x38,0x44,0x7,0x8] }, - 'primarychromaticities' => { 125 => 0x13f, 546 => 'PrimaryChromaticities' }, - 'primaryftp' => { 509 => 'PrimaryFTP' }, + 'primarychromaticities' => { 125 => 0x13f, 548 => 'PrimaryChromaticities' }, + 'primaryftp' => { 511 => 'PrimaryFTP' }, 'primaryslot' => { 254 => 0x25, 272 => 0x2 }, 'printim' => { 125 => 0xc4a5 }, - 'prioritysetinawb' => { 456 => 0x202b }, - 'prioritysetupshutterrelease' => { 191 => 0x1d, 442 => 0x28 }, - 'privatertkinfo' => { 512 => 'privateRTKInfo' }, + 'prioritysetinawb' => { 458 => 0x202b }, + 'prioritysetupshutterrelease' => { 191 => 0x1d, 444 => 0x28 }, + 'privatertkinfo' => { 514 => 'privateRTKInfo' }, 'processbordercolsleft' => { 145 => 0xc61 }, 'processbordercolsright' => { 145 => 0xc62 }, 'processborderrowsbottom' => { 145 => 0xc64 }, 'processborderrowstop' => { 145 => 0xc63 }, 'processingsoftware' => { 125 => 0xb }, - 'processversion' => { 521 => 'ProcessVersion', 523 => 'ProcessVersion' }, - 'producer' => { 186 => 'WM/Producer', 339 => 'Producer', 407 => "\xa9prd", 409 => 'producer', 415 => "\xa9prd", 537 => 'Producer' }, - 'producerkeywords' => { 415 => "\xa9pdk" }, - 'productcode' => { 540 => 'productCode' }, - 'productid' => { 139 => 0x32, 407 => 'prID', 539 => 'productID' }, - 'productidtype' => { 539 => 'productIDType' }, - 'productinimage' => { 535 => 'ProductInImage' }, - 'productinimagedescription' => { 535 => [\'ProductInImage','ProductInImageProductDescription'] }, - 'productinimagegtin' => { 535 => [\'ProductInImage','ProductInImageProductGTIN'] }, - 'productinimagename' => { 535 => [\'ProductInImage','ProductInImageProductName'] }, - 'productinimageproductid' => { 535 => [\'ProductInImage','ProductInImageProductId'] }, + 'processversion' => { 523 => 'ProcessVersion', 525 => 'ProcessVersion' }, + 'producer' => { 186 => 'WM/Producer', 339 => 'Producer', 408 => "\xa9prd", 410 => 'producer', 416 => "\xa9prd", 539 => 'Producer' }, + 'producerkeywords' => { 416 => "\xa9pdk" }, + 'productcode' => { 542 => 'productCode' }, + 'productid' => { 139 => 0x32, 408 => 'prID', 541 => 'productID' }, + 'productidtype' => { 541 => 'productIDType' }, + 'productinimage' => { 537 => 'ProductInImage' }, + 'productinimagedescription' => { 537 => [\'ProductInImage','ProductInImageProductDescription'] }, + 'productinimagegtin' => { 537 => [\'ProductInImage','ProductInImageProductGTIN'] }, + 'productinimagename' => { 537 => [\'ProductInImage','ProductInImageProductName'] }, + 'productinimageproductid' => { 537 => [\'ProductInImage','ProductInImageProductId'] }, 'productioncode' => { 369 => 0x2 }, 'productorserviceconstraints' => { 340 => 'ProductOrServiceConstraints' }, - 'productversion' => { 407 => 'VERS' }, - 'profession' => { 540 => 'profession' }, - 'profile' => { 497 => [\'Profiles','ProfilesProfile'] }, + 'productversion' => { 408 => 'VERS' }, + 'profession' => { 542 => 'profession' }, + 'profile' => { 499 => [\'Profiles','ProfilesProfile'] }, 'profilecalibrationsig' => { 125 => 0xc6f4 }, - 'profilecameraindices' => { 497 => [\'Profiles','ProfilesProfileCameraIndices'] }, + 'profilecameraindices' => { 499 => [\'Profiles','ProfilesProfileCameraIndices'] }, 'profilecopyright' => { 125 => 0xc6fe }, 'profiledynamicrange' => { 125 => 0xcd47 }, 'profileembedpolicy' => { 125 => 0xc6fd }, @@ -5851,45 +5854,45 @@ my %tagLookup = ( 'profilelooktabledims' => { 125 => 0xc725 }, 'profilelooktableencoding' => { 125 => 0xc7a4 }, 'profilename' => { 125 => 0xc6f8, 341 => 'iCCP-name' }, - 'profiles' => { 497 => 'Profiles' }, + 'profiles' => { 499 => 'Profiles' }, 'profiletonecurve' => { 125 => 0xc6fc }, - 'profiletype' => { 497 => [\'Profiles','ProfilesProfileType'] }, + 'profiletype' => { 499 => [\'Profiles','ProfilesProfileType'] }, 'programiso' => { 354 => 0x3c }, 'programline' => { 370 => '1.1' }, 'programmode' => { 196 => 0x5 }, 'programshift' => { 243 => 0xd }, 'programversion' => { 138 => 0x46 }, - 'prohibits' => { 519 => 'prohibits' }, - 'projectiontype' => { 507 => 'ProjectionType', 508 => 'ProjectionType' }, - 'projectname' => { 550 => 'projectName' }, - 'projectref' => { 550 => 'projectRef' }, - 'projectrefpath' => { 550 => [\'projectRef','projectRefPath'] }, - 'projectreftype' => { 550 => [\'projectRef','projectRefType'] }, + 'prohibits' => { 521 => 'prohibits' }, + 'projectiontype' => { 509 => 'ProjectionType', 510 => 'ProjectionType' }, + 'projectname' => { 552 => 'projectName' }, + 'projectref' => { 552 => 'projectRef' }, + 'projectrefpath' => { 552 => [\'projectRef','projectRefPath'] }, + 'projectreftype' => { 552 => [\'projectRef','projectRefType'] }, 'promotionurl' => { 186 => 'WM/PromotionURL' }, 'propertyreleaseid' => { 340 => 'PropertyReleaseID' }, 'propertyreleasestatus' => { 340 => 'PropertyReleaseStatus' }, 'provider' => { 186 => 'WM/Provider' }, 'province-state' => { 138 => 0x5f }, - 'publicationdate' => { 540 => 'publicationDate' }, - 'publicationdatea-platform' => { 540 => [\'publicationDate','publicationDateA-platform'] }, - 'publicationdatedate' => { 540 => [\'publicationDate','publicationDateDate'] }, - 'publicationdisplaydate' => { 540 => 'publicationDisplayDate' }, - 'publicationdisplaydatea-platform' => { 540 => [\'publicationDisplayDate','publicationDisplayDateA-platform'] }, - 'publicationdisplaydatedate' => { 540 => [\'publicationDisplayDate','publicationDisplayDateDate'] }, - 'publicationevent' => { 535 => 'PublicationEvent' }, - 'publicationeventdate' => { 535 => [\'PublicationEvent','PublicationEventDate'] }, - 'publicationeventidentifier' => { 535 => [\'PublicationEvent','PublicationEventIdentifier'] }, - 'publicationeventname' => { 535 => [\'PublicationEvent','PublicationEventName'] }, - 'publicationname' => { 540 => 'publicationName' }, - 'publisher' => { 186 => 'WM/Publisher', 407 => "\xa9pub", 409 => 'publisher', 524 => 'publisher' }, - 'publishingfrequency' => { 540 => 'publishingFrequency' }, - 'pulldown' => { 550 => 'pullDown' }, - 'purchasedate' => { 407 => 'purd' }, + 'publicationdate' => { 542 => 'publicationDate' }, + 'publicationdatea-platform' => { 542 => [\'publicationDate','publicationDateA-platform'] }, + 'publicationdatedate' => { 542 => [\'publicationDate','publicationDateDate'] }, + 'publicationdisplaydate' => { 542 => 'publicationDisplayDate' }, + 'publicationdisplaydatea-platform' => { 542 => [\'publicationDisplayDate','publicationDisplayDateA-platform'] }, + 'publicationdisplaydatedate' => { 542 => [\'publicationDisplayDate','publicationDisplayDateDate'] }, + 'publicationevent' => { 537 => 'PublicationEvent' }, + 'publicationeventdate' => { 537 => [\'PublicationEvent','PublicationEventDate'] }, + 'publicationeventidentifier' => { 537 => [\'PublicationEvent','PublicationEventIdentifier'] }, + 'publicationeventname' => { 537 => [\'PublicationEvent','PublicationEventName'] }, + 'publicationname' => { 542 => 'publicationName' }, + 'publisher' => { 186 => 'WM/Publisher', 408 => "\xa9pub", 410 => 'publisher', 526 => 'publisher' }, + 'publishingfrequency' => { 542 => 'publishingFrequency' }, + 'pulldown' => { 552 => 'pullDown' }, + 'purchasedate' => { 408 => 'purd' }, 'purplehsl' => { 109 => 0x20916 }, - 'pxshiftperiphedgenr' => { 493 => 0x9013 }, - 'pxshiftperiphedgenrvalue' => { 493 => 0x9014 }, - 'quality' => { 0 => 0x1, 37 => 0x3, 118 => 0x2, 119 => 0x3002, 133 => 0x1000, 147 => 0x9, 243 => 0x4, 291 => 0x3, 335 => 0x201, 349 => 0x300, 390 => 0x8, 397 => 0x2, 432 => 0x16, 442 => 0x56, 443 => 0x56, 444 => 0xb, 456 => [0x102,0x202e] }, - 'quality2' => { 465 => 0x1170, 466 => 0x1174, 467 => 0x1150, 469 => 0x11a8, 470 => 0x1060, 471 => 0x258, 472 => 0x258, 473 => 0x247, 479 => 0x29, 480 => 0x25, 481 => 0x2a }, + 'pxshiftperiphedgenr' => { 495 => 0x9013 }, + 'pxshiftperiphedgenrvalue' => { 495 => 0x9014 }, + 'quality' => { 0 => 0x1, 37 => 0x3, 118 => 0x2, 119 => 0x3002, 133 => 0x1000, 147 => 0x9, 243 => 0x4, 291 => 0x3, 335 => 0x201, 349 => 0x300, 390 => 0x8, 397 => 0x2, 434 => 0x16, 444 => 0x56, 445 => 0x56, 446 => 0xb, 458 => [0x102,0x202e] }, + 'quality2' => { 467 => 0x1170, 468 => 0x1174, 469 => 0x1150, 471 => 0x11a8, 472 => 0x1060, 473 => 0x258, 474 => 0x258, 475 => 0x247, 481 => 0x29, 482 => 0x25, 483 => 0x2a }, 'qualitybutton' => { 327 => 0x17d, 328 => 0x195 }, 'qualitybuttonplaybackmode' => { 327 => 0x1bf, 328 => 0x1d7 }, 'qualityhint' => { 1 => 0x1a }, @@ -5898,42 +5901,42 @@ my %tagLookup = ( 'quickadjust' => { 305 => 0x2a }, 'quickcontroldialinmeter' => { 90 => 0x703 }, 'quickfix' => { 302 => 0x416391c6 }, - 'quickshot' => { 431 => 0x213 }, + 'quickshot' => { 433 => 0x213 }, 'quiettime' => { 145 => 0x188a }, 'radialdistortioncoefficient1' => { 218 => 0x14 }, 'radialdistortioncoefficient2' => { 218 => 0x1c }, 'radialdistortioncoefficient3' => { 218 => 0x24 }, - 'rads' => { 415 => 'rads' }, + 'rads' => { 416 => 'rads' }, 'rangefinder' => { 314 => '4.1', 315 => '5.1', 316 => '5.1' }, - 'rangemask' => { 521 => 'RangeMaskMapInfo', 523 => 'RangeMaskMapInfo' }, - 'rangemaskmapinfo' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'] }, - 'rangemaskmapinfolabmax' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'] }, - 'rangemaskmapinfolabmin' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'] }, - 'rangemaskmapinfolumeq' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'] }, - 'rangemaskmapinforgbmax' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'] }, - 'rangemaskmapinforgbmin' => { 521 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'], 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'] }, + 'rangemask' => { 523 => 'RangeMaskMapInfo', 525 => 'RangeMaskMapInfo' }, + 'rangemaskmapinfo' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfo'] }, + 'rangemaskmapinfolabmax' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMax'] }, + 'rangemaskmapinfolabmin' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLabMin'] }, + 'rangemaskmapinfolumeq' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoLumEq'] }, + 'rangemaskmapinforgbmax' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMax'] }, + 'rangemaskmapinforgbmin' => { 523 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'], 525 => [\'RangeMaskMapInfo','RangeMaskMapInfoRangeMaskMapInfoRGBMin'] }, 'rasterizedcaption' => { 138 => 0x7d }, - 'rating' => { 109 => 0x10100, 125 => 0x4746, 133 => 0x1431, 401 => 0xdf, 407 => 'rtng', 415 => 'rtng', 456 => 0x2002, 515 => 'rating', 525 => 'rating', 535 => 'Rating', 540 => 'rating', 548 => 'Rating' }, - 'ratingpercent' => { 125 => 0x4749, 185 => 'Rating', 407 => 'rate', 548 => 'RatingPercent' }, - 'ratingregion' => { 535 => [\'Rating','RatingRatingRegion'] }, - 'ratingregioncity' => { 535 => [\'Rating','RatingRatingRegionCity'] }, - 'ratingregioncountrycode' => { 535 => [\'Rating','RatingRatingRegionCountryCode'] }, - 'ratingregioncountryname' => { 535 => [\'Rating','RatingRatingRegionCountryName'] }, - 'ratingregiongpsaltitude' => { 535 => [\'Rating','RatingRatingRegionGPSAltitude'] }, - 'ratingregiongpsaltituderef' => { 535 => [\'Rating','RatingRatingRegionGPSAltitudeRef'] }, - 'ratingregiongpslatitude' => { 535 => [\'Rating','RatingRatingRegionGPSLatitude'] }, - 'ratingregiongpslongitude' => { 535 => [\'Rating','RatingRatingRegionGPSLongitude'] }, - 'ratingregionidentifier' => { 535 => [\'Rating','RatingRatingRegionIdentifier'] }, - 'ratingregionlocationid' => { 535 => [\'Rating','RatingRatingRegionLocationId'] }, - 'ratingregionlocationname' => { 535 => [\'Rating','RatingRatingRegionLocationName'] }, - 'ratingregionprovincestate' => { 535 => [\'Rating','RatingRatingRegionProvinceState'] }, - 'ratingregionsublocation' => { 535 => [\'Rating','RatingRatingRegionSublocation'] }, - 'ratingregionworldregion' => { 535 => [\'Rating','RatingRatingRegionWorldRegion'] }, - 'ratingscalemaxvalue' => { 535 => [\'Rating','RatingRatingScaleMaxValue'] }, - 'ratingscaleminvalue' => { 535 => [\'Rating','RatingRatingScaleMinValue'] }, - 'ratingsourcelink' => { 535 => [\'Rating','RatingRatingSourceLink'] }, - 'ratingvalue' => { 535 => [\'Rating','RatingRatingValue'] }, - 'ratingvaluelogolink' => { 535 => [\'Rating','RatingRatingValueLogoLink'] }, + 'rating' => { 109 => 0x10100, 125 => 0x4746, 133 => 0x1431, 401 => 0xdf, 408 => 'rtng', 416 => 'rtng', 458 => 0x2002, 517 => 'rating', 527 => 'rating', 537 => 'Rating', 542 => 'rating', 550 => 'Rating' }, + 'ratingpercent' => { 125 => 0x4749, 185 => 'Rating', 408 => 'rate', 550 => 'RatingPercent' }, + 'ratingregion' => { 537 => [\'Rating','RatingRatingRegion'] }, + 'ratingregioncity' => { 537 => [\'Rating','RatingRatingRegionCity'] }, + 'ratingregioncountrycode' => { 537 => [\'Rating','RatingRatingRegionCountryCode'] }, + 'ratingregioncountryname' => { 537 => [\'Rating','RatingRatingRegionCountryName'] }, + 'ratingregiongpsaltitude' => { 537 => [\'Rating','RatingRatingRegionGPSAltitude'] }, + 'ratingregiongpsaltituderef' => { 537 => [\'Rating','RatingRatingRegionGPSAltitudeRef'] }, + 'ratingregiongpslatitude' => { 537 => [\'Rating','RatingRatingRegionGPSLatitude'] }, + 'ratingregiongpslongitude' => { 537 => [\'Rating','RatingRatingRegionGPSLongitude'] }, + 'ratingregionidentifier' => { 537 => [\'Rating','RatingRatingRegionIdentifier'] }, + 'ratingregionlocationid' => { 537 => [\'Rating','RatingRatingRegionLocationId'] }, + 'ratingregionlocationname' => { 537 => [\'Rating','RatingRatingRegionLocationName'] }, + 'ratingregionprovincestate' => { 537 => [\'Rating','RatingRatingRegionProvinceState'] }, + 'ratingregionsublocation' => { 537 => [\'Rating','RatingRatingRegionSublocation'] }, + 'ratingregionworldregion' => { 537 => [\'Rating','RatingRatingRegionWorldRegion'] }, + 'ratingscalemaxvalue' => { 537 => [\'Rating','RatingRatingScaleMaxValue'] }, + 'ratingscaleminvalue' => { 537 => [\'Rating','RatingRatingScaleMinValue'] }, + 'ratingsourcelink' => { 537 => [\'Rating','RatingRatingSourceLink'] }, + 'ratingvalue' => { 537 => [\'Rating','RatingRatingValue'] }, + 'ratingvaluelogolink' => { 537 => [\'Rating','RatingRatingValueLogoLink'] }, 'rawandjpgrecording' => { 88 => 0x8, 193 => 0x109, 370 => 0xd }, 'rawbrightnessadj' => { 109 => 0x20001, 114 => 0x38 }, 'rawburstimagecount' => { 80 => 0x2 }, @@ -5945,9 +5948,9 @@ my %tagLookup = ( 'rawcroptop' => { 401 => 0xd2 }, 'rawcustomsaturation' => { 114 => 0x30 }, 'rawcustomtone' => { 114 => 0x34 }, - 'rawdata' => { 429 => 0xa048 }, - 'rawdatabyteorder' => { 429 => 0x40 }, - 'rawdatacfapattern' => { 429 => 0x50 }, + 'rawdata' => { 431 => 0xa048 }, + 'rawdatabyteorder' => { 431 => 0x40 }, + 'rawdatacfapattern' => { 431 => 0x50 }, 'rawdatauniqueid' => { 125 => 0xc65d }, 'rawdepth' => { 195 => 0x10 }, 'rawdevartfilter' => { 337 => 0x121 }, @@ -5955,7 +5958,7 @@ my %tagLookup = ( 'rawdevcolorspace' => { 336 => 0x108, 337 => 0x109 }, 'rawdevcontrastvalue' => { 336 => 0x106, 337 => 0x105 }, 'rawdeveditstatus' => { 336 => 0x10b }, - 'rawdevelopingsoftware' => { 125 => 0xa43a, 528 => 'RAWDevelopingSoftware' }, + 'rawdevelopingsoftware' => { 125 => 0xa43a, 530 => 'RAWDevelopingSoftware' }, 'rawdevelopmentprocess' => { 390 => 0x62 }, 'rawdevengine' => { 336 => 0x109, 337 => 0x10b }, 'rawdevexposurebiasvalue' => { 336 => 0x100, 337 => 0x100 }, @@ -5979,8 +5982,8 @@ my %tagLookup = ( 'rawdevwhitebalance' => { 337 => 0x101 }, 'rawdevwhitebalancevalue' => { 336 => 0x101, 337 => 0x102 }, 'rawfile' => { 125 => 0xfe4c }, - 'rawfilename' => { 521 => 'RawFileName', 523 => 'RawFileName' }, - 'rawfiletype' => { 456 => 0x2029 }, + 'rawfilename' => { 523 => 'RawFileName', 525 => 'RawFileName' }, + 'rawfiletype' => { 458 => 0x2029 }, 'rawformat' => { 359 => 0x2d, 399 => 0x10e }, 'rawimagecenter' => { 243 => 0x99 }, 'rawimagedigest' => { 125 => 0xc71c }, @@ -5991,22 +5994,22 @@ my %tagLookup = ( 'rawjpgsize' => { 61 => 0x7, 105 => 0x2 }, 'rawjpgwidth' => { 105 => 0x3 }, 'rawmeasuredrggb' => { 47 => 0x26a, 49 => 0x280, 51 => 0x194, 52 => [0x1ad,0x26b] }, - 'rawrppused' => { 515 => 'rawrppused' }, + 'rawrppused' => { 517 => 'rawrppused' }, 'rawtopreviewgain' => { 125 => 0xc7a8 }, 'readouttypeactual' => { 145 => 0x1903 }, 'readouttyperequested' => { 145 => 0x1902 }, 'reardisplay' => { 309 => '12.3', 310 => '6.2' }, - 'recdevice' => { 535 => 'RecDevice' }, - 'recdeviceattlensdescription' => { 535 => [\'RecDevice','RecDeviceAttLensDescription'] }, - 'recdevicemanufacturer' => { 535 => [\'RecDevice','RecDeviceManufacturer'] }, - 'recdevicemodelname' => { 535 => [\'RecDevice','RecDeviceModelName'] }, - 'recdeviceownersdeviceid' => { 535 => [\'RecDevice','RecDeviceOwnersDeviceId'] }, - 'recdeviceserialnumber' => { 535 => [\'RecDevice','RecDeviceSerialNumber'] }, - 'recipeendingpage' => { 542 => 'recipeEndingPage' }, - 'recipepagerange' => { 542 => 'recipePageRange' }, - 'recipesource' => { 542 => 'recipeSource' }, - 'recipestartingpage' => { 542 => 'recipeStartingPage' }, - 'recipetitle' => { 542 => 'recipeTitle' }, + 'recdevice' => { 537 => 'RecDevice' }, + 'recdeviceattlensdescription' => { 537 => [\'RecDevice','RecDeviceAttLensDescription'] }, + 'recdevicemanufacturer' => { 537 => [\'RecDevice','RecDeviceManufacturer'] }, + 'recdevicemodelname' => { 537 => [\'RecDevice','RecDeviceModelName'] }, + 'recdeviceownersdeviceid' => { 537 => [\'RecDevice','RecDeviceOwnersDeviceId'] }, + 'recdeviceserialnumber' => { 537 => [\'RecDevice','RecDeviceSerialNumber'] }, + 'recipeendingpage' => { 544 => 'recipeEndingPage' }, + 'recipepagerange' => { 544 => 'recipePageRange' }, + 'recipesource' => { 544 => 'recipeSource' }, + 'recipestartingpage' => { 544 => 'recipeStartingPage' }, + 'recipetitle' => { 544 => 'recipeTitle' }, 'recognizedface1age' => { 347 => 0x20 }, 'recognizedface1name' => { 347 => 0x4 }, 'recognizedface1position' => { 347 => 0x18 }, @@ -6017,7 +6020,7 @@ my %tagLookup = ( 'recognizedface3name' => { 347 => 0x64 }, 'recognizedface3position' => { 347 => 0x78 }, 'recognizedfaceflags' => { 354 => 0x63 }, - 'recommendedexposureindex' => { 125 => 0x8832, 528 => 'RecommendedExposureIndex' }, + 'recommendedexposureindex' => { 125 => 0x8832, 530 => 'RecommendedExposureIndex' }, 'record' => { 124 => 'Record' }, 'recordbasisofrecord' => { 124 => [\'Record','RecordBasisOfRecord'] }, 'recordcollectioncode' => { 124 => [\'Record','RecordCollectionCode'] }, @@ -6029,38 +6032,38 @@ my %tagLookup = ( 'recorddynamicproperties' => { 124 => [\'Record','RecordDynamicProperties'] }, 'recordid' => { 103 => 0x1804 }, 'recordinformationwithheld' => { 124 => [\'Record','RecordInformationWithheld'] }, - 'recordingcopyright' => { 415 => "\xa9phg" }, - 'recordingformat' => { 422 => 0x1000 }, + 'recordingcopyright' => { 416 => "\xa9phg" }, + 'recordingformat' => { 424 => 0x1000 }, 'recordingmode' => { 118 => 0x1, 397 => 0x1 }, 'recordinstitutioncode' => { 124 => [\'Record','RecordInstitutionCode'] }, 'recordinstitutionid' => { 124 => [\'Record','RecordInstitutionID'] }, - 'recordlabelname' => { 415 => "\xa9lab" }, - 'recordlabelurl' => { 415 => "\xa9lal" }, + 'recordlabelname' => { 416 => "\xa9lab" }, + 'recordlabelurl' => { 416 => "\xa9lal" }, 'recordlocationdata' => { 251 => 0x660, 252 => 0x690, 253 => 0x6f8 }, 'recordmode' => { 37 => 0x9, 119 => 0x3000 }, 'recordownerinstitutioncode' => { 124 => [\'Record','RecordOwnerInstitutionCode'] }, - 'recordshutterrelease' => { 431 => 0x217 }, + 'recordshutterrelease' => { 433 => 0x217 }, 'redbalance' => { 335 => 0x1017, 359 => 0x11, 390 => 0x1c }, 'redcurvelimits' => { 114 => 0x18a }, 'redcurvepoints' => { 113 => 0x2d, 114 => 0x160 }, 'redeyecorrection' => { 306 => 0x0 }, - 'redeyeinfo' => { 521 => 'RedEyeInfo', 523 => 'RedEyeInfo' }, - 'redeyereduction' => { 191 => 0x41, 442 => 0x6a, 444 => 0x28 }, + 'redeyeinfo' => { 523 => 'RedEyeInfo', 525 => 'RedEyeInfo' }, + 'redeyereduction' => { 191 => 0x41, 444 => 0x6a, 446 => 0x28 }, 'redeyeremoval' => { 354 => 0xb9 }, 'redhsl' => { 109 => 0x20910 }, - 'redhue' => { 521 => 'RedHue', 523 => 'RedHue' }, - 'redsaturation' => { 521 => 'RedSaturation', 523 => 'RedSaturation' }, + 'redhue' => { 523 => 'RedHue', 525 => 'RedHue' }, + 'redsaturation' => { 523 => 'RedSaturation', 525 => 'RedSaturation' }, 'reductionmatrix1' => { 125 => 0xc625 }, 'reductionmatrix2' => { 125 => 0xc626 }, 'reductionmatrix3' => { 125 => 0xcd3a }, - 'reelname' => { 125 => 0xc789, 415 => 'reel' }, - 'reference1' => { 533 => [\'TagStructure','TagStructureReference'] }, - 'reference2' => { 533 => [\'TagStructure','TagStructureSubLabelsReference'] }, - 'reference3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsReference'] }, - 'reference4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsReference'] }, - 'reference5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, - 'reference6' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, - 'referenceblackwhite' => { 125 => 0x214, 546 => 'ReferenceBlackWhite' }, + 'reelname' => { 125 => 0xc789, 416 => 'reel' }, + 'reference1' => { 535 => [\'TagStructure','TagStructureReference'] }, + 'reference2' => { 535 => [\'TagStructure','TagStructureSubLabelsReference'] }, + 'reference3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsReference'] }, + 'reference4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsReference'] }, + 'reference5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, + 'reference6' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabelsReference'] }, + 'referenceblackwhite' => { 125 => 0x214, 548 => 'ReferenceBlackWhite' }, 'referencedate' => { 138 => 0x2f }, 'referencenumber' => { 138 => 0x32 }, 'references' => { 164 => 'References' }, @@ -6082,7 +6085,7 @@ my %tagLookup = ( 'regionextensions' => { 179 => [\'Regions','RegionsRegionListExtensions'] }, 'regionfocususage' => { 179 => [\'Regions','RegionsRegionListFocusUsage'] }, 'regioninfo' => { 179 => 'Regions' }, - 'regioninfoacdsee' => { 494 => 'Regions' }, + 'regioninfoacdsee' => { 496 => 'Regions' }, 'regioninfodateregionsvalid' => { 182 => [\'RegionInfo','RegionInfoDateRegionsValid'] }, 'regioninfomp' => { 182 => 'RegionInfo' }, 'regioninforegions' => { 182 => [\'RegionInfo','RegionInfoRegions'] }, @@ -6096,10 +6099,10 @@ my %tagLookup = ( 'regionrotation' => { 179 => [\'Regions','RegionsRegionListRotation'] }, 'regionseealso' => { 179 => [\'Regions','RegionsRegionListSeeAlso'] }, 'regiontype' => { 179 => [\'Regions','RegionsRegionListType'] }, - 'registryentryrole' => { 535 => [\'RegistryId','RegistryIdRegEntryRole'] }, - 'registryid' => { 535 => 'RegistryId' }, - 'registryitemid' => { 535 => [\'RegistryId','RegistryIdRegItemId'] }, - 'registryorganisationid' => { 535 => [\'RegistryId','RegistryIdRegOrgId'] }, + 'registryentryrole' => { 537 => [\'RegistryId','RegistryIdRegEntryRole'] }, + 'registryid' => { 537 => 'RegistryId' }, + 'registryitemid' => { 537 => [\'RegistryId','RegistryIdRegItemId'] }, + 'registryorganisationid' => { 537 => [\'RegistryId','RegistryIdRegOrgId'] }, 'relatedaudiofile' => { 162 => 'data' }, 'relatedaudiofilename' => { 162 => '1Name' }, 'relatedaudiofiletype' => { 162 => '0Type' }, @@ -6107,56 +6110,56 @@ my %tagLookup = ( 'relatedimageheight' => { 125 => 0x1002 }, 'relatedimagewidth' => { 125 => 0x1001 }, 'relatedresourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelatedResourceID'] }, - 'relatedsoundfile' => { 125 => 0xa004, 527 => 'RelatedSoundFile' }, + 'relatedsoundfile' => { 125 => 0xa004, 529 => 'RelatedSoundFile' }, 'relatedvideofile' => { 176 => 'data' }, 'relatedvideofilename' => { 176 => '1Name' }, 'relatedvideofiletype' => { 176 => '0Type' }, - 'relation' => { 524 => 'relation' }, + 'relation' => { 526 => 'relation' }, 'relationshipaccordingto' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipAccordingTo'] }, 'relationshipestablisheddate' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipEstablishedDate'] }, 'relationshipofresource' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipOfResource'] }, 'relationshipofresourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipOfResourceID'] }, 'relationshipremarks' => { 124 => [\'ResourceRelationship','ResourceRelationshipRelationshipRemarks'] }, 'relativealtitude' => { 122 => 'RelativeAltitude' }, - 'relativepeakaudiofilepath' => { 550 => 'relativePeakAudioFilePath' }, - 'relativetimestamp' => { 550 => 'relativeTimestamp' }, - 'relativetimestampscale' => { 550 => [\'relativeTimestamp','relativeTimestampScale'] }, - 'relativetimestampvalue' => { 550 => [\'relativeTimestamp','relativeTimestampValue'] }, + 'relativepeakaudiofilepath' => { 552 => 'relativePeakAudioFilePath' }, + 'relativetimestamp' => { 552 => 'relativeTimestamp' }, + 'relativetimestampscale' => { 552 => [\'relativeTimestamp','relativeTimestampScale'] }, + 'relativetimestampvalue' => { 552 => [\'relativeTimestamp','relativeTimestampValue'] }, 'releasebuttontousedial' => { 309 => '17.8', 310 => '18.5', 312 => '18.4', 313 => '18.4', 318 => '33.8', 319 => '17.6', 322 => '18.5', 323 => '18.4' }, - 'releasedate' => { 138 => 0x1e, 407 => 'rldt', 515 => 'ReleaseDate', 550 => 'releaseDate' }, - 'releasemode' => { 119 => 0x3001, 248 => 0x5c, 282 => 0x184d, 456 => 0xb049 }, - 'releasemode2' => { 465 => 0x112c, 466 => [0x112c,0x8], 467 => [0x1108,0x8], 468 => [0x1184,0x8], 469 => [0x1160,0x8], 470 => [0x4,0x1018], 471 => [0x4,0x210], 472 => [0x4,0x210], 473 => [0x4,0x208], 475 => [0x67,0x3f], 476 => [0x6b,0x6d,0x73,0x4b], 477 => [0x6b,0x4b], 478 => 0x1f, 479 => 0x10, 480 => 0x10, 481 => 0x9, 488 => 0x34 }, - 'releasemode3' => { 465 => 0x1128, 466 => 0x1128, 467 => 0x1104, 468 => 0x1180, 469 => 0x115c, 470 => 0x1014, 471 => 0x20c, 472 => 0x20c, 473 => 0x204 }, - 'releaseready' => { 535 => 'ReleaseReady' }, + 'releasedate' => { 138 => 0x1e, 408 => 'rldt', 517 => 'ReleaseDate', 552 => 'releaseDate' }, + 'releasemode' => { 119 => 0x3001, 248 => 0x5c, 282 => 0x184d, 458 => 0xb049 }, + 'releasemode2' => { 467 => 0x112c, 468 => [0x112c,0x8], 469 => [0x1108,0x8], 470 => [0x1184,0x8], 471 => [0x1160,0x8], 472 => [0x4,0x1018], 473 => [0x4,0x210], 474 => [0x4,0x210], 475 => [0x4,0x208], 477 => [0x67,0x3f], 478 => [0x6b,0x6d,0x73,0x4b], 479 => [0x6b,0x4b], 480 => 0x1f, 481 => 0x10, 482 => 0x10, 483 => 0x9, 490 => 0x34 }, + 'releasemode3' => { 467 => 0x1128, 468 => 0x1128, 469 => 0x1104, 470 => 0x1180, 471 => 0x115c, 472 => 0x1014, 473 => 0x20c, 474 => 0x20c, 475 => 0x204 }, + 'releaseready' => { 537 => 'ReleaseReady' }, 'releasesetting' => { 103 => 0x1016 }, - 'releasetime' => { 138 => 0x23, 515 => 'ReleaseTime' }, + 'releasetime' => { 138 => 0x23, 517 => 'ReleaseTime' }, 'remoteonduration' => { 311 => '3.4', 314 => '17.2', 315 => '18.2', 316 => '18.2', 317 => '18.2', 319 => '18.2', 320 => '4.3', 324 => '19.2' }, - 'renditionclass' => { 551 => 'RenditionClass' }, - 'renditionof' => { 551 => 'RenditionOf' }, - 'renditionofalternatepaths' => { 551 => [\'RenditionOf','RenditionOfAlternatePaths'] }, - 'renditionofdocumentid' => { 551 => [\'RenditionOf','RenditionOfDocumentID'] }, - 'renditionoffilepath' => { 551 => [\'RenditionOf','RenditionOfFilePath'] }, - 'renditionoffrompart' => { 551 => [\'RenditionOf','RenditionOfFromPart'] }, - 'renditionofinstanceid' => { 551 => [\'RenditionOf','RenditionOfInstanceID'] }, - 'renditionoflastmodifydate' => { 551 => [\'RenditionOf','RenditionOfLastModifyDate'] }, - 'renditionoflasturl' => { 551 => [\'RenditionOf','RenditionOfLastURL'] }, - 'renditionoflinkcategory' => { 551 => [\'RenditionOf','RenditionOfLinkCategory'] }, - 'renditionoflinkform' => { 551 => [\'RenditionOf','RenditionOfLinkForm'] }, - 'renditionofmanager' => { 551 => [\'RenditionOf','RenditionOfManager'] }, - 'renditionofmanagervariant' => { 551 => [\'RenditionOf','RenditionOfManagerVariant'] }, - 'renditionofmanageto' => { 551 => [\'RenditionOf','RenditionOfManageTo'] }, - 'renditionofmanageui' => { 551 => [\'RenditionOf','RenditionOfManageUI'] }, - 'renditionofmaskmarkers' => { 551 => [\'RenditionOf','RenditionOfMaskMarkers'] }, - 'renditionoforiginaldocumentid' => { 551 => [\'RenditionOf','RenditionOfOriginalDocumentID'] }, - 'renditionofpartmapping' => { 551 => [\'RenditionOf','RenditionOfPartMapping'] }, - 'renditionofplacedresolutionunit' => { 551 => [\'RenditionOf','RenditionOfPlacedResolutionUnit'] }, - 'renditionofplacedxresolution' => { 551 => [\'RenditionOf','RenditionOfPlacedXResolution'] }, - 'renditionofplacedyresolution' => { 551 => [\'RenditionOf','RenditionOfPlacedYResolution'] }, - 'renditionofrenditionclass' => { 551 => [\'RenditionOf','RenditionOfRenditionClass'] }, - 'renditionofrenditionparams' => { 551 => [\'RenditionOf','RenditionOfRenditionParams'] }, - 'renditionoftopart' => { 551 => [\'RenditionOf','RenditionOfToPart'] }, - 'renditionofversionid' => { 551 => [\'RenditionOf','RenditionOfVersionID'] }, - 'renditionparams' => { 551 => 'RenditionParams' }, + 'renditionclass' => { 553 => 'RenditionClass' }, + 'renditionof' => { 553 => 'RenditionOf' }, + 'renditionofalternatepaths' => { 553 => [\'RenditionOf','RenditionOfAlternatePaths'] }, + 'renditionofdocumentid' => { 553 => [\'RenditionOf','RenditionOfDocumentID'] }, + 'renditionoffilepath' => { 553 => [\'RenditionOf','RenditionOfFilePath'] }, + 'renditionoffrompart' => { 553 => [\'RenditionOf','RenditionOfFromPart'] }, + 'renditionofinstanceid' => { 553 => [\'RenditionOf','RenditionOfInstanceID'] }, + 'renditionoflastmodifydate' => { 553 => [\'RenditionOf','RenditionOfLastModifyDate'] }, + 'renditionoflasturl' => { 553 => [\'RenditionOf','RenditionOfLastURL'] }, + 'renditionoflinkcategory' => { 553 => [\'RenditionOf','RenditionOfLinkCategory'] }, + 'renditionoflinkform' => { 553 => [\'RenditionOf','RenditionOfLinkForm'] }, + 'renditionofmanager' => { 553 => [\'RenditionOf','RenditionOfManager'] }, + 'renditionofmanagervariant' => { 553 => [\'RenditionOf','RenditionOfManagerVariant'] }, + 'renditionofmanageto' => { 553 => [\'RenditionOf','RenditionOfManageTo'] }, + 'renditionofmanageui' => { 553 => [\'RenditionOf','RenditionOfManageUI'] }, + 'renditionofmaskmarkers' => { 553 => [\'RenditionOf','RenditionOfMaskMarkers'] }, + 'renditionoforiginaldocumentid' => { 553 => [\'RenditionOf','RenditionOfOriginalDocumentID'] }, + 'renditionofpartmapping' => { 553 => [\'RenditionOf','RenditionOfPartMapping'] }, + 'renditionofplacedresolutionunit' => { 553 => [\'RenditionOf','RenditionOfPlacedResolutionUnit'] }, + 'renditionofplacedxresolution' => { 553 => [\'RenditionOf','RenditionOfPlacedXResolution'] }, + 'renditionofplacedyresolution' => { 553 => [\'RenditionOf','RenditionOfPlacedYResolution'] }, + 'renditionofrenditionclass' => { 553 => [\'RenditionOf','RenditionOfRenditionClass'] }, + 'renditionofrenditionparams' => { 553 => [\'RenditionOf','RenditionOfRenditionParams'] }, + 'renditionoftopart' => { 553 => [\'RenditionOf','RenditionOfToPart'] }, + 'renditionofversionid' => { 553 => [\'RenditionOf','RenditionOfVersionID'] }, + 'renditionparams' => { 553 => 'RenditionParams' }, 'repeatingflashcount' => { 221 => 0xd, 222 => 0xe, 223 => 0xe, 224 => 0xe, 225 => 0xe, 226 => 0xe, 318 => '17.2', 319 => '24.2', 320 => '9.2', 321 => '24.2', 324 => '25.2' }, 'repeatingflashcountbuilt-in' => { 289 => 0x4db }, 'repeatingflashcountexternal' => { 289 => 0x4c3 }, @@ -6165,166 +6168,166 @@ my %tagLookup = ( 'repeatingflashrate' => { 221 => 0xc, 222 => 0xd, 223 => 0xd, 224 => 0xd, 225 => 0xd, 226 => 0xd, 318 => '18.1', 319 => '25.1', 320 => '10.1', 321 => '25.1', 324 => '26.1' }, 'repeatingflashratebuilt-in' => { 289 => 0x4da }, 'repeatingflashrateexternal' => { 289 => 0x4c2 }, - 'requirements' => { 415 => "\xa9req" }, - 'requires' => { 519 => 'requires' }, - 'resampleparams' => { 550 => 'resampleParams' }, - 'resampleparamsquality' => { 550 => [\'resampleParams','resampleParamsQuality'] }, + 'requirements' => { 416 => "\xa9req" }, + 'requires' => { 521 => 'requires' }, + 'resampleparams' => { 552 => 'resampleParams' }, + 'resampleparamsquality' => { 552 => [\'resampleParams','resampleParamsQuality'] }, 'resamplingkerneldenominators050' => { 145 => 0xe50 }, 'resamplingkerneldenominators067' => { 145 => 0xe4f }, 'resamplingkerneldenominators100' => { 145 => 0xe51 }, - 'resaved' => { 431 => 0x21e }, + 'resaved' => { 433 => 0x21e }, 'resetblacksegrows' => { 145 => 0x181a }, 'resolution' => { 169 => 'Resolution' }, - 'resolutionmode' => { 432 => [0x87,0x4] }, - 'resolutionunit' => { 125 => 0x128, 141 => 0x2, 546 => 'ResolutionUnit' }, + 'resolutionmode' => { 434 => [0x87,0x4] }, + 'resolutionunit' => { 125 => 0x128, 141 => 0x2, 548 => 'ResolutionUnit' }, 'resourceid' => { 124 => [\'ResourceRelationship','ResourceRelationshipResourceID'] }, 'resourcerelationship' => { 124 => 'ResourceRelationship' }, 'resourcerelationshipid' => { 124 => [\'ResourceRelationship','ResourceRelationshipResourceRelationshipID'] }, 'restrictdrivemodes' => { 90 => 0x612 }, - 'restrictions' => { 543 => 'restrictions' }, - 'retouchareafeather' => { 521 => [\'RetouchAreas','RetouchAreasFeather'], 523 => [\'RetouchAreas','RetouchAreasFeather'] }, - 'retouchareamaskalpha' => { 521 => [\'RetouchAreas','RetouchAreasMasksAlpha'], 523 => [\'RetouchAreas','RetouchAreasMasksAlpha'] }, - 'retouchareamaskangle' => { 521 => [\'RetouchAreas','RetouchAreasMasksAngle'], 523 => [\'RetouchAreas','RetouchAreasMasksAngle'] }, - 'retouchareamaskbottom' => { 521 => [\'RetouchAreas','RetouchAreasMasksBottom'], 523 => [\'RetouchAreas','RetouchAreasMasksBottom'] }, - 'retouchareamaskcentervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksCenterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksCenterValue'] }, - 'retouchareamaskcenterweight' => { 521 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'], 523 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'] }, - 'retouchareamaskdabs' => { 521 => [\'RetouchAreas','RetouchAreasMasksDabs'], 523 => [\'RetouchAreas','RetouchAreasMasksDabs'] }, - 'retouchareamaskfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksFeather'] }, - 'retouchareamaskflipped' => { 521 => [\'RetouchAreas','RetouchAreasMasksFlipped'], 523 => [\'RetouchAreas','RetouchAreasMasksFlipped'] }, - 'retouchareamaskflow' => { 521 => [\'RetouchAreas','RetouchAreasMasksFlow'], 523 => [\'RetouchAreas','RetouchAreasMasksFlow'] }, - 'retouchareamaskfullx' => { 521 => [\'RetouchAreas','RetouchAreasMasksFullX'], 523 => [\'RetouchAreas','RetouchAreasMasksFullX'] }, - 'retouchareamaskfully' => { 521 => [\'RetouchAreas','RetouchAreasMasksFullY'], 523 => [\'RetouchAreas','RetouchAreasMasksFullY'] }, - 'retouchareamaskinputdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksInputDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksInputDigest'] }, - 'retouchareamaskleft' => { 521 => [\'RetouchAreas','RetouchAreasMasksLeft'], 523 => [\'RetouchAreas','RetouchAreasMasksLeft'] }, - 'retouchareamaskmaskactive' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskActive'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskActive'] }, - 'retouchareamaskmaskblendmode' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'] }, - 'retouchareamaskmaskdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'] }, - 'retouchareamaskmaskinverted' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'] }, - 'retouchareamaskmaskname' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskName'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskName'] }, - 'retouchareamaskmasks' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasks'], 523 => [\'RetouchAreas','RetouchAreasMasksMasks'] }, - 'retouchareamaskmasksalpha' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'] }, - 'retouchareamaskmasksangle' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'] }, - 'retouchareamaskmasksbottom' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'] }, - 'retouchareamaskmaskscentervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'] }, - 'retouchareamaskmaskscenterweight' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'] }, - 'retouchareamaskmasksdabs' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'] }, - 'retouchareamaskmasksfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'] }, - 'retouchareamaskmasksflipped' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'] }, - 'retouchareamaskmasksflow' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'] }, - 'retouchareamaskmasksfullx' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'] }, - 'retouchareamaskmasksfully' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'] }, - 'retouchareamaskmasksinputdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'] }, - 'retouchareamaskmasksleft' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'] }, - 'retouchareamaskmasksmaskactive' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'] }, - 'retouchareamaskmasksmaskblendmode' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'] }, - 'retouchareamaskmasksmaskdigest' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'] }, - 'retouchareamaskmasksmaskinverted' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'] }, - 'retouchareamaskmasksmaskname' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'] }, - 'retouchareamaskmasksmasksubtype' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'] }, - 'retouchareamaskmasksmasksyncid' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'] }, - 'retouchareamaskmasksmaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'] }, - 'retouchareamaskmasksmidpoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'] }, - 'retouchareamaskmasksorigin' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'] }, - 'retouchareamaskmasksperimetervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'] }, - 'retouchareamaskmasksradius' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'] }, - 'retouchareamaskmasksreferencepoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'] }, - 'retouchareamaskmasksright' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRight'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRight'] }, - 'retouchareamaskmasksroundness' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'] }, - 'retouchareamaskmaskssizex' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'] }, - 'retouchareamaskmaskssizey' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'] }, - 'retouchareamaskmaskstop' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksTop'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksTop'] }, - 'retouchareamaskmasksubtype' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'] }, - 'retouchareamaskmasksvalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'] }, - 'retouchareamaskmasksversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'] }, - 'retouchareamaskmaskswhat' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'] }, - 'retouchareamaskmaskswholeimagearea' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'] }, - 'retouchareamaskmasksx' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksX'] }, - 'retouchareamaskmasksy' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksY'] }, - 'retouchareamaskmasksyncid' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'] }, - 'retouchareamaskmaskszerox' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'] }, - 'retouchareamaskmaskszeroy' => { 521 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'], 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'] }, - 'retouchareamaskmaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'] }, - 'retouchareamaskmidpoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksMidpoint'], 523 => [\'RetouchAreas','RetouchAreasMasksMidpoint'] }, - 'retouchareamaskorigin' => { 521 => [\'RetouchAreas','RetouchAreasMasksOrigin'], 523 => [\'RetouchAreas','RetouchAreasMasksOrigin'] }, - 'retouchareamaskperimetervalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'], 523 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'] }, - 'retouchareamaskradius' => { 521 => [\'RetouchAreas','RetouchAreasMasksRadius'], 523 => [\'RetouchAreas','RetouchAreasMasksRadius'] }, - 'retouchareamaskrange' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'] }, - 'retouchareamaskrangeareamodels' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'] }, - 'retouchareamaskrangeareamodelscolorsampleinfo' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, - 'retouchareamaskrangeareamodelscomponents' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, - 'retouchareamaskrangecoloramount' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'] }, - 'retouchareamaskrangedepthfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'] }, - 'retouchareamaskrangedepthmax' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'] }, - 'retouchareamaskrangedepthmin' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'] }, - 'retouchareamaskrangeinvert' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'] }, - 'retouchareamaskrangelumfeather' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'] }, - 'retouchareamaskrangeluminancedepthsampleinfo' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, - 'retouchareamaskrangelummax' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'] }, - 'retouchareamaskrangelummin' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'] }, - 'retouchareamaskrangelumrange' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'] }, - 'retouchareamaskrangesampletype' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'] }, - 'retouchareamaskrangetype' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'] }, - 'retouchareamaskrangeversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'] }, - 'retouchareamaskreferencepoint' => { 521 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'], 523 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'] }, - 'retouchareamaskright' => { 521 => [\'RetouchAreas','RetouchAreasMasksRight'], 523 => [\'RetouchAreas','RetouchAreasMasksRight'] }, - 'retouchareamaskroundness' => { 521 => [\'RetouchAreas','RetouchAreasMasksRoundness'], 523 => [\'RetouchAreas','RetouchAreasMasksRoundness'] }, - 'retouchareamasks' => { 521 => [\'RetouchAreas','RetouchAreasMasks'], 523 => [\'RetouchAreas','RetouchAreasMasks'] }, - 'retouchareamasksizex' => { 521 => [\'RetouchAreas','RetouchAreasMasksSizeX'], 523 => [\'RetouchAreas','RetouchAreasMasksSizeX'] }, - 'retouchareamasksizey' => { 521 => [\'RetouchAreas','RetouchAreasMasksSizeY'], 523 => [\'RetouchAreas','RetouchAreasMasksSizeY'] }, - 'retouchareamasktop' => { 521 => [\'RetouchAreas','RetouchAreasMasksTop'], 523 => [\'RetouchAreas','RetouchAreasMasksTop'] }, - 'retouchareamaskvalue' => { 521 => [\'RetouchAreas','RetouchAreasMasksMaskValue'], 523 => [\'RetouchAreas','RetouchAreasMasksMaskValue'] }, - 'retouchareamaskversion' => { 521 => [\'RetouchAreas','RetouchAreasMasksVersion'], 523 => [\'RetouchAreas','RetouchAreasMasksVersion'] }, - 'retouchareamaskwhat' => { 521 => [\'RetouchAreas','RetouchAreasMasksWhat'], 523 => [\'RetouchAreas','RetouchAreasMasksWhat'] }, - 'retouchareamaskwholeimagearea' => { 521 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'], 523 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'] }, - 'retouchareamaskx' => { 521 => [\'RetouchAreas','RetouchAreasMasksX'], 523 => [\'RetouchAreas','RetouchAreasMasksX'] }, - 'retouchareamasky' => { 521 => [\'RetouchAreas','RetouchAreasMasksY'], 523 => [\'RetouchAreas','RetouchAreasMasksY'] }, - 'retouchareamaskzerox' => { 521 => [\'RetouchAreas','RetouchAreasMasksZeroX'], 523 => [\'RetouchAreas','RetouchAreasMasksZeroX'] }, - 'retouchareamaskzeroy' => { 521 => [\'RetouchAreas','RetouchAreasMasksZeroY'], 523 => [\'RetouchAreas','RetouchAreasMasksZeroY'] }, - 'retouchareamethod' => { 521 => [\'RetouchAreas','RetouchAreasMethod'], 523 => [\'RetouchAreas','RetouchAreasMethod'] }, - 'retouchareaoffsety' => { 521 => [\'RetouchAreas','RetouchAreasOffsetY'], 523 => [\'RetouchAreas','RetouchAreasOffsetY'] }, - 'retouchareaopacity' => { 521 => [\'RetouchAreas','RetouchAreasOpacity'], 523 => [\'RetouchAreas','RetouchAreasOpacity'] }, - 'retouchareas' => { 521 => 'RetouchAreas', 523 => 'RetouchAreas' }, - 'retouchareaseed' => { 521 => [\'RetouchAreas','RetouchAreasSeed'], 523 => [\'RetouchAreas','RetouchAreasSeed'] }, - 'retouchareasourcestate' => { 521 => [\'RetouchAreas','RetouchAreasSourceState'], 523 => [\'RetouchAreas','RetouchAreasSourceState'] }, - 'retouchareasourcex' => { 521 => [\'RetouchAreas','RetouchAreasSourceX'], 523 => [\'RetouchAreas','RetouchAreasSourceX'] }, - 'retouchareaspottype' => { 521 => [\'RetouchAreas','RetouchAreasSpotType'], 523 => [\'RetouchAreas','RetouchAreasSpotType'] }, + 'restrictions' => { 545 => 'restrictions' }, + 'retouchareafeather' => { 523 => [\'RetouchAreas','RetouchAreasFeather'], 525 => [\'RetouchAreas','RetouchAreasFeather'] }, + 'retouchareamaskalpha' => { 523 => [\'RetouchAreas','RetouchAreasMasksAlpha'], 525 => [\'RetouchAreas','RetouchAreasMasksAlpha'] }, + 'retouchareamaskangle' => { 523 => [\'RetouchAreas','RetouchAreasMasksAngle'], 525 => [\'RetouchAreas','RetouchAreasMasksAngle'] }, + 'retouchareamaskbottom' => { 523 => [\'RetouchAreas','RetouchAreasMasksBottom'], 525 => [\'RetouchAreas','RetouchAreasMasksBottom'] }, + 'retouchareamaskcentervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksCenterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksCenterValue'] }, + 'retouchareamaskcenterweight' => { 523 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'], 525 => [\'RetouchAreas','RetouchAreasMasksCenterWeight'] }, + 'retouchareamaskdabs' => { 523 => [\'RetouchAreas','RetouchAreasMasksDabs'], 525 => [\'RetouchAreas','RetouchAreasMasksDabs'] }, + 'retouchareamaskfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksFeather'] }, + 'retouchareamaskflipped' => { 523 => [\'RetouchAreas','RetouchAreasMasksFlipped'], 525 => [\'RetouchAreas','RetouchAreasMasksFlipped'] }, + 'retouchareamaskflow' => { 523 => [\'RetouchAreas','RetouchAreasMasksFlow'], 525 => [\'RetouchAreas','RetouchAreasMasksFlow'] }, + 'retouchareamaskfullx' => { 523 => [\'RetouchAreas','RetouchAreasMasksFullX'], 525 => [\'RetouchAreas','RetouchAreasMasksFullX'] }, + 'retouchareamaskfully' => { 523 => [\'RetouchAreas','RetouchAreasMasksFullY'], 525 => [\'RetouchAreas','RetouchAreasMasksFullY'] }, + 'retouchareamaskinputdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksInputDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksInputDigest'] }, + 'retouchareamaskleft' => { 523 => [\'RetouchAreas','RetouchAreasMasksLeft'], 525 => [\'RetouchAreas','RetouchAreasMasksLeft'] }, + 'retouchareamaskmaskactive' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskActive'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskActive'] }, + 'retouchareamaskmaskblendmode' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskBlendMode'] }, + 'retouchareamaskmaskdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskDigest'] }, + 'retouchareamaskmaskinverted' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskInverted'] }, + 'retouchareamaskmaskname' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskName'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskName'] }, + 'retouchareamaskmasks' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasks'], 525 => [\'RetouchAreas','RetouchAreasMasksMasks'] }, + 'retouchareamaskmasksalpha' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksAlpha'] }, + 'retouchareamaskmasksangle' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksAngle'] }, + 'retouchareamaskmasksbottom' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksBottom'] }, + 'retouchareamaskmaskscentervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksCenterValue'] }, + 'retouchareamaskmaskscenterweight' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksCenterWeight'] }, + 'retouchareamaskmasksdabs' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksDabs'] }, + 'retouchareamaskmasksfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFeather'] }, + 'retouchareamaskmasksflipped' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFlipped'] }, + 'retouchareamaskmasksflow' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFlow'] }, + 'retouchareamaskmasksfullx' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFullX'] }, + 'retouchareamaskmasksfully' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksFullY'] }, + 'retouchareamaskmasksinputdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksInputDigest'] }, + 'retouchareamaskmasksleft' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksLeft'] }, + 'retouchareamaskmasksmaskactive' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskActive'] }, + 'retouchareamaskmasksmaskblendmode' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskBlendMode'] }, + 'retouchareamaskmasksmaskdigest' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskDigest'] }, + 'retouchareamaskmasksmaskinverted' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskInverted'] }, + 'retouchareamaskmasksmaskname' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskName'] }, + 'retouchareamaskmasksmasksubtype' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSubType'] }, + 'retouchareamaskmasksmasksyncid' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskSyncID'] }, + 'retouchareamaskmasksmaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskVersion'] }, + 'retouchareamaskmasksmidpoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMidpoint'] }, + 'retouchareamaskmasksorigin' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksOrigin'] }, + 'retouchareamaskmasksperimetervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksPerimeterValue'] }, + 'retouchareamaskmasksradius' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRadius'] }, + 'retouchareamaskmasksreferencepoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksReferencePoint'] }, + 'retouchareamaskmasksright' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRight'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRight'] }, + 'retouchareamaskmasksroundness' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksRoundness'] }, + 'retouchareamaskmaskssizex' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksSizeX'] }, + 'retouchareamaskmaskssizey' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksSizeY'] }, + 'retouchareamaskmaskstop' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksTop'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksTop'] }, + 'retouchareamaskmasksubtype' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskSubType'] }, + 'retouchareamaskmasksvalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksMaskValue'] }, + 'retouchareamaskmasksversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksVersion'] }, + 'retouchareamaskmaskswhat' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksWhat'] }, + 'retouchareamaskmaskswholeimagearea' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksWholeImageArea'] }, + 'retouchareamaskmasksx' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksX'] }, + 'retouchareamaskmasksy' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksY'] }, + 'retouchareamaskmasksyncid' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskSyncID'] }, + 'retouchareamaskmaskszerox' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksZeroX'] }, + 'retouchareamaskmaskszeroy' => { 523 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'], 525 => [\'RetouchAreas','RetouchAreasMasksMasksZeroY'] }, + 'retouchareamaskmaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskVersion'] }, + 'retouchareamaskmidpoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksMidpoint'], 525 => [\'RetouchAreas','RetouchAreasMasksMidpoint'] }, + 'retouchareamaskorigin' => { 523 => [\'RetouchAreas','RetouchAreasMasksOrigin'], 525 => [\'RetouchAreas','RetouchAreasMasksOrigin'] }, + 'retouchareamaskperimetervalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'], 525 => [\'RetouchAreas','RetouchAreasMasksPerimeterValue'] }, + 'retouchareamaskradius' => { 523 => [\'RetouchAreas','RetouchAreasMasksRadius'], 525 => [\'RetouchAreas','RetouchAreasMasksRadius'] }, + 'retouchareamaskrange' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMask'] }, + 'retouchareamaskrangeareamodels' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModels'] }, + 'retouchareamaskrangeareamodelscolorsampleinfo' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsColorRangeMaskAreaSampleInfo'] }, + 'retouchareamaskrangeareamodelscomponents' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskAreaModelsAreaComponents'] }, + 'retouchareamaskrangecoloramount' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskColorAmount'] }, + 'retouchareamaskrangedepthfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthFeather'] }, + 'retouchareamaskrangedepthmax' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMax'] }, + 'retouchareamaskrangedepthmin' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskDepthMin'] }, + 'retouchareamaskrangeinvert' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskInvert'] }, + 'retouchareamaskrangelumfeather' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumFeather'] }, + 'retouchareamaskrangeluminancedepthsampleinfo' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLuminanceDepthSampleInfo'] }, + 'retouchareamaskrangelummax' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMax'] }, + 'retouchareamaskrangelummin' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumMin'] }, + 'retouchareamaskrangelumrange' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskLumRange'] }, + 'retouchareamaskrangesampletype' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskSampleType'] }, + 'retouchareamaskrangetype' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskType'] }, + 'retouchareamaskrangeversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksCorrectionRangeMaskVersion'] }, + 'retouchareamaskreferencepoint' => { 523 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'], 525 => [\'RetouchAreas','RetouchAreasMasksReferencePoint'] }, + 'retouchareamaskright' => { 523 => [\'RetouchAreas','RetouchAreasMasksRight'], 525 => [\'RetouchAreas','RetouchAreasMasksRight'] }, + 'retouchareamaskroundness' => { 523 => [\'RetouchAreas','RetouchAreasMasksRoundness'], 525 => [\'RetouchAreas','RetouchAreasMasksRoundness'] }, + 'retouchareamasks' => { 523 => [\'RetouchAreas','RetouchAreasMasks'], 525 => [\'RetouchAreas','RetouchAreasMasks'] }, + 'retouchareamasksizex' => { 523 => [\'RetouchAreas','RetouchAreasMasksSizeX'], 525 => [\'RetouchAreas','RetouchAreasMasksSizeX'] }, + 'retouchareamasksizey' => { 523 => [\'RetouchAreas','RetouchAreasMasksSizeY'], 525 => [\'RetouchAreas','RetouchAreasMasksSizeY'] }, + 'retouchareamasktop' => { 523 => [\'RetouchAreas','RetouchAreasMasksTop'], 525 => [\'RetouchAreas','RetouchAreasMasksTop'] }, + 'retouchareamaskvalue' => { 523 => [\'RetouchAreas','RetouchAreasMasksMaskValue'], 525 => [\'RetouchAreas','RetouchAreasMasksMaskValue'] }, + 'retouchareamaskversion' => { 523 => [\'RetouchAreas','RetouchAreasMasksVersion'], 525 => [\'RetouchAreas','RetouchAreasMasksVersion'] }, + 'retouchareamaskwhat' => { 523 => [\'RetouchAreas','RetouchAreasMasksWhat'], 525 => [\'RetouchAreas','RetouchAreasMasksWhat'] }, + 'retouchareamaskwholeimagearea' => { 523 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'], 525 => [\'RetouchAreas','RetouchAreasMasksWholeImageArea'] }, + 'retouchareamaskx' => { 523 => [\'RetouchAreas','RetouchAreasMasksX'], 525 => [\'RetouchAreas','RetouchAreasMasksX'] }, + 'retouchareamasky' => { 523 => [\'RetouchAreas','RetouchAreasMasksY'], 525 => [\'RetouchAreas','RetouchAreasMasksY'] }, + 'retouchareamaskzerox' => { 523 => [\'RetouchAreas','RetouchAreasMasksZeroX'], 525 => [\'RetouchAreas','RetouchAreasMasksZeroX'] }, + 'retouchareamaskzeroy' => { 523 => [\'RetouchAreas','RetouchAreasMasksZeroY'], 525 => [\'RetouchAreas','RetouchAreasMasksZeroY'] }, + 'retouchareamethod' => { 523 => [\'RetouchAreas','RetouchAreasMethod'], 525 => [\'RetouchAreas','RetouchAreasMethod'] }, + 'retouchareaoffsety' => { 523 => [\'RetouchAreas','RetouchAreasOffsetY'], 525 => [\'RetouchAreas','RetouchAreasOffsetY'] }, + 'retouchareaopacity' => { 523 => [\'RetouchAreas','RetouchAreasOpacity'], 525 => [\'RetouchAreas','RetouchAreasOpacity'] }, + 'retouchareas' => { 523 => 'RetouchAreas', 525 => 'RetouchAreas' }, + 'retouchareaseed' => { 523 => [\'RetouchAreas','RetouchAreasSeed'], 525 => [\'RetouchAreas','RetouchAreasSeed'] }, + 'retouchareasourcestate' => { 523 => [\'RetouchAreas','RetouchAreasSourceState'], 525 => [\'RetouchAreas','RetouchAreasSourceState'] }, + 'retouchareasourcex' => { 523 => [\'RetouchAreas','RetouchAreasSourceX'], 525 => [\'RetouchAreas','RetouchAreasSourceX'] }, + 'retouchareaspottype' => { 523 => [\'RetouchAreas','RetouchAreasSpotType'], 525 => [\'RetouchAreas','RetouchAreasSpotType'] }, 'retouchhistory' => { 243 => 0x9e }, - 'retouchinfo' => { 521 => 'RetouchInfo', 523 => 'RetouchInfo' }, + 'retouchinfo' => { 523 => 'RetouchInfo', 525 => 'RetouchInfo' }, 'retouchnefprocessing' => { 266 => 0x5 }, 'retractlensonpoweroff' => { 90 => 0x814 }, 'reuse' => { 340 => 'Reuse' }, - 'reuseallowed' => { 553 => 'ReuseAllowed' }, - 'reuseprohibited' => { 543 => 'reuseProhibited' }, + 'reuseallowed' => { 555 => 'ReuseAllowed' }, + 'reuseprohibited' => { 545 => 'reuseProhibited' }, 'reverseexposurecompdial' => { 316 => '5.2' }, 'reversefocusring' => { 326 => 0x163, 327 => 0x163, 328 => 0x17b }, 'reverseindicators' => { 309 => '12.1', 310 => '6.1', 312 => '6.1', 313 => '6.1', 314 => '4.3', 315 => '5.2', 316 => '5.4', 318 => '33.5', 319 => '5.1', 322 => '6.1', 323 => '6.1', 324 => '6.2', 325 => 0xc5, 326 => 0xc1, 327 => 0xc1, 328 => 0xc1 }, 'reverseshutterspeedaperture' => { 316 => '5.3' }, - 'revision' => { 525 => 'revision' }, + 'revision' => { 527 => 'revision' }, 'rflensmffocusringsensitivity' => { 90 => 0x714 }, 'rflenstype' => { 61 => 0x3d }, 'rgbcurvelimits' => { 114 => 0x238 }, 'rgbcurvepoints' => { 113 => 0x7, 114 => 0x20e }, 'rgbtables' => { 125 => 0xcd3f }, - 'richtextcomment' => { 530 => 'RichTextComment' }, - 'ricohdate' => { 421 => 0x6 }, - 'ricohimageheight' => { 421 => 0x2 }, - 'ricohimagewidth' => { 421 => 0x0 }, - 'rightalbedo' => { 511 => 'RightAlbedo' }, + 'richtextcomment' => { 532 => 'RichTextComment' }, + 'ricohdate' => { 423 => 0x6 }, + 'ricohimageheight' => { 423 => 0x2 }, + 'ricohimagewidth' => { 423 => 0x0 }, + 'rightalbedo' => { 513 => 'RightAlbedo' }, 'rightascension' => { 172 => 'RightAscension' }, - 'rights' => { 524 => 'rights' }, - 'rightsagent' => { 543 => 'rightsAgent' }, - 'rightsowner' => { 543 => 'rightsOwner' }, - 'roll' => { 121 => 0x8, 415 => ['roll',"\xa9frl"] }, - 'rollangle' => { 66 => 0x4, 133 => 0x144d, 258 => 0x0, 330 => 0x903, 344 => 'RollAngle', 354 => 0x90, 388 => 0x1, 389 => 0x3, 427 => 0x2 }, + 'rights' => { 526 => 'rights' }, + 'rightsagent' => { 545 => 'rightsAgent' }, + 'rightsowner' => { 545 => 'rightsOwner' }, + 'roll' => { 121 => 0x8, 416 => ['roll',"\xa9frl"] }, + 'rollangle' => { 66 => 0x4, 133 => 0x144d, 258 => 0x0, 330 => 0x903, 344 => 'RollAngle', 354 => 0x90, 388 => 0x1, 389 => 0x3, 429 => 0x2 }, 'romoperationmode' => { 103 => 0x80d }, - 'rotation' => { 31 => 0x17, 32 => 0x18, 102 => 0x3, 109 => 0x10002, 114 => 0x26e, 120 => 'QuickTime-Rotation', 129 => 0x4, 172 => 'Rotation', 189 => [0x65,0x50], 190 => 0x46, 191 => 0x5a, 194 => 0x10, 267 => 0x1a, 282 => 0x3693, 288 => '590.1', 302 => 0x76a43207, 354 => 0x30, 370 => '17.2', 401 => 0xd8, 408 => 'irot', 442 => 0x3f, 443 => 0x3f, 453 => 0x10 }, - 'routedto' => { 529 => 'RoutedTo' }, + 'rotation' => { 31 => 0x17, 32 => 0x18, 102 => 0x3, 109 => 0x10002, 114 => 0x26e, 120 => 'QuickTime-Rotation', 129 => 0x4, 172 => 'Rotation', 189 => [0x65,0x50], 190 => 0x46, 191 => 0x5a, 194 => 0x10, 267 => 0x1a, 282 => 0x3693, 288 => '590.1', 302 => 0x76a43207, 354 => 0x30, 370 => '17.2', 401 => 0xd8, 409 => 'irot', 444 => 0x3f, 445 => 0x3f, 455 => 0x10 }, + 'routedto' => { 531 => 'RoutedTo' }, 'routing' => { 406 => 'Routing' }, - 'routingdestinations' => { 509 => 'RoutingDestinations' }, - 'routingexclusions' => { 509 => 'RoutingExclusions' }, - 'routingnotes' => { 529 => 'RoutingNotes' }, + 'routingdestinations' => { 511 => 'RoutingDestinations' }, + 'routingexclusions' => { 511 => 'RoutingExclusions' }, + 'routingnotes' => { 531 => 'RoutingNotes' }, 'rowsperstrip' => { 125 => 0x116 }, - 'rpp' => { 515 => 'rpp' }, + 'rpp' => { 517 => 'rpp' }, 'rtkflag' => { 122 => 'RtkFlag' }, 'rtkstdhgt' => { 122 => 'RtkStdHgt' }, 'rtkstdlat' => { 122 => 'RtkStdLat' }, @@ -6333,36 +6336,36 @@ my %tagLookup = ( 'safetyshiftinavortv' => { 88 => 0x10, 89 => 0x10, 91 => 0xf, 92 => 0x10, 95 => 0x10 }, 'sameexposurefornewaperture' => { 90 => 0x112 }, 'samplebits' => { 162 => 'SampleBits' }, - 'samplepagerange' => { 540 => 'samplePageRange' }, + 'samplepagerange' => { 542 => 'samplePageRange' }, 'samplerate' => { 162 => 'SampleRate' }, - 'samplesperpixel' => { 125 => 0x115, 359 => 0x8, 546 => 'SamplesPerPixel' }, + 'samplesperpixel' => { 125 => 0x115, 359 => 0x8, 548 => 'SamplesPerPixel' }, 'samplestructure' => { 140 => 0x5a }, - 'samsungmodelid' => { 429 => 0x3 }, - 'sanyoquality' => { 431 => 0x201 }, - 'sanyothumbnail' => { 431 => 0x100 }, - 'saturation' => { 10 => 0x6e, 12 => 0x76, 37 => 0xe, 55 => 0x1, 68 => 0x7, 118 => 0xd, 119 => [0x3013,0x1f], 125 => [0xa409,0xfe55], 133 => 0x1003, 163 => 'Saturation', 188 => 0x1f, 189 => 0x32, 190 => 0x28, 191 => 0x1a, 196 => 0x1, 243 => 0xaa, 260 => 0x35, 261 => 0x3b, 262 => 0x43, 354 => 0x40, 356 => 0x300d, 390 => 0x1f, 397 => 0xd, 416 => 0x27, 418 => 0x58, 421 => 0x28, 422 => 0x1013, 432 => 0x10, 442 => 0x1e, 443 => 0x1b, 456 => 0x2005, 521 => 'Saturation', 523 => 'Saturation', 527 => 'Saturation' }, - 'saturationadj' => { 109 => 0x20901, 114 => 0x116, 243 => 0x94, 301 => 0x1, 305 => 0x2e, 493 => 0x8016 }, - 'saturationadjustmentaqua' => { 521 => 'SaturationAdjustmentAqua', 523 => 'SaturationAdjustmentAqua' }, - 'saturationadjustmentblue' => { 521 => 'SaturationAdjustmentBlue', 523 => 'SaturationAdjustmentBlue' }, - 'saturationadjustmentgreen' => { 521 => 'SaturationAdjustmentGreen', 523 => 'SaturationAdjustmentGreen' }, - 'saturationadjustmentmagenta' => { 521 => 'SaturationAdjustmentMagenta', 523 => 'SaturationAdjustmentMagenta' }, - 'saturationadjustmentorange' => { 521 => 'SaturationAdjustmentOrange', 523 => 'SaturationAdjustmentOrange' }, - 'saturationadjustmentpurple' => { 521 => 'SaturationAdjustmentPurple', 523 => 'SaturationAdjustmentPurple' }, - 'saturationadjustmentred' => { 521 => 'SaturationAdjustmentRed', 523 => 'SaturationAdjustmentRed' }, - 'saturationadjustmentyellow' => { 521 => 'SaturationAdjustmentYellow', 523 => 'SaturationAdjustmentYellow' }, + 'samsungmodelid' => { 431 => 0x3 }, + 'sanyoquality' => { 433 => 0x201 }, + 'sanyothumbnail' => { 433 => 0x100 }, + 'saturation' => { 10 => 0x6e, 12 => 0x76, 37 => 0xe, 55 => 0x1, 68 => 0x7, 118 => 0xd, 119 => [0x3013,0x1f], 125 => [0xa409,0xfe55], 133 => 0x1003, 163 => 'Saturation', 188 => 0x1f, 189 => 0x32, 190 => 0x28, 191 => 0x1a, 196 => 0x1, 243 => 0xaa, 260 => 0x35, 261 => 0x3b, 262 => 0x43, 354 => 0x40, 356 => 0x300d, 390 => 0x1f, 397 => 0xd, 418 => 0x27, 420 => 0x58, 423 => 0x28, 424 => 0x1013, 434 => 0x10, 444 => 0x1e, 445 => 0x1b, 458 => 0x2005, 523 => 'Saturation', 525 => 'Saturation', 529 => 'Saturation' }, + 'saturationadj' => { 109 => 0x20901, 114 => 0x116, 243 => 0x94, 301 => 0x1, 305 => 0x2e, 495 => 0x8016 }, + 'saturationadjustmentaqua' => { 523 => 'SaturationAdjustmentAqua', 525 => 'SaturationAdjustmentAqua' }, + 'saturationadjustmentblue' => { 523 => 'SaturationAdjustmentBlue', 525 => 'SaturationAdjustmentBlue' }, + 'saturationadjustmentgreen' => { 523 => 'SaturationAdjustmentGreen', 525 => 'SaturationAdjustmentGreen' }, + 'saturationadjustmentmagenta' => { 523 => 'SaturationAdjustmentMagenta', 525 => 'SaturationAdjustmentMagenta' }, + 'saturationadjustmentorange' => { 523 => 'SaturationAdjustmentOrange', 525 => 'SaturationAdjustmentOrange' }, + 'saturationadjustmentpurple' => { 523 => 'SaturationAdjustmentPurple', 525 => 'SaturationAdjustmentPurple' }, + 'saturationadjustmentred' => { 523 => 'SaturationAdjustmentRed', 525 => 'SaturationAdjustmentRed' }, + 'saturationadjustmentyellow' => { 523 => 'SaturationAdjustmentYellow', 525 => 'SaturationAdjustmentYellow' }, 'saturationauto' => { 76 => 0x98 }, 'saturationfaithful' => { 19 => 0xfe, 75 => 0x68, 76 => 0x68 }, 'saturationlandscape' => { 19 => 0xfc, 75 => 0x38, 76 => 0x38 }, 'saturationmonochrome' => { 75 => 0x80, 76 => 0x80 }, 'saturationneutral' => { 19 => 0xfd, 75 => 0x50, 76 => 0x50 }, 'saturationportrait' => { 19 => 0xfb, 75 => 0x20, 76 => 0x20 }, - 'saturationsetting' => { 338 => 0x1010, 444 => 0x11, 461 => 0x9 }, + 'saturationsetting' => { 338 => 0x1010, 446 => 0x11, 463 => 0x9 }, 'saturationstandard' => { 19 => 0xfa, 75 => 0x8, 76 => 0x8 }, 'saturationuserdef1' => { 19 => 0x100, 75 => 0x98, 76 => 0xb0 }, 'saturationuserdef2' => { 19 => 0x101, 75 => 0xb0, 76 => 0xc8 }, 'saturationuserdef3' => { 19 => 0x102, 75 => 0xc8, 76 => 0xe0 }, 'savefocusposition' => { 247 => 0x9b0 }, - 'saveid' => { 551 => 'SaveID' }, + 'saveid' => { 553 => 'SaveID' }, 'sbaanalysiscomplete' => { 145 => 0xc35 }, 'sbablack' => { 145 => 0xc25 }, 'sbagmoffset' => { 145 => 0xc4a }, @@ -6374,70 +6377,70 @@ my %tagLookup = ( 'sbalowgray' => { 145 => 0xc47 }, 'sbaneutralbal' => { 145 => 0xc32 }, 'sbawhite' => { 145 => 0xc27 }, - 'scaletype' => { 550 => 'scaleType' }, + 'scaletype' => { 552 => 'scaleType' }, 'scalingfactorheight' => { 344 => 'ScalingFactorHeight' }, 'scanimageenhancer' => { 268 => 0x60 }, 'scanningdirection' => { 140 => 0x64 }, - 'scene' => { 415 => 'scen', 534 => 'Scene', 550 => 'scene' }, + 'scene' => { 416 => 'scen', 536 => 'Scene', 552 => 'scene' }, 'scenearea' => { 333 => 0x211, 335 => 0x1031 }, 'sceneassist' => { 243 => 0x9c }, - 'scenecapturetype' => { 125 => 0xa406, 527 => 'SceneCaptureType' }, + 'scenecapturetype' => { 125 => 0xa406, 529 => 'SceneCaptureType' }, 'scenedetect' => { 333 => 0x210, 335 => 0x1030 }, 'scenedetectdata' => { 333 => 0x212, 335 => 0x1033 }, 'sceneflags' => { 1 => 0x25 }, - 'scenemode' => { 149 => 0xfa02, 193 => 0x100, 243 => 0x8f, 330 => 0x509, 335 => 0x403, 354 => 0x8001, 363 => 0xf, 456 => 0xb023 }, + 'scenemode' => { 149 => 0xfa02, 193 => 0x100, 243 => 0x8f, 330 => 0x509, 335 => 0x403, 354 => 0x8001, 363 => 0xf, 458 => 0xb023 }, 'scenemodeused' => { 151 => [0x6002,0xf002] }, 'scenerecognition' => { 133 => 0x1425 }, - 'scenereferred' => { 531 => 'scene_referred' }, - 'sceneselect' => { 431 => 0x21f }, - 'scenetype' => { 125 => 0xa301, 527 => 'SceneType' }, + 'scenereferred' => { 533 => 'scene_referred' }, + 'sceneselect' => { 433 => 0x21f }, + 'scenetype' => { 125 => 0xa301, 529 => 'SceneType' }, 'screentips' => { 309 => '12.7', 310 => '5.3', 318 => '13.1', 319 => '4.4', 322 => '5.4', 324 => '5.1' }, 'scriptversion' => { 145 => 0x1770 }, - 'sdrblend' => { 521 => 'SDRBlend', 523 => 'SDRBlend' }, - 'sdrbrightness' => { 521 => 'SDRBrightness', 523 => 'SDRBrightness' }, - 'sdrcontrast' => { 521 => 'SDRContrast', 523 => 'SDRContrast' }, - 'sdrhighlights' => { 521 => 'SDRHighlights', 523 => 'SDRHighlights' }, - 'sdrshadows' => { 521 => 'SDRShadows', 523 => 'SDRShadows' }, - 'sdrwhites' => { 521 => 'SDRWhites', 523 => 'SDRWhites' }, + 'sdrblend' => { 523 => 'SDRBlend', 525 => 'SDRBlend' }, + 'sdrbrightness' => { 523 => 'SDRBrightness', 525 => 'SDRBrightness' }, + 'sdrcontrast' => { 523 => 'SDRContrast', 525 => 'SDRContrast' }, + 'sdrhighlights' => { 523 => 'SDRHighlights', 525 => 'SDRHighlights' }, + 'sdrshadows' => { 523 => 'SDRShadows', 525 => 'SDRShadows' }, + 'sdrwhites' => { 523 => 'SDRWhites', 525 => 'SDRWhites' }, 'seal' => { 125 => 0xcea1 }, - 'season' => { 535 => 'Season', 539 => 'season' }, - 'seasonidentifier' => { 535 => [\'Season','SeasonIdentifier'] }, - 'seasonname' => { 535 => [\'Season','SeasonName'] }, - 'seasonnumber' => { 535 => [\'Season','SeasonNumber'] }, - 'secondaryftp' => { 509 => 'SecondaryFTP' }, + 'season' => { 537 => 'Season', 541 => 'season' }, + 'seasonidentifier' => { 537 => [\'Season','SeasonIdentifier'] }, + 'seasonname' => { 537 => [\'Season','SeasonName'] }, + 'seasonnumber' => { 537 => [\'Season','SeasonNumber'] }, + 'secondaryftp' => { 511 => 'SecondaryFTP' }, 'secondaryslotfunction' => { 247 => 0x35a, 249 => 0x240, 250 => 0x240, 251 => 0x22c, 252 => 0x240, 253 => 0x240, 271 => 0x13c, 282 => 0x1d0 }, - 'section' => { 540 => 'section' }, + 'section' => { 542 => 'section' }, 'securityclassification' => { 125 => 0x9212 }, 'selectableafpoint' => { 90 => 0x509 }, 'selectafareaselectionmode' => { 2 => 0xc }, 'selectafareaselectmode' => { 90 => 0x512 }, 'selfdata' => { 122 => 'SelfData' }, - 'selftimer' => { 37 => 0x2, 354 => 0x2e, 431 => 0x214, 465 => 0x1134, 466 => 0x1134, 467 => 0x1110, 468 => 0x118c, 469 => 0x1168, 470 => 0x1020, 471 => 0x218, 472 => 0x218, 473 => 0x210 }, + 'selftimer' => { 37 => 0x2, 354 => 0x2e, 433 => 0x214, 467 => 0x1134, 468 => 0x1134, 469 => 0x1110, 470 => 0x118c, 471 => 0x1168, 472 => 0x1020, 473 => 0x218, 474 => 0x218, 475 => 0x210 }, 'selftimer2' => { 82 => 0x1d }, 'selftimerinterval' => { 319 => '19.2' }, 'selftimermode' => { 125 => 0x882b }, 'selftimershotcount' => { 310 => '20.2', 312 => '20.3', 313 => '20.3', 314 => '18.2', 315 => '19.2', 316 => '19.2', 317 => '19.3', 319 => '19.3', 322 => '20.3', 323 => '20.3', 324 => '20.2', 325 => 0x31, 326 => 0x2d, 327 => 0x2d, 328 => 0x2d }, 'selftimershotinterval' => { 310 => '20.3', 312 => '20.2', 313 => '20.2', 317 => '19.2', 322 => '20.2', 323 => '20.2', 325 => 0x35, 326 => 0x31, 327 => 0x31, 328 => 0x31 }, 'selftimertime' => { 103 => 0x1806, 191 => 0x1f, 309 => '18.1', 310 => '20.1', 311 => '3.3', 312 => '20.1', 313 => '20.1', 314 => '18.1', 315 => '19.1', 316 => '19.1', 317 => '19.1', 318 => '7.2', 319 => '19.1', 320 => '3.3', 322 => '20.1', 323 => '20.1', 324 => '20.1', 325 => 0x2d, 326 => 0x2b, 327 => 0x2b, 328 => 0x2b }, - 'sellingagency' => { 540 => 'sellingAgency' }, + 'sellingagency' => { 542 => 'sellingAgency' }, 'semanticstyle' => { 1 => 0x40 }, 'semanticstylepreset' => { 1 => 0x42 }, 'semanticstylerenderingver' => { 1 => 0x41 }, 'seminfo' => { 125 => 0x8546 }, - 'sensingmethod' => { 125 => 0xa217, 527 => 'SensingMethod' }, + 'sensingmethod' => { 125 => 0xa217, 529 => 'SensingMethod' }, 'sensitivityadjust' => { 390 => 0x40 }, 'sensitivitysteps' => { 370 => ['14.3','17.4'], 372 => 0x1 }, - 'sensitivitytype' => { 125 => 0x8830, 528 => 'SensitivityType' }, + 'sensitivitytype' => { 125 => 0x8830, 530 => 'SensitivityType' }, 'sensor' => { 198 => 0x665e }, 'sensorarea' => { 335 => 0x400 }, - 'sensorareas' => { 429 => 0xa010 }, + 'sensorareas' => { 431 => 0xa010 }, 'sensorbitdepth' => { 356 => 0x312d }, 'sensorbluelevel' => { 79 => 0x5 }, 'sensorcalibration' => { 334 => 0x805 }, 'sensorcleaning' => { 96 => 0xd }, 'sensorfullheight' => { 144 => 0xf904 }, 'sensorfullwidth' => { 144 => 0xf903 }, - 'sensorheight' => { 144 => 0xf901, 149 => 0xfa21, 195 => 0x8, 356 => 0x312c, 399 => 0x109, 422 => 0x1602 }, + 'sensorheight' => { 144 => 0xf901, 149 => 0xfa21, 195 => 0x8, 356 => 0x312c, 399 => 0x109, 424 => 0x1602 }, 'sensorimageheight' => { 145 => 0x3ee }, 'sensorimagewidth' => { 145 => 0x3ed }, 'sensorleftborder' => { 145 => 0x3eb }, @@ -6447,61 +6450,61 @@ my %tagLookup = ( 'sensorserialnumber' => { 145 => 0x9ce }, 'sensorshield' => { 249 => 0x76b, 250 => 0x77b, 251 => 0x66d, 252 => 0x69d, 253 => 0x705 }, 'sensorsize' => { 163 => 'SensorSize', 390 => 0x35 }, - 'sensortemperature' => { 333 => 0x1500, 335 => 0x1007, 395 => 0xc, 399 => 0x210, 432 => [0x39,0x55] }, + 'sensortemperature' => { 333 => 0x1500, 335 => 0x1007, 395 => 0xc, 399 => 0x210, 434 => [0x39,0x55] }, 'sensortemperature2' => { 395 => 0xe, 399 => 0x211 }, 'sensortopborder' => { 145 => 0x3ec }, 'sensortopmargin' => { 399 => 0x10b }, 'sensortype' => { 354 => 0xca }, - 'sensorwidth' => { 144 => 0xf900, 149 => 0xfa20, 195 => 0xa, 356 => 0x312b, 399 => 0x108, 422 => 0x1601 }, - 'sequence' => { 416 => 0x7, 417 => 0x35, 418 => 0x36 }, - 'sequencefilenumber' => { 466 => 0x4, 467 => 0x4, 468 => 0x4, 469 => 0x4, 479 => 0xc, 480 => 0xc, 481 => 0x1a }, - 'sequenceimagenumber' => { 466 => 0x0, 467 => 0x0, 468 => 0x0, 469 => 0x0, 479 => 0x8, 480 => 0x8, 481 => 0x12, 488 => 0x24 }, - 'sequencelength' => { 479 => 0x22, 480 => 0x1e, 481 => [0x16,0x1e] }, - 'sequencename' => { 539 => 'sequenceName' }, - 'sequencenumber' => { 82 => 0x9, 119 => 0x301c, 133 => 0x1101, 147 => 0x1d, 289 => 0x51c, 354 => 0x2b, 444 => [0x10c,0x30c], 456 => 0xb04a, 539 => 'sequenceNumber' }, - 'sequenceshotinterval' => { 431 => 0x224 }, - 'sequencetotalnumber' => { 539 => 'sequenceTotalNumber' }, - 'sequentialshot' => { 431 => 0x20e }, - 'serialnumber' => { 69 => 0xc, 103 => 0x180b, 125 => [0xa431,0xfde9], 144 => 0xfa04, 146 => 0xfa00, 148 => 0xc354, 149 => 0xfa19, 160 => 0x0, 163 => 'SerialNumber', 198 => 0x5501, 243 => [0xa0,0x1d], 331 => 0x101, 335 => [0x404,0x101a], 349 => 0x303, 351 => 0x305, 356 => 0x3103, 390 => 0x229, 399 => 0x102, 400 => 0x407, 415 => ['SNum','slno'], 416 => 0x15, 417 => 0x4b, 418 => 0x7e, 422 => 0x5, 429 => 0xa002, 432 => 0x2, 456 => 0x2031, 518 => 'SerialNumber', 528 => 'BodySerialNumber' }, + 'sensorwidth' => { 144 => 0xf900, 149 => 0xfa20, 195 => 0xa, 356 => 0x312b, 399 => 0x108, 424 => 0x1601 }, + 'sequence' => { 418 => 0x7, 419 => 0x35, 420 => 0x36 }, + 'sequencefilenumber' => { 468 => 0x4, 469 => 0x4, 470 => 0x4, 471 => 0x4, 481 => 0xc, 482 => 0xc, 483 => 0x1a }, + 'sequenceimagenumber' => { 468 => 0x0, 469 => 0x0, 470 => 0x0, 471 => 0x0, 481 => 0x8, 482 => 0x8, 483 => 0x12, 490 => 0x24 }, + 'sequencelength' => { 481 => 0x22, 482 => 0x1e, 483 => [0x16,0x1e] }, + 'sequencename' => { 541 => 'sequenceName' }, + 'sequencenumber' => { 82 => 0x9, 119 => 0x301c, 133 => 0x1101, 147 => 0x1d, 289 => 0x51c, 354 => 0x2b, 446 => [0x10c,0x30c], 458 => 0xb04a, 541 => 'sequenceNumber' }, + 'sequenceshotinterval' => { 433 => 0x224 }, + 'sequencetotalnumber' => { 541 => 'sequenceTotalNumber' }, + 'sequentialshot' => { 433 => 0x20e }, + 'serialnumber' => { 69 => 0xc, 103 => 0x180b, 125 => [0xa431,0xfde9], 144 => 0xfa04, 146 => 0xfa00, 148 => 0xc354, 149 => 0xfa19, 160 => 0x0, 163 => 'SerialNumber', 198 => 0x5501, 243 => [0xa0,0x1d], 331 => 0x101, 335 => [0x404,0x101a], 349 => 0x303, 351 => 0x305, 356 => 0x3103, 390 => 0x229, 399 => 0x102, 400 => 0x407, 416 => ['SNum','slno'], 418 => 0x15, 419 => 0x4b, 420 => 0x7e, 424 => 0x5, 431 => 0xa002, 434 => 0x2, 458 => 0x2031, 520 => 'SerialNumber', 530 => 'BodySerialNumber' }, 'serialnumberformat' => { 69 => 0x15, 103 => 0x183b }, - 'serialnumberhash' => { 415 => 'CAME' }, - 'series' => { 535 => 'Series' }, - 'seriesdatetime' => { 496 => 'SeriesDateTime' }, - 'seriesdescription' => { 496 => 'SeriesDescription' }, - 'seriesidentifier' => { 535 => [\'Series','SeriesIdentifier'] }, - 'seriesmodality' => { 496 => 'SeriesModality' }, - 'seriesname' => { 535 => [\'Series','SeriesName'] }, - 'seriesnumber' => { 496 => 'SeriesNumber', 540 => 'seriesNumber' }, - 'seriestitle' => { 540 => 'seriesTitle' }, + 'serialnumberhash' => { 416 => 'CAME' }, + 'series' => { 537 => 'Series' }, + 'seriesdatetime' => { 498 => 'SeriesDateTime' }, + 'seriesdescription' => { 498 => 'SeriesDescription' }, + 'seriesidentifier' => { 537 => [\'Series','SeriesIdentifier'] }, + 'seriesmodality' => { 498 => 'SeriesModality' }, + 'seriesname' => { 537 => [\'Series','SeriesName'] }, + 'seriesnumber' => { 498 => 'SeriesNumber', 542 => 'seriesNumber' }, + 'seriestitle' => { 542 => 'seriesTitle' }, 'serviceidentifier' => { 139 => 0x1e }, - 'servingsize' => { 542 => 'servingSize' }, + 'servingsize' => { 544 => 'servingSize' }, 'setbuttoncrosskeysfunc' => { 93 => 0x0, 94 => 0x0 }, 'setbuttonwhenshooting' => { 88 => 0x1, 90 => 0x704, 96 => 0xc }, 'setclockfromlocationdata' => { 251 => 0x61d, 252 => 0x64d, 253 => 0x6b5 }, 'setfunctionwhenshooting' => { 91 => 0x0, 92 => 0x1, 95 => 0x1 }, - 'setting' => { 539 => 'setting' }, + 'setting' => { 541 => 'setting' }, 'shadingcompensation' => { 330 => 0x50c, 354 => 0x8a }, 'shadingcompensation2' => { 334 => 0x1012 }, - 'shadow' => { 432 => 0xe }, + 'shadow' => { 434 => 0xe }, 'shadowadj' => { 109 => 0x2030b }, 'shadowcorrection' => { 390 => 0x79 }, 'shadowprotection' => { 301 => 0x0 }, - 'shadows' => { 125 => 0xfe52, 456 => 0x2032, 514 => 'Shadows', 521 => 'Shadows', 523 => 'Shadows' }, - 'shadows2012' => { 521 => 'Shadows2012', 523 => 'Shadows2012' }, - 'shadowsadj' => { 493 => 0x901a }, + 'shadows' => { 125 => 0xfe52, 458 => 0x2032, 516 => 'Shadows', 523 => 'Shadows', 525 => 'Shadows' }, + 'shadows2012' => { 523 => 'Shadows2012', 525 => 'Shadows2012' }, + 'shadowsadj' => { 495 => 0x901a }, 'shadowscale' => { 125 => 0xc633 }, - 'shadowtint' => { 521 => 'ShadowTint', 523 => 'ShadowTint' }, + 'shadowtint' => { 523 => 'ShadowTint', 525 => 'ShadowTint' }, 'shadowtone' => { 133 => 0x1040 }, 'shakereduction' => { 392 => 0x1, 393 => 0x1 }, 'shareduserrating' => { 186 => 'WM/SharedUserRating' }, - 'sharpendetail' => { 521 => 'SharpenDetail', 523 => 'SharpenDetail' }, - 'sharpenedgemasking' => { 521 => 'SharpenEdgeMasking', 523 => 'SharpenEdgeMasking' }, + 'sharpendetail' => { 523 => 'SharpenDetail', 525 => 'SharpenDetail' }, + 'sharpenedgemasking' => { 523 => 'SharpenEdgeMasking', 525 => 'SharpenEdgeMasking' }, 'sharpening' => { 356 => 0x300b }, 'sharpeningadj' => { 305 => 0x2b }, 'sharpeningkernel' => { 145 => 0x92f }, - 'sharpenradius' => { 521 => 'SharpenRadius', 523 => 'SharpenRadius' }, - 'sharpness' => { 8 => [0x42,0x48], 10 => 0x72, 12 => 0x74, 37 => 0xf, 68 => 0x6, 79 => 0x2, 118 => 0xb, 119 => [0x3011,0x21], 125 => [0xa40a,0xfe56], 133 => 0x1001, 147 => 0x6b, 156 => 0x37, 163 => 'Sharpness', 188 => 0x21, 189 => 0x30, 190 => 0x26, 191 => 0x18, 196 => 0x3, 243 => 0x6, 260 => 0x32, 261 => 0x33, 262 => 0x39, 335 => 0x100f, 354 => 0x41, 390 => 0x21, 397 => 0xb, 416 => 0x26, 418 => 0x56, 421 => 0x22, 422 => [0x1003,0x1014], 432 => 0x11, 442 => 0x1c, 443 => 0x19, 456 => 0x2006, 488 => 0x52, 521 => 'Sharpness', 523 => 'Sharpness', 527 => 'Sharpness' }, - 'sharpnessadj' => { 109 => 0x20310, 114 => 0x25a, 493 => 0x801a }, + 'sharpenradius' => { 523 => 'SharpenRadius', 525 => 'SharpenRadius' }, + 'sharpness' => { 8 => [0x42,0x48], 10 => 0x72, 12 => 0x74, 37 => 0xf, 68 => 0x6, 79 => 0x2, 118 => 0xb, 119 => [0x3011,0x21], 125 => [0xa40a,0xfe56], 133 => 0x1001, 147 => 0x6b, 156 => 0x37, 163 => 'Sharpness', 188 => 0x21, 189 => 0x30, 190 => 0x26, 191 => 0x18, 196 => 0x3, 243 => 0x6, 260 => 0x32, 261 => 0x33, 262 => 0x39, 335 => 0x100f, 354 => 0x41, 390 => 0x21, 397 => 0xb, 418 => 0x26, 420 => 0x56, 423 => 0x22, 424 => [0x1003,0x1014], 434 => 0x11, 444 => 0x1c, 445 => 0x19, 458 => 0x2006, 490 => 0x52, 523 => 'Sharpness', 525 => 'Sharpness', 529 => 'Sharpness' }, + 'sharpnessadj' => { 109 => 0x20310, 114 => 0x25a, 495 => 0x801a }, 'sharpnessadjon' => { 109 => '0x20310.0' }, 'sharpnessauto' => { 76 => 0x94 }, 'sharpnessfactor' => { 335 => 0x102a }, @@ -6510,51 +6513,51 @@ my %tagLookup = ( 'sharpnesslandscape' => { 19 => 0xf3, 75 => 0x34, 76 => 0x34 }, 'sharpnessmonochrome' => { 19 => 0xf6, 75 => 0x7c, 76 => 0x7c }, 'sharpnessneutral' => { 19 => 0xf4, 75 => 0x4c, 76 => 0x4c }, - 'sharpnessovershoot' => { 493 => 0x801b }, + 'sharpnessovershoot' => { 495 => 0x801b }, 'sharpnessportrait' => { 19 => 0xf2, 75 => 0x1c, 76 => 0x1c }, - 'sharpnessrange' => { 456 => 0x2035 }, - 'sharpnesssetting' => { 330 => 0x506, 338 => 0x1013, 444 => 0x12, 461 => 0xa }, + 'sharpnessrange' => { 458 => 0x2035 }, + 'sharpnesssetting' => { 330 => 0x506, 338 => 0x1013, 446 => 0x12, 463 => 0xa }, 'sharpnessstandard' => { 19 => 0xf1, 75 => 0x4, 76 => 0x4 }, 'sharpnessstrength' => { 109 => 0x20311 }, - 'sharpnessthreshold' => { 493 => 0x801d }, - 'sharpnessundershoot' => { 493 => 0x801c }, + 'sharpnessthreshold' => { 495 => 0x801d }, + 'sharpnessundershoot' => { 495 => 0x801c }, 'sharpnessuserdef1' => { 19 => 0xf7, 75 => 0x94, 76 => 0xac }, 'sharpnessuserdef2' => { 19 => 0xf8, 75 => 0xac, 76 => 0xc4 }, 'sharpnessuserdef3' => { 19 => 0xf9, 75 => 0xc4, 76 => 0xdc }, 'shiftcols' => { 145 => 0xc70 }, - 'shootid' => { 539 => 'shootID' }, + 'shootid' => { 541 => 'shootID' }, 'shootingdistance' => { 109 => 0x20701 }, 'shootinginfodisplay' => { 309 => '13.2', 310 => '5.1', 318 => '10.2', 319 => '4.1', 322 => '5.1', 324 => '5.3' }, 'shootinginfomonitorofftime' => { 309 => '26.2', 310 => '22.2', 312 => '22.2', 313 => '22.2', 317 => '21.2', 318 => '9.1', 319 => '21.2', 322 => '22.2', 323 => '22.2', 324 => '22.2', 325 => 0x3d, 326 => 0x37, 327 => 0x37, 328 => 0x37 }, 'shootingmode' => { 163 => 'ShootingMode', 243 => 0x89, 354 => 0x1f }, 'shootingmodesetting' => { 311 => '5.1' }, - 'shortdescription' => { 525 => 'shortdescription' }, + 'shortdescription' => { 527 => 'shortdescription' }, 'shortdocumentid' => { 138 => 0xba }, - 'shortname' => { 521 => 'ShortName', 523 => 'ShortName' }, + 'shortname' => { 523 => 'ShortName', 525 => 'ShortName' }, 'shortownername' => { 19 => 0xac }, 'shortreleasetimelag' => { 90 => 0x80d }, - 'shorttitle' => { 407 => '@sti' }, - 'shotdate' => { 550 => 'shotDate' }, - 'shotday' => { 550 => 'shotDay' }, - 'shotlocation' => { 550 => 'shotLocation' }, - 'shotlogdata' => { 501 => 'shot_log_data' }, - 'shotname' => { 415 => 'shot', 550 => 'shotName' }, - 'shotnumber' => { 550 => 'shotNumber' }, - 'shotnumbersincepowerup' => { 460 => 0x44e, 479 => 0x1a, 480 => 0x16, 481 => 0xa }, - 'shotnumbersincepowerup2' => { 444 => 0x200 }, - 'shotsize' => { 550 => 'shotSize' }, + 'shorttitle' => { 408 => '@sti' }, + 'shotdate' => { 552 => 'shotDate' }, + 'shotday' => { 552 => 'shotDay' }, + 'shotlocation' => { 552 => 'shotLocation' }, + 'shotlogdata' => { 503 => 'shot_log_data' }, + 'shotname' => { 416 => 'shot', 552 => 'shotName' }, + 'shotnumber' => { 552 => 'shotNumber' }, + 'shotnumbersincepowerup' => { 462 => 0x44e, 481 => 0x1a, 482 => 0x16, 483 => 0xa }, + 'shotnumbersincepowerup2' => { 446 => 0x200 }, + 'shotsize' => { 552 => 'shotSize' }, 'shotsperinterval' => { 232 => 0x180, 247 => 0x1f0, 248 => 0xb4, 249 => 0xcc, 250 => 0xcc, 251 => 0xc0, 252 => 0xd0, 253 => 0xd0 }, - 'showmovement' => { 407 => 'shwm' }, - 'shownevent' => { 535 => 'EventExt' }, - 'showneventidentifier' => { 535 => [\'EventExt','EventExtIdentifier'] }, - 'showneventname' => { 535 => [\'EventExt','EventExtName'] }, - 'shutter' => { 475 => 0x20, 476 => 0x26, 477 => 0x26 }, + 'showmovement' => { 408 => 'shwm' }, + 'shownevent' => { 537 => 'EventExt' }, + 'showneventidentifier' => { 537 => [\'EventExt','EventExtIdentifier'] }, + 'showneventname' => { 537 => [\'EventExt','EventExtName'] }, + 'shutter' => { 477 => 0x20, 478 => 0x26, 479 => 0x26 }, 'shutter-aelock' => { 88 => 0x4, 90 => 0x701, 91 => 0x3, 92 => 0x4, 93 => 0x3, 94 => 0x3, 95 => 0x4, 96 => 0x2 }, 'shutteraelbutton' => { 89 => 0x4 }, 'shutterbuttonafonbutton' => { 90 => 0x701 }, - 'shuttercount' => { 11 => 0x176, 30 => [0xa95,0x293], 33 => 0xaf1, 34 => 0xd29, 61 => 0x1, 243 => 0xa7, 273 => [0x6a,0x157,0x24d], 274 => 0x286, 275 => 0x279, 276 => 0x284, 277 => 0x242, 278 => 0x280, 279 => 0x276, 280 => [0x27d,0x27f], 281 => 0x246, 283 => 0x2d6, 284 => 0x321, 285 => 0xbd8, 286 => 0x287, 287 => 0x320, 288 => 0x24a, 289 => 0x5fb, 290 => 0x2d5, 390 => 0x5d, 453 => 0x846, 459 => [0x125,0x14a], 475 => 0x32, 476 => 0x3a, 477 => 0x3a, 478 => 0xa }, - 'shuttercount2' => { 475 => 0x4c, 476 => [0x50,0x52,0x58], 477 => 0x50 }, - 'shuttercount3' => { 475 => [0x1a0,0x1aa,0x1bd], 476 => [0x19f,0x1cb,0x1cd] }, + 'shuttercount' => { 11 => 0x176, 30 => [0xa95,0x293], 33 => 0xaf1, 34 => 0xd29, 61 => 0x1, 243 => 0xa7, 273 => [0x6a,0x157,0x24d], 274 => 0x286, 275 => 0x279, 276 => 0x284, 277 => 0x242, 278 => 0x280, 279 => 0x276, 280 => [0x27d,0x27f], 281 => 0x246, 283 => 0x2d6, 284 => 0x321, 285 => 0xbd8, 286 => 0x287, 287 => 0x320, 288 => 0x24a, 289 => 0x5fb, 290 => 0x2d5, 390 => 0x5d, 455 => 0x846, 461 => [0x125,0x14a], 477 => 0x32, 478 => 0x3a, 479 => 0x3a, 480 => 0xa }, + 'shuttercount2' => { 477 => 0x4c, 478 => [0x50,0x52,0x58], 479 => 0x50 }, + 'shuttercount3' => { 477 => [0x1a0,0x1aa,0x1bd], 478 => [0x19f,0x1cb,0x1cd] }, 'shuttercurtainsync' => { 88 => 0xf, 89 => 0xf, 90 => 0x305, 91 => 0xe, 92 => 0xf, 93 => 0x8, 94 => 0x8, 95 => 0xf, 96 => 0x8 }, 'shuttermode' => { 61 => 0x17, 147 => 0x1b, 243 => 0x34 }, 'shutterreleasebuttonae-l' => { 309 => '17.7', 310 => '18.4', 312 => '78.4', 313 => '78.4', 314 => '16.1', 315 => '17.1', 316 => '17.1', 317 => '17.1', 318 => '7.1', 319 => '17.5', 322 => '18.4', 323 => '78.4', 324 => '18.2', 325 => 0x2b, 326 => 0x29, 327 => 0x29, 328 => 0x29 }, @@ -6564,10 +6567,10 @@ my %tagLookup = ( 'shutterreleasewithoutlens' => { 90 => 0x711 }, 'shutterspeedlock' => { 310 => '38.1', 312 => '38.1', 313 => '38.1', 322 => '38.1', 323 => '38.1', 325 => 0xbb, 326 => 0xb7, 327 => 0xb7, 328 => 0xb7 }, 'shutterspeedrange' => { 90 => 0x10c }, - 'shutterspeedsetting' => { 191 => 0x6, 442 => 0x2f, 443 => 0x28, 444 => 0x0 }, - 'shutterspeedvalue' => { 99 => 0x1, 125 => 0x9201, 335 => 0x1000, 399 => 0x400, 527 => 'ShutterSpeedValue' }, - 'shuttertype' => { 133 => 0x1050, 354 => 0x9f, 390 => 0x87, 481 => [0x133,0x139,0x13f] }, - 'sidecarforextension' => { 538 => 'SidecarForExtension' }, + 'shutterspeedsetting' => { 191 => 0x6, 444 => 0x2f, 445 => 0x28, 446 => 0x0 }, + 'shutterspeedvalue' => { 99 => 0x1, 125 => 0x9201, 335 => 0x1000, 399 => 0x400, 529 => 'ShutterSpeedValue' }, + 'shuttertype' => { 133 => 0x1050, 354 => 0x9f, 390 => 0x87, 483 => [0x133,0x139,0x13f] }, + 'sidecarforextension' => { 540 => 'SidecarForExtension' }, 'sigmaimpulseparameters' => { 145 => 0xe0d }, 'sigmascalingfactorcamera' => { 145 => 0xe0c }, 'sigmascalingfactorlowres' => { 145 => 0xe0b }, @@ -6577,100 +6580,100 @@ my %tagLookup = ( 'silentphotography' => { 243 => 0xbf, 247 => 0x9b7 }, 'similarityindex' => { 138 => 0xe4 }, 'singleframebracketing' => { 191 => 0x21 }, - 'skilllevel' => { 542 => 'skillLevel' }, + 'skilllevel' => { 544 => 'skillLevel' }, 'skintonecorrection' => { 390 => 0x95 }, 'skiplinetime' => { 145 => 0x184e }, 'slaveflashmeteringsegments' => { 390 => 0x20b }, - 'slideshowname' => { 539 => 'slideshowName' }, - 'slideshownumber' => { 539 => 'slideshowNumber' }, - 'slideshowtotalnumber' => { 539 => 'slideshowTotalNumber' }, + 'slideshowname' => { 541 => 'slideshowName' }, + 'slideshownumber' => { 541 => 'slideshowNumber' }, + 'slideshowtotalnumber' => { 541 => 'slideshowTotalNumber' }, 'slot2jpgsize' => { 247 => 0x364, 249 => 0x24a, 250 => 0x24a, 253 => 0x24a }, 'slowshutter' => { 82 => 0x8 }, 'slowsync' => { 133 => 0x1030 }, - 'smartalbumcolor' => { 429 => 0x20 }, - 'smartrange' => { 429 => 0xa012 }, - 'smileshutter' => { 444 => 0x31 }, - 'smileshuttermode' => { 444 => 0x27 }, - 'smoothness' => { 125 => 0xfe57, 521 => 'Smoothness', 523 => 'Smoothness' }, - 'snapshot' => { 535 => 'SnapshotLink' }, - 'snapshotformat' => { 535 => [\'SnapshotLink','SnapshotLinkFormat'] }, - 'snapshotheightpixels' => { 535 => [\'SnapshotLink','SnapshotLinkHeightPixels'] }, - 'snapshotimagerole' => { 535 => [\'SnapshotLink','SnapshotLinkImageRole'] }, - 'snapshotlink' => { 535 => [\'SnapshotLink','SnapshotLinkLink'] }, - 'snapshotlinkqualifier' => { 535 => [\'SnapshotLink','SnapshotLinkLinkQualifier'] }, - 'snapshots' => { 515 => 'Snapshots' }, - 'snapshotusedvideoframe' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrame'] }, - 'snapshotusedvideoframetimeformat' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeFormat'] }, - 'snapshotusedvideoframetimevalue' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeValue'] }, - 'snapshotusedvideoframevalue' => { 535 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameValue'] }, - 'snapshotwidthpixels' => { 535 => [\'SnapshotLink','SnapshotLinkWidthPixels'] }, - 'softskineffect' => { 456 => 0x200f }, - 'software' => { 125 => 0x131, 164 => 'Software', 343 => 'Software', 399 => 0x203, 409 => 'software', 432 => 0x18, 504 => 'Software', 546 => 'Software' }, - 'softwareversion' => { 415 => ['@swr',"\xa9swr"], 431 => 0x207 }, - 'soloist' => { 407 => "\xa9sol" }, - 'songwriter' => { 415 => "\xa9swf" }, - 'songwriterkeywords' => { 415 => "\xa9swk" }, + 'smartalbumcolor' => { 431 => 0x20 }, + 'smartrange' => { 431 => 0xa012 }, + 'smileshutter' => { 446 => 0x31 }, + 'smileshuttermode' => { 446 => 0x27 }, + 'smoothness' => { 125 => 0xfe57, 523 => 'Smoothness', 525 => 'Smoothness' }, + 'snapshot' => { 537 => 'SnapshotLink' }, + 'snapshotformat' => { 537 => [\'SnapshotLink','SnapshotLinkFormat'] }, + 'snapshotheightpixels' => { 537 => [\'SnapshotLink','SnapshotLinkHeightPixels'] }, + 'snapshotimagerole' => { 537 => [\'SnapshotLink','SnapshotLinkImageRole'] }, + 'snapshotlink' => { 537 => [\'SnapshotLink','SnapshotLinkLink'] }, + 'snapshotlinkqualifier' => { 537 => [\'SnapshotLink','SnapshotLinkLinkQualifier'] }, + 'snapshots' => { 517 => 'Snapshots' }, + 'snapshotusedvideoframe' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrame'] }, + 'snapshotusedvideoframetimeformat' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeFormat'] }, + 'snapshotusedvideoframetimevalue' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameTimeValue'] }, + 'snapshotusedvideoframevalue' => { 537 => [\'SnapshotLink','SnapshotLinkUsedVideoFrameValue'] }, + 'snapshotwidthpixels' => { 537 => [\'SnapshotLink','SnapshotLinkWidthPixels'] }, + 'softskineffect' => { 458 => 0x200f }, + 'software' => { 125 => 0x131, 164 => 'Software', 343 => 'Software', 399 => 0x203, 410 => 'software', 434 => 0x18, 506 => 'Software', 548 => 'Software' }, + 'softwareversion' => { 416 => ['@swr',"\xa9swr"], 433 => 0x207 }, + 'soloist' => { 408 => "\xa9sol" }, + 'songwriter' => { 416 => "\xa9swf" }, + 'songwriterkeywords' => { 416 => "\xa9swk" }, 'sonycropsize' => { 125 => 0x74c8 }, 'sonycroptopleft' => { 125 => 0x74c7 }, - 'sonydatetime' => { 464 => 0x6, 466 => 0x1b6, 467 => 0x210, 468 => 0x1fe, 469 => 0x22c }, - 'sonydatetime2' => { 475 => 0x51 }, - 'sonyexposuretime' => { 475 => 0x3a, 476 => 0x46, 477 => [0x66,0x46], 478 => 0x1a }, - 'sonyexposuretime2' => { 488 => 0xe }, - 'sonyfnumber' => { 475 => 0x3c, 476 => 0x48, 477 => [0x68,0x48], 478 => 0x1c, 488 => 0x14 }, - 'sonyimageheight' => { 464 => 0x1a, 479 => 0x44, 480 => 0x3f }, - 'sonyimageheightmax' => { 488 => 0x40 }, - 'sonyimagesize' => { 191 => 0x3b, 442 => 0x54, 443 => 0x54, 444 => 0x9 }, - 'sonyimagewidth' => { 464 => 0x1c }, - 'sonyimagewidthmax' => { 488 => 0x3e }, - 'sonyiso' => { 466 => 0x1218, 467 => 0x11f4, 468 => 0x1270, 469 => [0x1254,0x1258,0x1280], 470 => 0x113c, 471 => 0x344, 472 => 0x346, 473 => 0x320, 488 => 0x4 }, - 'sonymaxaperture' => { 475 => 0x0, 476 => 0x0 }, - 'sonymaxaperturevalue' => { 488 => 0x16 }, - 'sonyminaperture' => { 475 => 0x1, 476 => 0x1 }, - 'sonymodelid' => { 456 => 0xb001 }, + 'sonydatetime' => { 466 => 0x6, 468 => 0x1b6, 469 => 0x210, 470 => 0x1fe, 471 => 0x22c }, + 'sonydatetime2' => { 477 => 0x51 }, + 'sonyexposuretime' => { 477 => 0x3a, 478 => 0x46, 479 => [0x66,0x46], 480 => 0x1a }, + 'sonyexposuretime2' => { 490 => 0xe }, + 'sonyfnumber' => { 477 => 0x3c, 478 => 0x48, 479 => [0x68,0x48], 480 => 0x1c, 490 => 0x14 }, + 'sonyimageheight' => { 466 => 0x1a, 481 => 0x44, 482 => 0x3f }, + 'sonyimageheightmax' => { 490 => 0x40 }, + 'sonyimagesize' => { 191 => 0x3b, 444 => 0x54, 445 => 0x54, 446 => 0x9 }, + 'sonyimagewidth' => { 466 => 0x1c }, + 'sonyimagewidthmax' => { 490 => 0x3e }, + 'sonyiso' => { 468 => 0x1218, 469 => 0x11f4, 470 => 0x1270, 471 => [0x1254,0x1258,0x1280], 472 => 0x113c, 473 => 0x344, 474 => 0x346, 475 => 0x320, 490 => 0x4 }, + 'sonymaxaperture' => { 477 => 0x0, 478 => 0x0 }, + 'sonymaxaperturevalue' => { 490 => 0x16 }, + 'sonyminaperture' => { 477 => 0x1, 478 => 0x1 }, + 'sonymodelid' => { 458 => 0xb001 }, 'sonyquality' => { 191 => 0x3c }, 'sonyrawimagesize' => { 125 => 0x7038 }, - 'sonytimeminsec' => { 476 => 0x61 }, - 'sortalbum' => { 407 => 'soal' }, - 'sortalbumartist' => { 407 => 'soaa' }, - 'sortartist' => { 407 => 'soar' }, - 'sortcomposer' => { 407 => 'soco' }, - 'sortname' => { 407 => 'sonm', 521 => 'SortName', 523 => 'SortName' }, - 'sortshow' => { 407 => 'sosn' }, - 'soundengineer' => { 407 => "\xa9sne" }, - 'source' => { 138 => 0x73, 343 => 'Source', 524 => 'source', 525 => 'source', 538 => 'Source' }, - 'sourcecount' => { 508 => 'SourceCount' }, - 'sourcecredits' => { 415 => "\xa9src" }, + 'sonytimeminsec' => { 478 => 0x61 }, + 'sortalbum' => { 408 => 'soal' }, + 'sortalbumartist' => { 408 => 'soaa' }, + 'sortartist' => { 408 => 'soar' }, + 'sortcomposer' => { 408 => 'soco' }, + 'sortname' => { 408 => 'sonm', 523 => 'SortName', 525 => 'SortName' }, + 'sortshow' => { 408 => 'sosn' }, + 'soundengineer' => { 408 => "\xa9sne" }, + 'source' => { 138 => 0x73, 343 => 'Source', 526 => 'source', 527 => 'source', 540 => 'Source' }, + 'sourcecount' => { 510 => 'SourceCount' }, + 'sourcecredits' => { 416 => "\xa9src" }, 'sourcedirectoryindex' => { 376 => 0x0 }, 'sourcefileindex' => { 376 => 0x2 }, - 'sourcephotoscount' => { 507 => 'SourcePhotosCount' }, + 'sourcephotoscount' => { 509 => 'SourcePhotosCount' }, 'sourceprofileprefix' => { 145 => 0x1390 }, - 'spatialfrequencyresponse' => { 527 => 'SpatialFrequencyResponse' }, - 'spatialfrequencyresponsecolumns' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseColumns'] }, - 'spatialfrequencyresponsenames' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseNames'] }, - 'spatialfrequencyresponserows' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseRows'] }, - 'spatialfrequencyresponsevalues' => { 527 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseValues'] }, - 'speakerplacement' => { 550 => 'speakerPlacement' }, + 'spatialfrequencyresponse' => { 529 => 'SpatialFrequencyResponse' }, + 'spatialfrequencyresponsecolumns' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseColumns'] }, + 'spatialfrequencyresponsenames' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseNames'] }, + 'spatialfrequencyresponserows' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseRows'] }, + 'spatialfrequencyresponsevalues' => { 529 => [\'SpatialFrequencyResponse','SpatialFrequencyResponseValues'] }, + 'speakerplacement' => { 552 => 'speakerPlacement' }, 'specialeffectlevel' => { 119 => 0x3030 }, 'specialeffectmode' => { 119 => 0x2076 }, 'specialeffectsetting' => { 119 => 0x3031 }, 'specialinstructions' => { 138 => 0x28 }, - 'specialmode' => { 335 => 0x200, 431 => 0x200 }, - 'specialoccasion' => { 542 => 'specialOccasion' }, - 'specialtypeid' => { 501 => 'SpecialTypeID' }, - 'spectralsensitivity' => { 125 => 0x8824, 527 => 'SpectralSensitivity' }, + 'specialmode' => { 335 => 0x200, 433 => 0x200 }, + 'specialoccasion' => { 544 => 'specialOccasion' }, + 'specialtypeid' => { 503 => 'SpecialTypeID' }, + 'spectralsensitivity' => { 125 => 0x8824, 529 => 'SpectralSensitivity' }, 'specularwhitelevel' => { 44 => 0x32b, 45 => 0x281, 46 => 0x295, 49 => [0x2b9,0x2d0,0x2d4], 50 => [0x56a,0x296], 51 => 0x1e4, 52 => [0x1fd,0x2dd], 53 => [0x231,0x30f], 54 => 0x31d }, - 'speedx' => { 121 => 0x3, 415 => "\xa9xsp" }, - 'speedy' => { 121 => 0x4, 415 => "\xa9ysp" }, - 'speedz' => { 121 => 0x5, 415 => "\xa9zsp" }, - 'spherical' => { 508 => 'Spherical' }, + 'speedx' => { 121 => 0x3, 416 => "\xa9xsp" }, + 'speedy' => { 121 => 0x4, 416 => "\xa9ysp" }, + 'speedz' => { 121 => 0x5, 416 => "\xa9zsp" }, + 'spherical' => { 510 => 'Spherical' }, 'sphericalvideoxml' => { 126 => 'SphericalVideoXML' }, 'splitcolumn' => { 399 => 0x222 }, - 'splittoningbalance' => { 521 => 'SplitToningBalance', 523 => 'SplitToningBalance' }, - 'splittoninghighlighthue' => { 521 => 'SplitToningHighlightHue', 523 => 'SplitToningHighlightHue' }, - 'splittoninghighlightsaturation' => { 521 => 'SplitToningHighlightSaturation', 523 => 'SplitToningHighlightSaturation' }, - 'splittoningshadowhue' => { 521 => 'SplitToningShadowHue', 523 => 'SplitToningShadowHue' }, - 'splittoningshadowsaturation' => { 521 => 'SplitToningShadowSaturation', 523 => 'SplitToningShadowSaturation' }, - 'sport' => { 540 => 'sport' }, + 'splittoningbalance' => { 523 => 'SplitToningBalance', 525 => 'SplitToningBalance' }, + 'splittoninghighlighthue' => { 523 => 'SplitToningHighlightHue', 525 => 'SplitToningHighlightHue' }, + 'splittoninghighlightsaturation' => { 523 => 'SplitToningHighlightSaturation', 525 => 'SplitToningHighlightSaturation' }, + 'splittoningshadowhue' => { 523 => 'SplitToningShadowHue', 525 => 'SplitToningShadowHue' }, + 'splittoningshadowsaturation' => { 523 => 'SplitToningShadowSaturation', 525 => 'SplitToningShadowSaturation' }, + 'sport' => { 542 => 'sport' }, 'spotfocuspointx' => { 188 => 0x2d }, 'spotfocuspointy' => { 188 => 0x2e }, 'spotmeteringmode' => { 37 => 0x27 }, @@ -6688,7 +6691,7 @@ my %tagLookup = ( 'standardmatrixfluorescent' => { 145 => 0x7d2 }, 'standardmatrixtungsten' => { 145 => 0x7d1 }, 'standardoutputhighlightpoint' => { 115 => 0x14 }, - 'standardoutputsensitivity' => { 125 => 0x8831, 528 => 'StandardOutputSensitivity' }, + 'standardoutputsensitivity' => { 125 => 0x8831, 530 => 'StandardOutputSensitivity' }, 'standardoutputshadowpoint' => { 115 => 0x15 }, 'standardrawcolortone' => { 115 => 0xd }, 'standardrawcontrast' => { 115 => 0xf }, @@ -6709,34 +6712,34 @@ my %tagLookup = ( 'standardwhitetungsten' => { 145 => 0x835 }, 'standbytimer' => { 310 => '19.1', 312 => '19.1', 313 => '19.1', 316 => '18.1', 317 => '18.1', 322 => '19.1', 323 => '19.1' }, 'starlightview' => { 326 => 0x249, 327 => 0x249, 328 => 0x261 }, - 'startingpage' => { 540 => 'startingPage' }, + 'startingpage' => { 542 => 'startingPage' }, 'startmovieshooting' => { 90 => 0x70d }, - 'starttimecode' => { 415 => "\xa9TIM", 550 => 'startTimecode' }, - 'starttimecodetimeformat' => { 550 => [\'startTimecode','startTimecodeTimeFormat'] }, - 'starttimecodetimevalue' => { 550 => [\'startTimecode','startTimecodeTimeValue'] }, - 'starttimecodevalue' => { 550 => [\'startTimecode','startTimecodeValue'] }, - 'starttimesamplesize' => { 415 => "\xa9TSZ", 550 => 'startTimeSampleSize' }, - 'starttimescale' => { 415 => "\xa9TSC", 550 => 'startTimeScale' }, - 'state' => { 168 => 'State', 354 => 0x6b, 538 => 'State' }, - 'status' => { 499 => 'Status', 513 => 'Status' }, - 'stereomode' => { 508 => 'StereoMode' }, - 'stitched' => { 508 => 'Stitched' }, - 'stitchingsoftware' => { 507 => 'StitchingSoftware', 508 => 'StitchingSoftware' }, - 'stopsabovebaseiso' => { 465 => 0x113e, 466 => 0x113e, 467 => 0x111a, 468 => 0x1196, 469 => 0x1172, 470 => 0x102a, 471 => 0x222, 472 => 0x222, 473 => 0x217, 488 => 0xa }, + 'starttimecode' => { 416 => "\xa9TIM", 552 => 'startTimecode' }, + 'starttimecodetimeformat' => { 552 => [\'startTimecode','startTimecodeTimeFormat'] }, + 'starttimecodetimevalue' => { 552 => [\'startTimecode','startTimecodeTimeValue'] }, + 'starttimecodevalue' => { 552 => [\'startTimecode','startTimecodeValue'] }, + 'starttimesamplesize' => { 416 => "\xa9TSZ", 552 => 'startTimeSampleSize' }, + 'starttimescale' => { 416 => "\xa9TSC", 552 => 'startTimeScale' }, + 'state' => { 168 => 'State', 354 => 0x6b, 540 => 'State' }, + 'status' => { 501 => 'Status', 515 => 'Status' }, + 'stereomode' => { 510 => 'StereoMode' }, + 'stitched' => { 510 => 'Stitched' }, + 'stitchingsoftware' => { 509 => 'StitchingSoftware', 510 => 'StitchingSoftware' }, + 'stopsabovebaseiso' => { 467 => 0x113e, 468 => 0x113e, 469 => 0x111a, 470 => 0x1196, 471 => 0x1172, 472 => 0x102a, 473 => 0x222, 474 => 0x222, 475 => 0x217, 490 => 0xa }, 'storagemethod' => { 195 => 0x12 }, 'storebyorientation' => { 310 => '46.3', 312 => '47.3', 313 => '47.3', 322 => '47.3', 323 => '47.3', 325 => 0xd, 326 => 0xd, 327 => 0xd, 328 => 0xd }, - 'storedescription' => { 407 => 'sdes' }, - 'storedformat' => { 516 => 'StoredFormat' }, - 'storylineidentifier' => { 535 => 'StorylineIdentifier' }, + 'storedescription' => { 408 => 'sdes' }, + 'storedformat' => { 518 => 'StoredFormat' }, + 'storylineidentifier' => { 537 => 'StorylineIdentifier' }, 'straightenangle' => { 302 => 0x2fc08431 }, - 'streamready' => { 535 => 'StreamReady' }, + 'streamready' => { 537 => 'StreamReady' }, 'streamtype' => { 183 => 'StreamType' }, - 'stretchmode' => { 550 => 'stretchMode' }, - 'studydatetime' => { 496 => 'StudyDateTime' }, - 'studydescription' => { 496 => 'StudyDescription' }, - 'studyid' => { 496 => 'StudyID' }, - 'studyphysician' => { 496 => 'StudyPhysician' }, - 'styleperiod' => { 535 => 'StylePeriod' }, + 'stretchmode' => { 552 => 'stretchMode' }, + 'studydatetime' => { 498 => 'StudyDateTime' }, + 'studydescription' => { 498 => 'StudyDescription' }, + 'studyid' => { 498 => 'StudyID' }, + 'studyphysician' => { 498 => 'StudyPhysician' }, + 'styleperiod' => { 537 => 'StylePeriod' }, 'sub-location' => { 138 => 0x5c }, 'subcommanddialframeadvancezoom' => { 253 => 0x806 }, 'subcommanddialplaybackmode' => { 326 => 0x1cf, 327 => 0x1cf, 328 => 0x1e7 }, @@ -6747,91 +6750,91 @@ my %tagLookup = ( 'subfilename' => { 171 => '1Name' }, 'subfileresource' => { 171 => 'rsrc' }, 'subfiletype' => { 125 => 0xfe, 171 => '0Type' }, - 'subject' => { 339 => 'Subject', 406 => 'Subject', 524 => 'subject', 537 => 'Subject', 551 => 'subject' }, - 'subjectarea' => { 125 => 0x9214, 527 => 'SubjectArea' }, - 'subjectcode' => { 534 => 'SubjectCode' }, + 'subject' => { 339 => 'Subject', 406 => 'Subject', 526 => 'subject', 539 => 'Subject', 553 => 'subject' }, + 'subjectarea' => { 125 => 0x9214, 529 => 'SubjectArea' }, + 'subjectcode' => { 536 => 'SubjectCode' }, 'subjectdetection' => { 247 => 0x36e, 249 => 0x252, 250 => 0x252, 251 => 0x23e, 252 => 0x252, 253 => 0x252 }, 'subjectdetectionareamf' => { 247 => 0x3ea }, - 'subjectdistance' => { 125 => 0x9206, 147 => 0x3e, 527 => 'SubjectDistance' }, - 'subjectdistancerange' => { 125 => 0xa40c, 527 => 'SubjectDistanceRange' }, - 'subjectlocation' => { 125 => 0xa214, 527 => 'SubjectLocation' }, + 'subjectdistance' => { 125 => 0x9206, 147 => 0x3e, 529 => 'SubjectDistance' }, + 'subjectdistancerange' => { 125 => 0xa40c, 529 => 'SubjectDistanceRange' }, + 'subjectlocation' => { 125 => 0xa214, 529 => 'SubjectLocation' }, 'subjectmotion' => { 312 => '78.2', 313 => '78.2', 323 => '78.2', 326 => 0x103, 327 => 0x103, 328 => 0x119 }, 'subjectprogram' => { 188 => 0x22 }, 'subjectreference' => { 138 => 0xc }, 'subjecttodetect' => { 2 => 0x14 }, - 'sublabels1' => { 533 => [\'TagStructure','TagStructureSubLabels'] }, - 'sublabels2' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabels'] }, - 'sublabels3' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabels'] }, - 'sublabels4' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabels'] }, - 'sublabels5' => { 533 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabels'] }, + 'sublabels1' => { 535 => [\'TagStructure','TagStructureSubLabels'] }, + 'sublabels2' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabels'] }, + 'sublabels3' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabels'] }, + 'sublabels4' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabels'] }, + 'sublabels5' => { 535 => [\'TagStructure','TagStructureSubLabelsSubLabelsSubLabelsSubLabelsSubLabels'] }, 'subseccreatedate' => { 120 => 'Exif-SubSecCreateDate' }, 'subsecdatetimeoriginal' => { 120 => 'Exif-SubSecDateTimeOriginal' }, 'subsecmodifydate' => { 120 => 'Exif-SubSecModifyDate' }, 'subsectime' => { 125 => 0x9290 }, 'subsectimedigitized' => { 125 => 0x9292 }, 'subsectimeoriginal' => { 125 => 0x9291 }, - 'subsection1' => { 540 => 'subsection1' }, - 'subsection2' => { 540 => 'subsection2' }, - 'subsection3' => { 540 => 'subsection3' }, - 'subsection4' => { 540 => 'subsection4' }, + 'subsection1' => { 542 => 'subsection1' }, + 'subsection2' => { 542 => 'subsection2' }, + 'subsection3' => { 542 => 'subsection3' }, + 'subsection4' => { 542 => 'subsection4' }, 'subselector' => { 310 => '49.1', 312 => '71.1', 313 => '71.1', 323 => '71.1', 325 => 0x93, 326 => 0x8f, 327 => 0x8f, 328 => 0x8f }, 'subselectorassignment' => { 310 => '48.1' }, 'subselectorcenter' => { 312 => '72.1', 313 => '72.1', 323 => '72.1' }, 'subselectorplusdials' => { 310 => '49.2', 312 => '73.1', 313 => '73.1', 323 => '73.1' }, - 'subtitle' => { 186 => 'WM/SubTitle', 407 => "\xa9st3", 415 => "\xa9snm", 540 => 'subtitle' }, - 'subtitlekeywords' => { 415 => "\xa9snk" }, - 'subversionfilename' => { 533 => [\'SubVersions','SubVersionsFileName'] }, - 'subversionreference' => { 533 => [\'SubVersions','SubVersionsVersRef'] }, - 'subversions' => { 533 => 'SubVersions' }, + 'subtitle' => { 186 => 'WM/SubTitle', 408 => "\xa9st3", 416 => "\xa9snm", 542 => 'subtitle' }, + 'subtitlekeywords' => { 416 => "\xa9snk" }, + 'subversionfilename' => { 535 => [\'SubVersions','SubVersionsFileName'] }, + 'subversionreference' => { 535 => [\'SubVersions','SubVersionsVersRef'] }, + 'subversions' => { 535 => 'SubVersions' }, 'superimposeddisplay' => { 88 => 0xa, 90 => 0x510, 91 => 0x9, 92 => 0xa, 95 => 0xa, 96 => 0xe }, 'supermacro' => { 69 => 0x1a }, - 'supplementalcategories' => { 138 => 0x14, 538 => 'SupplementalCategories' }, + 'supplementalcategories' => { 138 => 0x14, 540 => 'SupplementalCategories' }, 'supplementaltype' => { 140 => 0x37 }, - 'supplementdisplayid' => { 540 => 'supplementDisplayID' }, - 'supplementstartingpage' => { 540 => 'supplementStartingPage' }, - 'supplementtitle' => { 540 => 'supplementTitle' }, - 'supplychainsource' => { 535 => 'SupplyChainSource' }, - 'supplychainsourceidentifier' => { 535 => [\'SupplyChainSource','SupplyChainSourceIdentifier'] }, - 'supplychainsourcename' => { 535 => [\'SupplyChainSource','SupplyChainSourceName'] }, - 'supportsamount' => { 521 => 'SupportsAmount', 523 => 'SupportsAmount' }, - 'supportscolor' => { 521 => 'SupportsColor', 523 => 'SupportsColor' }, - 'supportshighdynamicrange' => { 521 => 'SupportsHighDynamicRange', 523 => 'SupportsHighDynamicRange' }, - 'supportsmonochrome' => { 521 => 'SupportsMonochrome', 523 => 'SupportsMonochrome' }, - 'supportsnormaldynamicrange' => { 521 => 'SupportsNormalDynamicRange', 523 => 'SupportsNormalDynamicRange' }, - 'supportsoutputreferred' => { 521 => 'SupportsOutputReferred', 523 => 'SupportsOutputReferred' }, - 'supportsscenereferred' => { 521 => 'SupportsSceneReferred', 523 => 'SupportsSceneReferred' }, + 'supplementdisplayid' => { 542 => 'supplementDisplayID' }, + 'supplementstartingpage' => { 542 => 'supplementStartingPage' }, + 'supplementtitle' => { 542 => 'supplementTitle' }, + 'supplychainsource' => { 537 => 'SupplyChainSource' }, + 'supplychainsourceidentifier' => { 537 => [\'SupplyChainSource','SupplyChainSourceIdentifier'] }, + 'supplychainsourcename' => { 537 => [\'SupplyChainSource','SupplyChainSourceName'] }, + 'supportsamount' => { 523 => 'SupportsAmount', 525 => 'SupportsAmount' }, + 'supportscolor' => { 523 => 'SupportsColor', 525 => 'SupportsColor' }, + 'supportshighdynamicrange' => { 523 => 'SupportsHighDynamicRange', 525 => 'SupportsHighDynamicRange' }, + 'supportsmonochrome' => { 523 => 'SupportsMonochrome', 525 => 'SupportsMonochrome' }, + 'supportsnormaldynamicrange' => { 523 => 'SupportsNormalDynamicRange', 525 => 'SupportsNormalDynamicRange' }, + 'supportsoutputreferred' => { 523 => 'SupportsOutputReferred', 525 => 'SupportsOutputReferred' }, + 'supportsscenereferred' => { 523 => 'SupportsSceneReferred', 525 => 'SupportsSceneReferred' }, 'svisosetting' => { 370 => 0x14 }, - 'swatchcoloranta' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsA'] }, - 'swatchcolorantb' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsB'] }, - 'swatchcolorantblack' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsBlack'] }, - 'swatchcolorantblue' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsBlue'] }, - 'swatchcolorantcyan' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsCyan'] }, - 'swatchcolorantgray' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsGray'] }, - 'swatchcolorantgreen' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsGreen'] }, - 'swatchcolorantl' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsL'] }, - 'swatchcolorantmagenta' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsMagenta'] }, - 'swatchcolorantmode' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsMode'] }, - 'swatchcolorantred' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsRed'] }, - 'swatchcolorantswatchname' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsSwatchName'] }, - 'swatchcoloranttint' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsTint'] }, - 'swatchcoloranttype' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsType'] }, - 'swatchcolorantyellow' => { 555 => [\'SwatchGroups','SwatchGroupsColorantsYellow'] }, - 'swatchgroupname' => { 555 => [\'SwatchGroups','SwatchGroupsGroupName'] }, - 'swatchgroups' => { 555 => 'SwatchGroups' }, - 'swatchgroupscolorants' => { 555 => [\'SwatchGroups','SwatchGroupsColorants'] }, - 'swatchgrouptype' => { 555 => [\'SwatchGroups','SwatchGroupsGroupType'] }, - 'sweeppanoramadirection' => { 354 => 0x93, 444 => 0x33 }, + 'swatchcoloranta' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsA'] }, + 'swatchcolorantb' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsB'] }, + 'swatchcolorantblack' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsBlack'] }, + 'swatchcolorantblue' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsBlue'] }, + 'swatchcolorantcyan' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsCyan'] }, + 'swatchcolorantgray' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsGray'] }, + 'swatchcolorantgreen' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsGreen'] }, + 'swatchcolorantl' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsL'] }, + 'swatchcolorantmagenta' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsMagenta'] }, + 'swatchcolorantmode' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsMode'] }, + 'swatchcolorantred' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsRed'] }, + 'swatchcolorantswatchname' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsSwatchName'] }, + 'swatchcoloranttint' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsTint'] }, + 'swatchcoloranttype' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsType'] }, + 'swatchcolorantyellow' => { 557 => [\'SwatchGroups','SwatchGroupsColorantsYellow'] }, + 'swatchgroupname' => { 557 => [\'SwatchGroups','SwatchGroupsGroupName'] }, + 'swatchgroups' => { 557 => 'SwatchGroups' }, + 'swatchgroupscolorants' => { 557 => [\'SwatchGroups','SwatchGroupsColorants'] }, + 'swatchgrouptype' => { 557 => [\'SwatchGroups','SwatchGroupsGroupType'] }, + 'sweeppanoramadirection' => { 354 => 0x93, 446 => 0x33 }, 'sweeppanoramafieldofview' => { 354 => 0x94 }, - 'sweeppanoramasize' => { 444 => 0x32 }, + 'sweeppanoramasize' => { 446 => 0x32 }, 'switchtoregisteredafpoint' => { 89 => 0x12, 90 => 0x50a }, 'symlink' => { 126 => 'SymLink' }, 'syncreleasemode' => { 312 => '77.1', 313 => '77.1', 323 => '77.1', 325 => 0x45, 326 => 0x41, 327 => 0x41, 328 => 0x41 }, 'system' => { 399 => 0x204 }, - 'tagged' => { 401 => 0xdd, 402 => 'Tagged', 515 => 'tagged' }, - 'tagslist' => { 526 => 'TagsList' }, - 'tagstructure' => { 533 => 'TagStructure' }, - 'takenumber' => { 550 => 'takeNumber' }, - 'tapename' => { 550 => 'tapeName' }, + 'tagged' => { 401 => 0xdd, 402 => 'Tagged', 517 => 'tagged' }, + 'tagslist' => { 528 => 'TagsList' }, + 'tagstructure' => { 535 => 'TagStructure' }, + 'takenumber' => { 552 => 'takeNumber' }, + 'tapename' => { 552 => 'tapeName' }, 'targetaperture' => { 82 => 0x4 }, 'targetaspectratio' => { 344 => 'TargetAspectRatio' }, 'targetcompressionratio' => { 101 => 0x1 }, @@ -6890,112 +6893,112 @@ my %tagLookup = ( 'tda4edgepolarity' => { 145 => 0x198f }, 'tda4gain' => { 145 => 0x198e }, 'tda4offset' => { 145 => 0x198c }, - 'teaser' => { 540 => 'teaser' }, - 'teleconverter' => { 193 => 0x105, 456 => 0x105 }, + 'teaser' => { 542 => 'teaser' }, + 'teleconverter' => { 193 => 0x105, 458 => 0x105 }, 'tempampgainx100' => { 145 => 0x1914 }, - 'tempo' => { 550 => 'tempo' }, - 'temporalcoverage' => { 535 => 'TemporalCoverage' }, - 'temporalcoveragefrom' => { 535 => [\'TemporalCoverage','TemporalCoverageTempCoverageFrom'] }, - 'temporalcoverageto' => { 535 => [\'TemporalCoverage','TemporalCoverageTempCoverageTo'] }, + 'tempo' => { 552 => 'tempo' }, + 'temporalcoverage' => { 537 => 'TemporalCoverage' }, + 'temporalcoveragefrom' => { 537 => [\'TemporalCoverage','TemporalCoverageTempCoverageFrom'] }, + 'temporalcoverageto' => { 537 => [\'TemporalCoverage','TemporalCoverageTempCoverageTo'] }, 'termsandconditionstext' => { 340 => 'TermsAndConditionsText' }, 'termsandconditionsurl' => { 340 => 'TermsAndConditionsURL' }, 'testname' => { 126 => 'TestName' }, 'textencoding' => { 242 => 0x4 }, - 'textlayername' => { 538 => [\'TextLayers','TextLayersLayerName'] }, - 'textlayers' => { 538 => 'TextLayers' }, - 'textlayertext' => { 538 => [\'TextLayers','TextLayersLayerText'] }, + 'textlayername' => { 540 => [\'TextLayers','TextLayersLayerName'] }, + 'textlayers' => { 540 => 'TextLayers' }, + 'textlayertext' => { 540 => [\'TextLayers','TextLayersLayerText'] }, 'textstamp' => { 354 => [0x8008,0x8009,0x3b,0x3e] }, - 'texture' => { 521 => 'Texture', 523 => 'Texture' }, + 'texture' => { 523 => 'Texture', 525 => 'Texture' }, 'three-dtrackingfacedetection' => { 312 => '1.4', 313 => '1.4', 323 => '1.4' }, 'three-dtrackingwatcharea' => { 312 => '78.1', 313 => '78.1', 323 => '78.1' }, 'thresholding' => { 125 => 0x107 }, 'thumbnailfilename' => { 103 => 0x817 }, - 'thumbnailformat' => { 548 => [\'Thumbnails','ThumbnailsFormat'] }, - 'thumbnailheight' => { 149 => 0xfa55, 548 => [\'Thumbnails','ThumbnailsHeight'] }, - 'thumbnailimage' => { 6 => 'CNDA', 103 => 0x2008, 120 => 'Exif-ThumbnailImage', 128 => 0x3, 174 => 'data', 335 => 0x100, 407 => 'tnal', 415 => 'thmb', 548 => [\'Thumbnails','ThumbnailsImage'] }, + 'thumbnailformat' => { 550 => [\'Thumbnails','ThumbnailsFormat'] }, + 'thumbnailheight' => { 149 => 0xfa55, 550 => [\'Thumbnails','ThumbnailsHeight'] }, + 'thumbnailimage' => { 6 => 'CNDA', 103 => 0x2008, 120 => 'Exif-ThumbnailImage', 128 => 0x3, 174 => 'data', 335 => 0x100, 408 => 'tnal', 416 => 'thmb', 550 => [\'Thumbnails','ThumbnailsImage'] }, 'thumbnailimagename' => { 174 => '1Name' }, 'thumbnailimagesize' => { 174 => 'ImageSize' }, 'thumbnailimagetype' => { 174 => '0Type' }, 'thumbnailimagevalidarea' => { 69 => 0x13 }, 'thumbnaillength' => { 125 => 0x202 }, 'thumbnailoffset' => { 125 => 0x201 }, - 'thumbnailpng' => { 415 => 'thmb' }, - 'thumbnails' => { 548 => 'Thumbnails' }, - 'thumbnailwidth' => { 149 => 0xfa54, 548 => [\'Thumbnails','ThumbnailsWidth'] }, - 'ticker' => { 540 => 'ticker' }, - 'tiffhandling' => { 521 => 'TIFFHandling', 523 => 'TIFFHandling' }, - 'tiffmeteringimage' => { 194 => 0x104c, 453 => 0x1110 }, + 'thumbnailpng' => { 416 => 'thmb' }, + 'thumbnails' => { 550 => 'Thumbnails' }, + 'thumbnailwidth' => { 149 => 0xfa54, 550 => [\'Thumbnails','ThumbnailsWidth'] }, + 'ticker' => { 542 => 'ticker' }, + 'tiffhandling' => { 523 => 'TIFFHandling', 525 => 'TIFFHandling' }, + 'tiffmeteringimage' => { 194 => 0x104c, 455 => 0x1110 }, 'tilelength' => { 125 => 0x143 }, 'tilewidth' => { 125 => 0x142 }, 'time' => { 145 => 0x401, 390 => 0x7 }, 'timecodes' => { 125 => 0xc763 }, 'timecreated' => { 138 => 0x3c, 147 => 0x14, 156 => 0x10, 402 => 'TimeCreated' }, 'timelapseshotnumber' => { 357 => 0x10 }, - 'timeperiod' => { 540 => 'timePeriod' }, + 'timeperiod' => { 542 => 'timePeriod' }, 'timerfunctionbutton' => { 311 => '5.2', 314 => '12.1', 315 => '13.1' }, 'timerlength' => { 90 => 0x80c }, 'timerrecording' => { 354 => 0x96 }, - 'timescaleparams' => { 550 => 'timeScaleParams' }, - 'timescaleparamsframeoverlappingpercentage' => { 550 => [\'timeScaleParams','timeScaleParamsFrameOverlappingPercentage'] }, - 'timescaleparamsframesize' => { 550 => [\'timeScaleParams','timeScaleParamsFrameSize'] }, - 'timescaleparamsquality' => { 550 => [\'timeScaleParams','timeScaleParamsQuality'] }, + 'timescaleparams' => { 552 => 'timeScaleParams' }, + 'timescaleparamsframeoverlappingpercentage' => { 552 => [\'timeScaleParams','timeScaleParamsFrameOverlappingPercentage'] }, + 'timescaleparamsframesize' => { 552 => [\'timeScaleParams','timeScaleParamsFrameSize'] }, + 'timescaleparamsquality' => { 552 => [\'timeScaleParams','timeScaleParamsQuality'] }, 'timesent' => { 139 => 0x50 }, - 'timeshot' => { 509 => 'TimeShot' }, - 'timesignature' => { 550 => 'timeSignature' }, + 'timeshot' => { 511 => 'TimeShot' }, + 'timesignature' => { 552 => 'timeSignature' }, 'timesincepoweron' => { 354 => 0x29 }, - 'timestamp' => { 11 => 0x45e, 19 => 0x11c, 329 => 0x8, 343 => 'TimeStamp', 354 => 0xaf, 508 => 'Timestamp', 517 => 'Timestamp', 533 => 'TimeStamp' }, + 'timestamp' => { 11 => 0x45e, 19 => 0x11c, 329 => 0x8, 343 => 'TimeStamp', 354 => 0xaf, 510 => 'Timestamp', 519 => 'Timestamp', 535 => 'TimeStamp' }, 'timestamp1' => { 11 => 0x45a }, - 'timezone' => { 83 => 0x1, 247 => 0x8fe, 249 => 0x694, 250 => 0x6a4, 251 => 0x594, 252 => 0x5c4, 253 => 0x5dc, 294 => 0x0, 425 => 0xa }, + 'timezone' => { 83 => 0x1, 247 => 0x8fe, 249 => 0x694, 250 => 0x6a4, 251 => 0x594, 252 => 0x5c4, 253 => 0x5dc, 294 => 0x0, 427 => 0xa }, 'timezonecity' => { 83 => 0x2 }, 'timezonecode' => { 106 => 0x1 }, 'timezoneinfo' => { 106 => 0x2 }, 'timezoneoffset' => { 125 => 0x882a }, - 'tint' => { 409 => 'player.movie.visual.tint', 521 => 'Tint', 523 => 'Tint' }, - 'title' => { 164 => 'Title', 339 => 'Title', 343 => 'Title', 354 => 0x65, 406 => 'Title', 407 => ['titl',"\xa9nam"], 409 => 'title', 415 => ['titl',"\xa9nam"], 524 => 'title', 537 => 'Title', 548 => 'Title' }, - 'togglestyleamount' => { 521 => 'ToggleStyleAmount', 523 => 'ToggleStyleAmount' }, - 'togglestyledigest' => { 521 => 'ToggleStyleDigest', 523 => 'ToggleStyleDigest' }, + 'tint' => { 410 => 'player.movie.visual.tint', 523 => 'Tint', 525 => 'Tint' }, + 'title' => { 164 => 'Title', 339 => 'Title', 343 => 'Title', 354 => 0x65, 406 => 'Title', 408 => ['titl',"\xa9nam"], 410 => 'title', 416 => ['titl',"\xa9nam"], 526 => 'title', 539 => 'Title', 550 => 'Title' }, + 'togglestyleamount' => { 523 => 'ToggleStyleAmount', 525 => 'ToggleStyleAmount' }, + 'togglestyledigest' => { 523 => 'ToggleStyleDigest', 525 => 'ToggleStyleDigest' }, 'tonecomp' => { 243 => 0x81 }, - 'tonecurve' => { 79 => 0x1, 390 => 0x402, 521 => 'ToneCurve', 523 => 'ToneCurve' }, + 'tonecurve' => { 79 => 0x1, 390 => 0x402, 523 => 'ToneCurve', 525 => 'ToneCurve' }, 'tonecurveactive' => { 114 => 0x110 }, - 'tonecurveadobergb' => { 429 => 0xa043 }, - 'tonecurveadobergbdefault' => { 429 => 0xa041 }, - 'tonecurveblue' => { 521 => 'ToneCurveBlue', 523 => 'ToneCurveBlue' }, - 'tonecurvebluex' => { 493 => 0x9003 }, - 'tonecurvebluey' => { 493 => 0x9007 }, + 'tonecurveadobergb' => { 431 => 0xa043 }, + 'tonecurveadobergbdefault' => { 431 => 0xa041 }, + 'tonecurveblue' => { 523 => 'ToneCurveBlue', 525 => 'ToneCurveBlue' }, + 'tonecurvebluex' => { 495 => 0x9003 }, + 'tonecurvebluey' => { 495 => 0x9007 }, 'tonecurvebrightness' => { 109 => 0x20410 }, - 'tonecurvebrightnessx' => { 493 => 0x9000 }, - 'tonecurvebrightnessy' => { 493 => 0x9004 }, + 'tonecurvebrightnessx' => { 495 => 0x9000 }, + 'tonecurvebrightnessy' => { 495 => 0x9004 }, 'tonecurvecolorspace' => { 113 => 0x0 }, 'tonecurvecontrast' => { 109 => 0x20411 }, - 'tonecurvegreen' => { 521 => 'ToneCurveGreen', 523 => 'ToneCurveGreen' }, - 'tonecurvegreenx' => { 493 => 0x9002 }, - 'tonecurvegreeny' => { 493 => 0x9006 }, + 'tonecurvegreen' => { 523 => 'ToneCurveGreen', 525 => 'ToneCurveGreen' }, + 'tonecurvegreenx' => { 495 => 0x9002 }, + 'tonecurvegreeny' => { 495 => 0x9006 }, 'tonecurveinputrange' => { 113 => 0x3 }, 'tonecurveinterpolation' => { 114 => 0x159 }, 'tonecurvemode' => { 114 => 0x113 }, - 'tonecurvename' => { 521 => 'ToneCurveName', 523 => 'ToneCurveName' }, - 'tonecurvename2012' => { 521 => 'ToneCurveName2012', 523 => 'ToneCurveName2012' }, + 'tonecurvename' => { 523 => 'ToneCurveName', 525 => 'ToneCurveName' }, + 'tonecurvename2012' => { 523 => 'ToneCurveName2012', 525 => 'ToneCurveName2012' }, 'tonecurveoriginal' => { 109 => '0x20400.1' }, 'tonecurveoutputrange' => { 113 => 0x5 }, 'tonecurveprofilename' => { 145 => 0x1391 }, 'tonecurveproperty' => { 114 => 0x3c }, - 'tonecurvepv2012' => { 521 => 'ToneCurvePV2012', 523 => 'ToneCurvePV2012' }, - 'tonecurvepv2012blue' => { 521 => 'ToneCurvePV2012Blue', 523 => 'ToneCurvePV2012Blue' }, - 'tonecurvepv2012green' => { 521 => 'ToneCurvePV2012Green', 523 => 'ToneCurvePV2012Green' }, - 'tonecurvepv2012red' => { 521 => 'ToneCurvePV2012Red', 523 => 'ToneCurvePV2012Red' }, - 'tonecurvered' => { 521 => 'ToneCurveRed', 523 => 'ToneCurveRed' }, - 'tonecurveredx' => { 493 => 0x9001 }, - 'tonecurveredy' => { 493 => 0x9005 }, + 'tonecurvepv2012' => { 523 => 'ToneCurvePV2012', 525 => 'ToneCurvePV2012' }, + 'tonecurvepv2012blue' => { 523 => 'ToneCurvePV2012Blue', 525 => 'ToneCurvePV2012Blue' }, + 'tonecurvepv2012green' => { 523 => 'ToneCurvePV2012Green', 525 => 'ToneCurvePV2012Green' }, + 'tonecurvepv2012red' => { 523 => 'ToneCurvePV2012Red', 525 => 'ToneCurvePV2012Red' }, + 'tonecurvered' => { 523 => 'ToneCurveRed', 525 => 'ToneCurveRed' }, + 'tonecurveredx' => { 495 => 0x9001 }, + 'tonecurveredy' => { 495 => 0x9005 }, 'tonecurves' => { 390 => 0x403 }, 'tonecurveshape' => { 113 => 0x1 }, - 'tonecurvesrgb' => { 429 => 0xa042 }, - 'tonecurvesrgbdefault' => { 429 => 0xa040 }, + 'tonecurvesrgb' => { 431 => 0xa042 }, + 'tonecurvesrgbdefault' => { 431 => 0xa040 }, 'tonecurvex' => { 113 => 0xa }, 'tonecurvey' => { 113 => 0xb }, 'tonelevel' => { 330 => 0x52e }, 'tonemap' => { 247 => 0x374, 249 => 0x26a, 250 => 0x26a }, - 'tonemapstrength' => { 521 => 'ToneMapStrength', 523 => 'ToneMapStrength' }, - 'toningeffect' => { 61 => 0xf, 243 => 0xb3, 260 => 0x38, 261 => 0x40, 262 => 0x48, 422 => 0x1015 }, + 'tonemapstrength' => { 523 => 'ToneMapStrength', 525 => 'ToneMapStrength' }, + 'toningeffect' => { 61 => 0xf, 243 => 0xb3, 260 => 0x38, 261 => 0x40, 262 => 0x48, 424 => 0x1015 }, 'toningeffectauto' => { 76 => 0xa4 }, 'toningeffectfaithful' => { 75 => 0x74, 76 => 0x74 }, 'toningeffectlandscape' => { 75 => 0x44, 76 => 0x44 }, @@ -7013,59 +7016,59 @@ my %tagLookup = ( 'touchfnareatall' => { 325 => 0x15b }, 'touchfnareawide' => { 325 => 0x159 }, 'touchfnrole' => { 325 => 0x155 }, - 'track' => { 407 => "\xa9trk", 415 => "\xa9trk" }, - 'trackcreatedate' => { 414 => 0x1 }, - 'trackmodifydate' => { 414 => 0x2 }, - 'tracknumber' => { 407 => 'trkn', 550 => 'trackNumber' }, - 'tracks' => { 550 => 'Tracks' }, - 'tracksframerate' => { 550 => [\'Tracks','TracksFrameRate'] }, - 'tracksmarkers' => { 550 => [\'Tracks','TracksMarkers'] }, - 'tracksmarkerscomment' => { 550 => [\'Tracks','TracksMarkersComment'] }, - 'tracksmarkerscuepointparams' => { 550 => [\'Tracks','TracksMarkersCuePointParams'] }, - 'tracksmarkerscuepointparamskey' => { 550 => [\'Tracks','TracksMarkersCuePointParamsKey'] }, - 'tracksmarkerscuepointparamsvalue' => { 550 => [\'Tracks','TracksMarkersCuePointParamsValue'] }, - 'tracksmarkerscuepointtype' => { 550 => [\'Tracks','TracksMarkersCuePointType'] }, - 'tracksmarkersduration' => { 550 => [\'Tracks','TracksMarkersDuration'] }, - 'tracksmarkerslocation' => { 550 => [\'Tracks','TracksMarkersLocation'] }, - 'tracksmarkersname' => { 550 => [\'Tracks','TracksMarkersName'] }, - 'tracksmarkersprobability' => { 550 => [\'Tracks','TracksMarkersProbability'] }, - 'tracksmarkersspeaker' => { 550 => [\'Tracks','TracksMarkersSpeaker'] }, - 'tracksmarkersstarttime' => { 550 => [\'Tracks','TracksMarkersStartTime'] }, - 'tracksmarkerstarget' => { 550 => [\'Tracks','TracksMarkersTarget'] }, - 'tracksmarkerstype' => { 550 => [\'Tracks','TracksMarkersType'] }, - 'trackstrackname' => { 550 => [\'Tracks','TracksTrackName'] }, - 'trackstracktype' => { 550 => [\'Tracks','TracksTrackType'] }, - 'tracktype' => { 415 => 'kgtt' }, + 'track' => { 408 => "\xa9trk", 416 => "\xa9trk" }, + 'trackcreatedate' => { 415 => 0x1 }, + 'trackmodifydate' => { 415 => 0x2 }, + 'tracknumber' => { 408 => 'trkn', 552 => 'trackNumber' }, + 'tracks' => { 552 => 'Tracks' }, + 'tracksframerate' => { 552 => [\'Tracks','TracksFrameRate'] }, + 'tracksmarkers' => { 552 => [\'Tracks','TracksMarkers'] }, + 'tracksmarkerscomment' => { 552 => [\'Tracks','TracksMarkersComment'] }, + 'tracksmarkerscuepointparams' => { 552 => [\'Tracks','TracksMarkersCuePointParams'] }, + 'tracksmarkerscuepointparamskey' => { 552 => [\'Tracks','TracksMarkersCuePointParamsKey'] }, + 'tracksmarkerscuepointparamsvalue' => { 552 => [\'Tracks','TracksMarkersCuePointParamsValue'] }, + 'tracksmarkerscuepointtype' => { 552 => [\'Tracks','TracksMarkersCuePointType'] }, + 'tracksmarkersduration' => { 552 => [\'Tracks','TracksMarkersDuration'] }, + 'tracksmarkerslocation' => { 552 => [\'Tracks','TracksMarkersLocation'] }, + 'tracksmarkersname' => { 552 => [\'Tracks','TracksMarkersName'] }, + 'tracksmarkersprobability' => { 552 => [\'Tracks','TracksMarkersProbability'] }, + 'tracksmarkersspeaker' => { 552 => [\'Tracks','TracksMarkersSpeaker'] }, + 'tracksmarkersstarttime' => { 552 => [\'Tracks','TracksMarkersStartTime'] }, + 'tracksmarkerstarget' => { 552 => [\'Tracks','TracksMarkersTarget'] }, + 'tracksmarkerstype' => { 552 => [\'Tracks','TracksMarkersType'] }, + 'trackstrackname' => { 552 => [\'Tracks','TracksTrackName'] }, + 'trackstracktype' => { 552 => [\'Tracks','TracksTrackType'] }, + 'tracktype' => { 416 => 'kgtt' }, 'trailer' => { 126 => 'Trailer' }, 'trailersignature' => { 171 => 'zmie' }, - 'transcript' => { 535 => 'Transcript' }, - 'transcriptlink' => { 535 => 'TranscriptLink' }, - 'transcriptlinklink' => { 535 => [\'TranscriptLink','TranscriptLinkLink'] }, - 'transcriptlinklinkqualifier' => { 535 => [\'TranscriptLink','TranscriptLinkLinkQualifier'] }, - 'transferfunction' => { 125 => 0x12d, 546 => 'TransferFunction' }, + 'transcript' => { 537 => 'Transcript' }, + 'transcriptlink' => { 537 => 'TranscriptLink' }, + 'transcriptlinklink' => { 537 => [\'TranscriptLink','TranscriptLinkLink'] }, + 'transcriptlinklinkqualifier' => { 537 => [\'TranscriptLink','TranscriptLinkLinkQualifier'] }, + 'transferfunction' => { 125 => 0x12d, 548 => 'TransferFunction' }, 'transfertimenormal' => { 145 => 0x1888 }, 'transfertimetest' => { 145 => 0x1889 }, 'transform' => { 354 => [0x8012,0x59] }, - 'transformation' => { 536 => 'Transformation' }, - 'transmissionreference' => { 538 => 'TransmissionReference' }, - 'trapped' => { 339 => 'Trapped', 537 => 'Trapped' }, + 'transformation' => { 538 => 'Transformation' }, + 'transmissionreference' => { 540 => 'TransmissionReference' }, + 'trapped' => { 339 => 'Trapped', 539 => 'Trapped' }, 'trashbuttonfunction' => { 90 => 0x710 }, 'travelday' => { 354 => 0x36 }, - 'treble' => { 409 => 'player.movie.audio.treble' }, - 'triggermode' => { 416 => 0x6, 417 => 0x34, 418 => 0x34 }, + 'treble' => { 407 => 'player.movie.audio.treble', 410 => 'player.movie.audio.treble' }, + 'triggermode' => { 418 => 0x6, 419 => 0x34, 420 => 0x34 }, 'tstop' => { 125 => 0xc772 }, 'ttl_da_adown' => { 377 => 0x5 }, 'ttl_da_aup' => { 377 => 0x4 }, 'ttl_da_bdown' => { 377 => 0x7 }, 'ttl_da_bup' => { 377 => 0x6 }, 'tungstenawb' => { 367 => 0x1 }, - 'tvepisode' => { 407 => 'tves' }, - 'tvepisodeid' => { 407 => 'tven' }, + 'tvepisode' => { 408 => 'tves' }, + 'tvepisodeid' => { 408 => 'tven' }, 'tvexposuretimesetting' => { 370 => 0x12 }, - 'tvnetworkname' => { 407 => 'tvnn' }, - 'tvseason' => { 407 => 'tvsn' }, - 'tvshow' => { 407 => 'tvsh' }, - 'type' => { 503 => 'Type', 524 => 'type', 545 => 'type' }, + 'tvnetworkname' => { 408 => 'tvnn' }, + 'tvseason' => { 408 => 'tvsn' }, + 'tvshow' => { 408 => 'tvsh' }, + 'type' => { 505 => 'Type', 526 => 'type', 547 => 'type' }, 'typestatus' => { 124 => [\'Identification','IdentificationTypeStatus'] }, 'uniquecameramodel' => { 125 => 0xc614 }, 'uniquedocumentid' => { 138 => 0xbb }, @@ -7076,10 +7079,10 @@ my %tagLookup = ( 'uniquematrixfluorescent' => { 145 => 0x7e6 }, 'uniquematrixtungsten' => { 145 => 0x7e5 }, 'uniqueobjectname' => { 139 => 0x64 }, - 'units' => { 504 => 'Units' }, - 'unknown_aacr' => { 407 => 'AACR' }, - 'unknown_cdek' => { 407 => 'CDEK' }, - 'unknown_cdet' => { 407 => 'CDET' }, + 'units' => { 506 => 'Units' }, + 'unknown_aacr' => { 408 => 'AACR' }, + 'unknown_cdek' => { 408 => 'CDEK' }, + 'unknown_cdet' => { 408 => 'CDET' }, 'unknownblock' => { 390 => 0x405 }, 'unknownblock1' => { 334 => 0x635 }, 'unknownblock2' => { 334 => 0x636 }, @@ -7097,9 +7100,9 @@ my %tagLookup = ( 'unknownrawshadow' => { 115 => 0x84 }, 'unknownrawshadowpoint' => { 115 => 0x49 }, 'unknownsharpness' => { 115 => 0x47 }, - 'unknowntags' => { 415 => 'TAGS' }, + 'unknowntags' => { 416 => 'TAGS' }, 'unknowntemperature' => { 127 => 0x4 }, - 'unknownthumbnail' => { 415 => 'thmb' }, + 'unknownthumbnail' => { 416 => 'thmb' }, 'unsharp1color' => { 307 => 0x13 }, 'unsharp1halowidth' => { 307 => 0x19 }, 'unsharp1intensity' => { 307 => 0x17 }, @@ -7121,88 +7124,88 @@ my %tagLookup = ( 'unsharpmaskfineness' => { 79 => 0xe, 109 => 0x20309 }, 'unsharpmaskstrength' => { 109 => 0x20308 }, 'unsharpmaskthreshold' => { 79 => 0xf, 109 => 0x2030a }, - 'uprightcentermode' => { 521 => 'UprightCenterMode', 523 => 'UprightCenterMode' }, - 'uprightcenternormx' => { 521 => 'UprightCenterNormX', 523 => 'UprightCenterNormX' }, - 'uprightcenternormy' => { 521 => 'UprightCenterNormY', 523 => 'UprightCenterNormY' }, - 'uprightdependentdigest' => { 521 => 'UprightDependentDigest', 523 => 'UprightDependentDigest' }, - 'uprightfocallength35mm' => { 521 => 'UprightFocalLength35mm', 523 => 'UprightFocalLength35mm' }, - 'uprightfocalmode' => { 521 => 'UprightFocalMode', 523 => 'UprightFocalMode' }, - 'uprightfoursegments_0' => { 521 => 'UprightFourSegments_0', 523 => 'UprightFourSegments_0' }, - 'uprightfoursegments_1' => { 521 => 'UprightFourSegments_1', 523 => 'UprightFourSegments_1' }, - 'uprightfoursegments_2' => { 521 => 'UprightFourSegments_2', 523 => 'UprightFourSegments_2' }, - 'uprightfoursegments_3' => { 521 => 'UprightFourSegments_3', 523 => 'UprightFourSegments_3' }, - 'uprightfoursegmentscount' => { 521 => 'UprightFourSegmentsCount', 523 => 'UprightFourSegmentsCount' }, - 'uprightguideddependentdigest' => { 521 => 'UprightGuidedDependentDigest', 523 => 'UprightGuidedDependentDigest' }, - 'uprightpreview' => { 521 => 'UprightPreview', 523 => 'UprightPreview' }, - 'uprighttransform_0' => { 521 => 'UprightTransform_0', 523 => 'UprightTransform_0' }, - 'uprighttransform_1' => { 521 => 'UprightTransform_1', 523 => 'UprightTransform_1' }, - 'uprighttransform_2' => { 521 => 'UprightTransform_2', 523 => 'UprightTransform_2' }, - 'uprighttransform_3' => { 521 => 'UprightTransform_3', 523 => 'UprightTransform_3' }, - 'uprighttransform_4' => { 521 => 'UprightTransform_4', 523 => 'UprightTransform_4' }, - 'uprighttransform_5' => { 521 => 'UprightTransform_5', 523 => 'UprightTransform_5' }, - 'uprighttransformcount' => { 521 => 'UprightTransformCount', 523 => 'UprightTransformCount' }, - 'uprightversion' => { 521 => 'UprightVersion', 523 => 'UprightVersion' }, - 'urgency' => { 138 => 0xa, 538 => 'Urgency' }, - 'url' => { 164 => 'URL', 343 => 'URL', 404 => 0x40b, 540 => 'url' }, + 'uprightcentermode' => { 523 => 'UprightCenterMode', 525 => 'UprightCenterMode' }, + 'uprightcenternormx' => { 523 => 'UprightCenterNormX', 525 => 'UprightCenterNormX' }, + 'uprightcenternormy' => { 523 => 'UprightCenterNormY', 525 => 'UprightCenterNormY' }, + 'uprightdependentdigest' => { 523 => 'UprightDependentDigest', 525 => 'UprightDependentDigest' }, + 'uprightfocallength35mm' => { 523 => 'UprightFocalLength35mm', 525 => 'UprightFocalLength35mm' }, + 'uprightfocalmode' => { 523 => 'UprightFocalMode', 525 => 'UprightFocalMode' }, + 'uprightfoursegments_0' => { 523 => 'UprightFourSegments_0', 525 => 'UprightFourSegments_0' }, + 'uprightfoursegments_1' => { 523 => 'UprightFourSegments_1', 525 => 'UprightFourSegments_1' }, + 'uprightfoursegments_2' => { 523 => 'UprightFourSegments_2', 525 => 'UprightFourSegments_2' }, + 'uprightfoursegments_3' => { 523 => 'UprightFourSegments_3', 525 => 'UprightFourSegments_3' }, + 'uprightfoursegmentscount' => { 523 => 'UprightFourSegmentsCount', 525 => 'UprightFourSegmentsCount' }, + 'uprightguideddependentdigest' => { 523 => 'UprightGuidedDependentDigest', 525 => 'UprightGuidedDependentDigest' }, + 'uprightpreview' => { 523 => 'UprightPreview', 525 => 'UprightPreview' }, + 'uprighttransform_0' => { 523 => 'UprightTransform_0', 525 => 'UprightTransform_0' }, + 'uprighttransform_1' => { 523 => 'UprightTransform_1', 525 => 'UprightTransform_1' }, + 'uprighttransform_2' => { 523 => 'UprightTransform_2', 525 => 'UprightTransform_2' }, + 'uprighttransform_3' => { 523 => 'UprightTransform_3', 525 => 'UprightTransform_3' }, + 'uprighttransform_4' => { 523 => 'UprightTransform_4', 525 => 'UprightTransform_4' }, + 'uprighttransform_5' => { 523 => 'UprightTransform_5', 525 => 'UprightTransform_5' }, + 'uprighttransformcount' => { 523 => 'UprightTransformCount', 525 => 'UprightTransformCount' }, + 'uprightversion' => { 523 => 'UprightVersion', 525 => 'UprightVersion' }, + 'urgency' => { 138 => 0xa, 540 => 'Urgency' }, + 'url' => { 164 => 'URL', 343 => 'URL', 404 => 0x40b, 542 => 'url' }, 'url_list' => { 404 => 0x41e }, - 'urla-platform' => { 540 => [\'url','urlA-platform'] }, - 'urlurl' => { 540 => [\'url','urlUrl'] }, + 'urla-platform' => { 542 => [\'url','urlA-platform'] }, + 'urlurl' => { 542 => [\'url','urlUrl'] }, 'usablemeteringmodes' => { 90 => 0x10a }, 'usableshootingmodes' => { 90 => 0x109 }, - 'usage' => { 541 => 'usage' }, - 'usageterms' => { 554 => 'UsageTerms' }, + 'usage' => { 543 => 'usage' }, + 'usageterms' => { 556 => 'UsageTerms' }, 'usbpowerdelivery' => { 247 => 0x9ac, 249 => 0x762, 250 => 0x772, 251 => 0x664, 252 => 0x694, 253 => 0x6fc }, 'usedialwithouthold' => { 325 => 0xc3, 326 => 0xbf, 327 => 0xbf, 328 => 0xbf }, - 'useguidelines' => { 519 => 'useGuidelines' }, - 'usepanoramaviewer' => { 507 => 'UsePanoramaViewer' }, - 'usercollection' => { 409 => 'collection.user' }, - 'usercomment' => { 103 => 0x805, 125 => 0x9286, 527 => 'UserComment' }, + 'useguidelines' => { 521 => 'useGuidelines' }, + 'usepanoramaviewer' => { 509 => 'UsePanoramaViewer' }, + 'usercollection' => { 410 => 'collection.user' }, + 'usercomment' => { 103 => 0x805, 125 => 0x9286, 529 => 'UserComment' }, 'userdef1picturestyle' => { 19 => 0x10c, 75 => 0xd8, 76 => 0xf0 }, 'userdef2picturestyle' => { 19 => 0x10e, 75 => 0xda, 76 => 0xf2 }, 'userdef3picturestyle' => { 19 => 0x110, 75 => 0xdc, 76 => 0xf4 }, - 'userfields' => { 513 => 'UserFields' }, - 'userlabel' => { 416 => 0x2b, 417 => 0x5a, 418 => 0x68 }, + 'userfields' => { 515 => 'UserFields' }, + 'userlabel' => { 418 => 0x2b, 419 => 0x5a, 420 => 0x68 }, 'userprofile' => { 349 => 0x302, 353 => 0x34c, 356 => 0x3038 }, - 'userrating' => { 409 => 'rating.user', 415 => 'urat' }, + 'userrating' => { 410 => 'rating.user', 416 => 'urat' }, 'usmlenselectronicmf' => { 2 => 0x7, 89 => 0x7, 90 => 0x501 }, - 'uspsnumber' => { 540 => 'uspsNumber' }, + 'uspsnumber' => { 542 => 'uspsNumber' }, 'utmeasting' => { 175 => 'Easting' }, 'utmmapdatum' => { 175 => 'Datum' }, 'utmnorthing' => { 175 => 'Northing' }, 'utmzone' => { 175 => 'Zone' }, - 'uuid' => { 521 => 'UUID', 523 => 'UUID' }, + 'uuid' => { 523 => 'UUID', 525 => 'UUID' }, 'uv-irfiltercorrection' => { 349 => 0x325 }, 'validbits' => { 334 => 0x611, 335 => 0x102c }, 'validcropcorners' => { 344 => 'ValidCropCorners' }, 'validpixeldepth' => { 338 => 0x611 }, - 'variablelowpassfilter' => { 456 => 0x2028 }, + 'variablelowpassfilter' => { 458 => 0x2028 }, 'variousmodes' => { 147 => 0x26 }, 'variousmodes2' => { 147 => 0x3a }, 'variprogram' => { 243 => 0xab }, 'varraydacnominalvalues' => { 145 => 0x191e }, - 'vendor' => { 415 => 'vndr' }, - 'vendorinfo' => { 497 => 'VendorInfo' }, - 'vendorinfomanufacturer' => { 497 => [\'VendorInfo','VendorInfoManufacturer'] }, - 'vendorinfomodel' => { 497 => [\'VendorInfo','VendorInfoModel'] }, - 'vendorinfonotes' => { 497 => [\'VendorInfo','VendorInfoNotes'] }, + 'vendor' => { 416 => 'vndr' }, + 'vendorinfo' => { 499 => 'VendorInfo' }, + 'vendorinfomanufacturer' => { 499 => [\'VendorInfo','VendorInfoManufacturer'] }, + 'vendorinfomodel' => { 499 => [\'VendorInfo','VendorInfoModel'] }, + 'vendorinfonotes' => { 499 => [\'VendorInfo','VendorInfoNotes'] }, 'verbatimidentification' => { 124 => [\'Identification','IdentificationVerbatimIdentification'] }, - 'version' => { 133 => 0x0, 344 => 'Version', 406 => 'Version', 409 => 'version', 521 => 'Version', 523 => 'Version', 532 => 'Version' }, - 'versioncreatedate' => { 493 => 0xd100 }, - 'versionid' => { 551 => 'VersionID' }, - 'versionidentifier' => { 540 => 'versionIdentifier' }, - 'versionmodifydate' => { 493 => 0xd101 }, - 'versions' => { 551 => 'Versions' }, - 'versionscomments' => { 551 => [\'Versions','VersionsComments'] }, - 'versionsevent' => { 551 => [\'Versions','VersionsEvent'] }, - 'versionseventaction' => { 551 => [\'Versions','VersionsEventAction'] }, - 'versionseventchanged' => { 551 => [\'Versions','VersionsEventChanged'] }, - 'versionseventinstanceid' => { 551 => [\'Versions','VersionsEventInstanceID'] }, - 'versionseventparameters' => { 551 => [\'Versions','VersionsEventParameters'] }, - 'versionseventsoftwareagent' => { 551 => [\'Versions','VersionsEventSoftwareAgent'] }, - 'versionseventwhen' => { 551 => [\'Versions','VersionsEventWhen'] }, - 'versionsmodifier' => { 551 => [\'Versions','VersionsModifier'] }, - 'versionsmodifydate' => { 551 => [\'Versions','VersionsModifyDate'] }, - 'versionsversion' => { 551 => [\'Versions','VersionsVersion'] }, + 'version' => { 133 => 0x0, 344 => 'Version', 406 => 'Version', 410 => 'version', 523 => 'Version', 525 => 'Version', 534 => 'Version' }, + 'versioncreatedate' => { 495 => 0xd100 }, + 'versionid' => { 553 => 'VersionID' }, + 'versionidentifier' => { 542 => 'versionIdentifier' }, + 'versionmodifydate' => { 495 => 0xd101 }, + 'versions' => { 553 => 'Versions' }, + 'versionscomments' => { 553 => [\'Versions','VersionsComments'] }, + 'versionsevent' => { 553 => [\'Versions','VersionsEvent'] }, + 'versionseventaction' => { 553 => [\'Versions','VersionsEventAction'] }, + 'versionseventchanged' => { 553 => [\'Versions','VersionsEventChanged'] }, + 'versionseventinstanceid' => { 553 => [\'Versions','VersionsEventInstanceID'] }, + 'versionseventparameters' => { 553 => [\'Versions','VersionsEventParameters'] }, + 'versionseventsoftwareagent' => { 553 => [\'Versions','VersionsEventSoftwareAgent'] }, + 'versionseventwhen' => { 553 => [\'Versions','VersionsEventWhen'] }, + 'versionsmodifier' => { 553 => [\'Versions','VersionsModifier'] }, + 'versionsmodifydate' => { 553 => [\'Versions','VersionsModifyDate'] }, + 'versionsversion' => { 553 => [\'Versions','VersionsVersion'] }, 'verticalafonbutton' => { 309 => '3.2', 310 => '47.2', 312 => '79.1', 327 => 0x11d, 328 => 0x135 }, 'verticalclockoverlaps' => { 145 => 0x412 }, 'verticalfuncbutton' => { 310 => '42.2', 312 => '67.1', 327 => 0x115, 328 => 0x12d }, @@ -7215,87 +7218,87 @@ my %tagLookup = ( 'verticalmultiselector' => { 310 => '42.1', 312 => '66.1', 313 => '66.1', 323 => '66.1', 327 => 0x18f, 328 => 0x1a7 }, 'verticalmultiselectorplaybackmode' => { 327 => 0x125, 328 => 0x13d }, 'vfdisplayillumination' => { 2 => 0x11, 90 => [0x510,0x51d] }, - 'vibrance' => { 514 => 'Vibrance', 521 => 'Vibrance', 523 => 'Vibrance' }, + 'vibrance' => { 516 => 'Vibrance', 523 => 'Vibrance', 525 => 'Vibrance' }, 'vibrationreduction' => { 273 => [0x75,0x82,0x1ae], 281 => '586.1', 288 => '590.2', 292 => 0x4 }, - 'videoalphamode' => { 550 => 'videoAlphaMode' }, - 'videoalphapremultiplecolor' => { 550 => 'videoAlphaPremultipleColor' }, - 'videoalphapremultiplecolora' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorA'] }, - 'videoalphapremultiplecolorb' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorB'] }, - 'videoalphapremultiplecolorblack' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlack'] }, - 'videoalphapremultiplecolorblue' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlue'] }, - 'videoalphapremultiplecolorcyan' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorCyan'] }, - 'videoalphapremultiplecolorgray' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGray'] }, - 'videoalphapremultiplecolorgreen' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGreen'] }, - 'videoalphapremultiplecolorl' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorL'] }, - 'videoalphapremultiplecolormagenta' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMagenta'] }, - 'videoalphapremultiplecolormode' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMode'] }, - 'videoalphapremultiplecolorred' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorRed'] }, - 'videoalphapremultiplecolorswatchname' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorSwatchName'] }, - 'videoalphapremultiplecolortint' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorTint'] }, - 'videoalphapremultiplecolortype' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorType'] }, - 'videoalphapremultiplecoloryellow' => { 550 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorYellow'] }, - 'videoalphaunityistransparent' => { 550 => 'videoAlphaUnityIsTransparent' }, - 'videobitrate' => { 535 => 'videoBitRate' }, - 'videobitratemode' => { 535 => 'videoBitRateMode' }, + 'videoalphamode' => { 552 => 'videoAlphaMode' }, + 'videoalphapremultiplecolor' => { 552 => 'videoAlphaPremultipleColor' }, + 'videoalphapremultiplecolora' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorA'] }, + 'videoalphapremultiplecolorb' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorB'] }, + 'videoalphapremultiplecolorblack' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlack'] }, + 'videoalphapremultiplecolorblue' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorBlue'] }, + 'videoalphapremultiplecolorcyan' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorCyan'] }, + 'videoalphapremultiplecolorgray' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGray'] }, + 'videoalphapremultiplecolorgreen' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorGreen'] }, + 'videoalphapremultiplecolorl' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorL'] }, + 'videoalphapremultiplecolormagenta' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMagenta'] }, + 'videoalphapremultiplecolormode' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorMode'] }, + 'videoalphapremultiplecolorred' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorRed'] }, + 'videoalphapremultiplecolorswatchname' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorSwatchName'] }, + 'videoalphapremultiplecolortint' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorTint'] }, + 'videoalphapremultiplecolortype' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorType'] }, + 'videoalphapremultiplecoloryellow' => { 552 => [\'videoAlphaPremultipleColor','videoAlphaPremultipleColorYellow'] }, + 'videoalphaunityistransparent' => { 552 => 'videoAlphaUnityIsTransparent' }, + 'videobitrate' => { 537 => 'videoBitRate' }, + 'videobitratemode' => { 537 => 'videoBitRateMode' }, 'videoburstmode' => { 354 => 0xbb }, 'videoburstresolution' => { 354 => 0xb3 }, 'videocodec' => { 72 => 0x74 }, - 'videocolorspace' => { 550 => 'videoColorSpace' }, + 'videocolorspace' => { 552 => 'videoColorSpace' }, 'videocompression' => { 133 => 0x3806 }, - 'videocompressor' => { 550 => 'videoCompressor' }, - 'videodisplayaspectratio' => { 535 => 'videoDisplayAspectRatio' }, - 'videoencodingprofile' => { 535 => 'videoEncodingProfile' }, - 'videofieldorder' => { 550 => 'videoFieldOrder' }, - 'videoframerate' => { 354 => 0x27, 550 => 'videoFrameRate' }, - 'videoframesize' => { 550 => 'videoFrameSize' }, - 'videoframesizeh' => { 550 => [\'videoFrameSize','videoFrameSizeH'] }, - 'videoframesizeunit' => { 550 => [\'videoFrameSize','videoFrameSizeUnit'] }, - 'videoframesizew' => { 550 => [\'videoFrameSize','videoFrameSizeW'] }, - 'videomoddate' => { 550 => 'videoModDate' }, - 'videopixelaspectratio' => { 550 => 'videoPixelAspectRatio' }, - 'videopixeldepth' => { 550 => 'videoPixelDepth' }, + 'videocompressor' => { 552 => 'videoCompressor' }, + 'videodisplayaspectratio' => { 537 => 'videoDisplayAspectRatio' }, + 'videoencodingprofile' => { 537 => 'videoEncodingProfile' }, + 'videofieldorder' => { 552 => 'videoFieldOrder' }, + 'videoframerate' => { 354 => 0x27, 552 => 'videoFrameRate' }, + 'videoframesize' => { 552 => 'videoFrameSize' }, + 'videoframesizeh' => { 552 => [\'videoFrameSize','videoFrameSizeH'] }, + 'videoframesizeunit' => { 552 => [\'videoFrameSize','videoFrameSizeUnit'] }, + 'videoframesizew' => { 552 => [\'videoFrameSize','videoFrameSizeW'] }, + 'videomoddate' => { 552 => 'videoModDate' }, + 'videopixelaspectratio' => { 552 => 'videoPixelAspectRatio' }, + 'videopixeldepth' => { 552 => 'videoPixelDepth' }, 'videopreburst' => { 354 => 0xc1 }, 'videoquality' => { 119 => 0x4003 }, 'videorecordingmode' => { 133 => 0x3803 }, - 'videoshottype' => { 535 => 'VideoShotType' }, - 'videoshottypeidentifier' => { 535 => [\'VideoShotType','VideoShotTypeIdentifier'] }, - 'videoshottypename' => { 535 => [\'VideoShotType','VideoShotTypeName'] }, - 'videostreamscount' => { 535 => 'videoStreamsCount' }, + 'videoshottype' => { 537 => 'VideoShotType' }, + 'videoshottypeidentifier' => { 537 => [\'VideoShotType','VideoShotTypeIdentifier'] }, + 'videoshottypename' => { 537 => [\'VideoShotType','VideoShotTypeName'] }, + 'videostreamscount' => { 537 => 'videoStreamsCount' }, 'viewfinder' => { 399 => 0x455 }, 'viewfinderdisplay' => { 309 => '12.4', 310 => '6.3' }, 'viewfinderwarning' => { 309 => '13.4', 319 => '3.5', 320 => '6.2', 324 => '4.4' }, 'viewfinderwarnings' => { 90 => 0x40a }, 'viewinfoduringexposure' => { 90 => 0x407 }, - 'viewingmode' => { 444 => 0x2f, 461 => 0x18 }, - 'viewingmode2' => { 444 => [0x85,0x285] }, + 'viewingmode' => { 446 => 0x2f, 463 => 0x18 }, + 'viewingmode2' => { 446 => [0x85,0x285] }, 'viewmodeshoweffectsofsettings' => { 253 => 0x7d2, 326 => 0x2a9 }, - 'viewpoint' => { 539 => 'viewpoint' }, - 'vignetteamount' => { 521 => 'VignetteAmount', 523 => 'VignetteAmount' }, + 'viewpoint' => { 541 => 'viewpoint' }, + 'vignetteamount' => { 523 => 'VignetteAmount', 525 => 'VignetteAmount' }, 'vignettecoefficient1' => { 293 => 0x24 }, 'vignettecoefficient2' => { 293 => 0x34 }, 'vignettecoefficient3' => { 293 => 0x44 }, 'vignettecontrol' => { 243 => 0x2a, 302 => 0x76a43205 }, 'vignettecontrolintensity' => { 302 => 0xac6bd5c0 }, - 'vignettecorrectionalreadyapplied' => { 518 => 'VignetteCorrectionAlreadyApplied' }, + 'vignettecorrectionalreadyapplied' => { 520 => 'VignetteCorrectionAlreadyApplied' }, 'vignettecorrectionversion' => { 293 => 0x0 }, - 'vignettemidpoint' => { 521 => 'VignetteMidpoint', 523 => 'VignetteMidpoint' }, - 'vignetting' => { 422 => 0x1011, 429 => 0xa052 }, - 'vignettingcorrection' => { 125 => 0x7031, 429 => 0xa053, 456 => 0x2011 }, - 'vignettingcorrparams' => { 125 => 0x7032, 487 => 0x64a, 488 => [0x34a,0x350,0x35c,0x368] }, - 'vignettingsetting' => { 429 => 0xa054 }, - 'virtualfocallength' => { 536 => 'VirtualFocalLength' }, + 'vignettemidpoint' => { 523 => 'VignetteMidpoint', 525 => 'VignetteMidpoint' }, + 'vignetting' => { 424 => 0x1011, 431 => 0xa052 }, + 'vignettingcorrection' => { 125 => 0x7031, 431 => 0xa053, 458 => 0x2011 }, + 'vignettingcorrparams' => { 125 => 0x7032, 489 => 0x64a, 490 => [0x34a,0x350,0x35c,0x368] }, + 'vignettingsetting' => { 431 => 0xa054 }, + 'virtualfocallength' => { 538 => 'VirtualFocalLength' }, 'virtualhorizonstyle' => { 325 => 0x161, 326 => 0x167, 327 => 0x167, 328 => 0x17f }, - 'virtualimagexcenter' => { 536 => 'VirtualImageXCenter' }, - 'virtualimageycenter' => { 536 => 'VirtualImageYCenter' }, - 'visualcolor' => { 535 => 'VisualColour' }, - 'visualtechnique' => { 539 => 'visualTechnique' }, - 'voicememo' => { 431 => 0x216 }, - 'volume' => { 540 => 'volume' }, + 'virtualimagexcenter' => { 538 => 'VirtualImageXCenter' }, + 'virtualimageycenter' => { 538 => 'VirtualImageYCenter' }, + 'visualcolor' => { 537 => 'VisualColour' }, + 'visualtechnique' => { 541 => 'visualTechnique' }, + 'voicememo' => { 433 => 0x216 }, + 'volume' => { 542 => 'volume' }, 'vr_0x66' => { 273 => 0x66 }, 'vrdoffset' => { 69 => 0xd0 }, 'vrmode' => { 247 => 0x342, 249 => 0x226, 250 => 0x226, 251 => 0x212, 252 => 0x226, 253 => 0x226, 292 => 0x6 }, 'vrtype' => { 292 => 0x8 }, - 'waterdepth' => { 125 => 0x9403, 528 => 'WaterDepth' }, + 'waterdepth' => { 125 => 0x9403, 530 => 'WaterDepth' }, 'wb_bluelevel3500k' => { 194 => 0x19a }, 'wb_bluelevel6500k' => { 194 => 0x18a }, 'wb_bluelevelcustom' => { 194 => 0x18e }, @@ -7320,8 +7323,8 @@ my %tagLookup = ( 'wb_glevel6000k' => { 334 => 0x11c }, 'wb_glevel6600k' => { 334 => 0x11d }, 'wb_glevel7500k' => { 334 => 0x11e }, - 'wb_grbglevels' => { 211 => 0x0, 463 => 0x7303 }, - 'wb_grbglevelsauto' => { 86 => 0x2, 463 => 0x7302 }, + 'wb_grbglevels' => { 211 => 0x0, 465 => 0x7303 }, + 'wb_grbglevelsauto' => { 86 => 0x2, 465 => 0x7302 }, 'wb_grbglevelscloudy' => { 86 => 0x12 }, 'wb_grbglevelscustom1' => { 86 => 0x42 }, 'wb_grbglevelscustom2' => { 86 => 0x4a }, @@ -7389,53 +7392,53 @@ my %tagLookup = ( 'wb_redlevelsshade' => { 194 => 0x168 }, 'wb_redlevelstungsten' => { 194 => 0xc0 }, 'wb_rgbglevels' => { 210 => 0x0 }, - 'wb_rgblevels' => { 194 => [0x546,0x96], 350 => 0xd, 351 => 0x413, 356 => 0x3036, 399 => 0x107, 465 => 0x117c, 466 => 0x1180, 467 => 0x115c, 468 => 0x11d8, 469 => 0x11b4, 470 => 0x106c, 471 => 0x264, 472 => 0x264, 473 => 0x252 }, + 'wb_rgblevels' => { 194 => [0x546,0x96], 350 => 0xd, 351 => 0x413, 356 => 0x3036, 399 => 0x107, 467 => 0x117c, 468 => 0x1180, 469 => 0x115c, 470 => 0x11d8, 471 => 0x11b4, 472 => 0x106c, 473 => 0x264, 474 => 0x264, 475 => 0x252 }, 'wb_rgblevels1' => { 361 => 0x2 }, 'wb_rgblevels2' => { 361 => 0x6 }, - 'wb_rgblevels2500k' => { 463 => 0x782d }, + 'wb_rgblevels2500k' => { 465 => 0x782d }, 'wb_rgblevels3' => { 361 => 0xa }, - 'wb_rgblevels3200k' => { 463 => 0x782c }, + 'wb_rgblevels3200k' => { 465 => 0x782c }, 'wb_rgblevels4' => { 361 => 0xe }, - 'wb_rgblevels4500k' => { 463 => [0x7484,0x7824] }, + 'wb_rgblevels4500k' => { 465 => [0x7484,0x7824] }, 'wb_rgblevels5' => { 361 => 0x12 }, 'wb_rgblevels6' => { 361 => 0x16 }, - 'wb_rgblevels6000k' => { 463 => 0x782b }, + 'wb_rgblevels6000k' => { 465 => 0x782b }, 'wb_rgblevels7' => { 361 => 0x1a }, - 'wb_rgblevels8500k' => { 463 => 0x782a }, - 'wb_rgblevelsauto' => { 433 => 0x0 }, - 'wb_rgblevelscloudy' => { 463 => [0x7481,0x7821] }, - 'wb_rgblevelscustom1' => { 433 => 0x15 }, - 'wb_rgblevelscustom2' => { 433 => 0x18 }, - 'wb_rgblevelscustom3' => { 433 => 0x1b }, - 'wb_rgblevelsdaylight' => { 433 => 0x3, 463 => [0x7480,0x7820] }, - 'wb_rgblevelsflash' => { 433 => 0x12, 463 => [0x7483,0x7823] }, - 'wb_rgblevelsfluorescent' => { 433 => 0xf, 463 => [0x7486,0x7826] }, - 'wb_rgblevelsfluorescentm1' => { 463 => 0x7829 }, - 'wb_rgblevelsfluorescentp1' => { 463 => 0x7827 }, - 'wb_rgblevelsfluorescentp2' => { 463 => 0x7828 }, - 'wb_rgblevelsincandescent' => { 433 => 0xc }, - 'wb_rgblevelsovercast' => { 433 => 0x9 }, - 'wb_rgblevelsshade' => { 433 => 0x6, 463 => 0x7825 }, - 'wb_rgblevelstungsten' => { 463 => [0x7482,0x7822] }, - 'wb_rgblevelsunknown0' => { 434 => 0x0 }, - 'wb_rgblevelsunknown1' => { 434 => 0x3 }, - 'wb_rgblevelsunknown2' => { 434 => 0x6 }, - 'wb_rgblevelsunknown3' => { 434 => 0x9 }, - 'wb_rgblevelsunknown4' => { 434 => 0xc }, - 'wb_rgblevelsunknown5' => { 434 => 0xf }, - 'wb_rgblevelsunknown6' => { 434 => 0x12 }, - 'wb_rgblevelsunknown7' => { 434 => 0x15 }, - 'wb_rgblevelsunknown8' => { 434 => 0x18 }, - 'wb_rgblevelsunknown9' => { 434 => 0x1b }, + 'wb_rgblevels8500k' => { 465 => 0x782a }, + 'wb_rgblevelsauto' => { 435 => 0x0 }, + 'wb_rgblevelscloudy' => { 465 => [0x7481,0x7821] }, + 'wb_rgblevelscustom1' => { 435 => 0x15 }, + 'wb_rgblevelscustom2' => { 435 => 0x18 }, + 'wb_rgblevelscustom3' => { 435 => 0x1b }, + 'wb_rgblevelsdaylight' => { 435 => 0x3, 465 => [0x7480,0x7820] }, + 'wb_rgblevelsflash' => { 435 => 0x12, 465 => [0x7483,0x7823] }, + 'wb_rgblevelsfluorescent' => { 435 => 0xf, 465 => [0x7486,0x7826] }, + 'wb_rgblevelsfluorescentm1' => { 465 => 0x7829 }, + 'wb_rgblevelsfluorescentp1' => { 465 => 0x7827 }, + 'wb_rgblevelsfluorescentp2' => { 465 => 0x7828 }, + 'wb_rgblevelsincandescent' => { 435 => 0xc }, + 'wb_rgblevelsovercast' => { 435 => 0x9 }, + 'wb_rgblevelsshade' => { 435 => 0x6, 465 => 0x7825 }, + 'wb_rgblevelstungsten' => { 465 => [0x7482,0x7822] }, + 'wb_rgblevelsunknown0' => { 436 => 0x0 }, + 'wb_rgblevelsunknown1' => { 436 => 0x3 }, + 'wb_rgblevelsunknown2' => { 436 => 0x6 }, + 'wb_rgblevelsunknown3' => { 436 => 0x9 }, + 'wb_rgblevelsunknown4' => { 436 => 0xc }, + 'wb_rgblevelsunknown5' => { 436 => 0xf }, + 'wb_rgblevelsunknown6' => { 436 => 0x12 }, + 'wb_rgblevelsunknown7' => { 436 => 0x15 }, + 'wb_rgblevelsunknown8' => { 436 => 0x18 }, + 'wb_rgblevelsunknown9' => { 436 => 0x1b }, 'wb_rgbmuldaylight' => { 145 => 0x852 }, 'wb_rgbmulflash' => { 145 => 0x855 }, 'wb_rgbmulfluorescent' => { 145 => 0x854 }, 'wb_rgbmultungsten' => { 145 => 0x853 }, 'wb_rggbblacklevels' => { 38 => 0x25 }, - 'wb_rggblevels' => { 125 => 0x7313, 197 => 0x4, 209 => 0x0, 213 => 0x13e8, 214 => 0x38, 463 => 0x7313 }, + 'wb_rggblevels' => { 125 => 0x7313, 197 => 0x4, 209 => 0x0, 213 => 0x13e8, 214 => 0x38, 465 => 0x7313 }, 'wb_rggblevelsasshot' => { 41 => 0x0, 42 => 0x0, 43 => 0x19, 44 => 0x55, 45 => 0x69, 46 => 0x69, 47 => 0x22, 48 => 0x3f, 51 => 0x3f, 52 => 0x3f, 53 => 0x3f, 54 => 0x47 }, - 'wb_rggblevelsauto' => { 38 => 0x1, 41 => 0x5, 42 => 0x8, 43 => 0x1e, 44 => 0x5a, 45 => 0x6e, 47 => 0x18, 48 => 0x44, 51 => 0x44, 52 => 0x44, 53 => 0x44, 54 => 0x4c, 213 => 0x1478, 214 => 0x114, 429 => 0xa022, 463 => 0x7312 }, - 'wb_rggblevelsblack' => { 429 => 0xa028 }, + 'wb_rggblevelsauto' => { 38 => 0x1, 41 => 0x5, 42 => 0x8, 43 => 0x1e, 44 => 0x5a, 45 => 0x6e, 47 => 0x18, 48 => 0x44, 51 => 0x44, 52 => 0x44, 53 => 0x44, 54 => 0x4c, 213 => 0x1478, 214 => 0x114, 431 => 0xa022, 465 => 0x7312 }, + 'wb_rggblevelsblack' => { 431 => 0xa028 }, 'wb_rggblevelscloudy' => { 38 => 0xd, 41 => 0x1e, 42 => 0x30, 43 => 0x2d, 44 => 0xa0, 45 => 0xd7, 46 => 0x78, 47 => 0x31, 48 => 0x58, 51 => 0x71, 52 => 0x8a, 53 => 0x8f, 54 => 0x92, 213 => 0x1408, 214 => 0x60, 390 => 0x20f, 398 => 0x14 }, 'wb_rggblevelscustom' => { 38 => 0x1d, 48 => 0x80, 213 => 0x1468, 214 => 0x100 }, 'wb_rggblevelscustom1' => { 43 => 0x41 }, @@ -7448,8 +7451,8 @@ my %tagLookup = ( 'wb_rggblevelsfluorescentn' => { 214 => 0xb0, 390 => 0x212, 398 => 0x2f }, 'wb_rggblevelsfluorescentw' => { 213 => 0x1438, 214 => 0x9c, 390 => 0x213, 398 => 0x38 }, 'wb_rggblevelshtmercury' => { 214 => 0xd8 }, - 'wb_rggblevelsilluminator1' => { 429 => 0xa023 }, - 'wb_rggblevelsilluminator2' => { 429 => 0xa024 }, + 'wb_rggblevelsilluminator1' => { 431 => 0xa023 }, + 'wb_rggblevelsilluminator2' => { 431 => 0xa024 }, 'wb_rggblevelskelvin' => { 38 => 0x21, 41 => 0x2d, 42 => 0x48, 44 => 0xaf, 45 => 0xe6, 47 => 0x40, 48 => 0x67, 51 => 0x80, 52 => 0x99, 53 => 0x9e, 54 => 0xa1 }, 'wb_rggblevelsmeasured' => { 41 => 0xa, 42 => 0x10, 44 => 0x5f, 45 => 0x73, 48 => 0x49, 51 => 0x49, 52 => 0x49, 53 => 0x49, 54 => 0x51 }, 'wb_rggblevelspc1' => { 47 => 0x90, 48 => 0x71 }, @@ -7457,7 +7460,7 @@ my %tagLookup = ( 'wb_rggblevelspc3' => { 47 => 0x9a, 48 => 0x7b }, 'wb_rggblevelsshade' => { 38 => 0x9, 41 => 0x19, 42 => 0x28, 43 => 0x28, 44 => 0x9b, 45 => 0xd2, 46 => 0x73, 47 => 0x2c, 48 => 0x53, 51 => 0x6c, 52 => 0x85, 53 => 0x8a, 54 => 0x8d, 214 => 0x74, 390 => 0x20e, 398 => 0xb }, 'wb_rggblevelstungsten' => { 38 => 0x11, 41 => 0x23, 42 => 0x38, 43 => 0x32, 44 => 0xa5, 45 => 0xdc, 46 => 0x7d, 47 => 0x36, 48 => 0x5d, 51 => 0x76, 52 => 0x8f, 53 => 0x94, 54 => 0x97, 213 => 0x1428, 214 => 0x88, 390 => 0x210, 398 => 0x1d }, - 'wb_rggblevelsuncorrected' => { 429 => 0xa021 }, + 'wb_rggblevelsuncorrected' => { 431 => 0xa021 }, 'wb_rggblevelsunknown' => { 41 => 0xf, 42 => 0x18, 44 => 0x64, 45 => 0x78, 47 => 0x1d, 51 => 0x4e, 52 => 0x4e, 53 => 0x4e, 54 => 0x56, 398 => 0x53 }, 'wb_rggblevelsunknown10' => { 41 => 0x5f, 42 => 0x98, 44 => 0x91, 45 => 0xa5, 46 => 0xb4, 47 => 0x72, 51 => 0x9e, 52 => 0x7b, 53 => 0x7b, 54 => 0x83 }, 'wb_rggblevelsunknown11' => { 41 => 0x64, 42 => 0xa0, 44 => 0xb9, 45 => [0xaa,0xaf], 46 => 0xb9, 47 => 0x77, 51 => 0xa3, 52 => 0xa3, 53 => 0x80, 54 => 0xab }, @@ -7505,7 +7508,7 @@ my %tagLookup = ( 'wbbluelevel' => { 349 => 0x324, 354 => 0x8006, 359 => 0x26 }, 'wbbracketingsteps' => { 205 => 0x10, 206 => 0x10, 282 => 0x174d }, 'wbbracketmode' => { 61 => 0x9 }, - 'wbbracketshotnumber' => { 194 => 0x2b, 422 => 0x101a }, + 'wbbracketshotnumber' => { 194 => 0x2b, 424 => 0x101a }, 'wbbracketvalueab' => { 61 => 0xc }, 'wbbracketvaluegm' => { 61 => 0xd }, 'wbbutton' => { 250 => 0x806, 253 => 0x80a }, @@ -7519,8 +7522,8 @@ my %tagLookup = ( 'wbredlevel' => { 349 => 0x322, 354 => 0x8004, 359 => 0x24 }, 'wbscale' => { 197 => 0x0 }, 'wbshiftab' => { 79 => 0xc, 354 => 0x46, 371 => 0x10 }, - 'wbshiftab_gm' => { 456 => 0x2014 }, - 'wbshiftab_gm_precise' => { 456 => 0x2026 }, + 'wbshiftab_gm' => { 458 => 0x2014 }, + 'wbshiftab_gm_precise' => { 458 => 0x2026 }, 'wbshiftcreativecontrol' => { 354 => 0x92 }, 'wbshiftgm' => { 79 => 0xd, 354 => 0x47, 371 => 0x11 }, 'wbshiftintelligentauto' => { 354 => 0x8b }, @@ -7531,10 +7534,10 @@ my %tagLookup = ( 'wbtype5' => { 360 => 0xd, 361 => 0x11 }, 'wbtype6' => { 360 => 0x10, 361 => 0x15 }, 'wbtype7' => { 360 => 0x13, 361 => 0x19 }, - 'webstatement' => { 554 => 'WebStatement' }, - 'weightedflatsubject' => { 512 => 'weightedFlatSubject' }, - 'what' => { 521 => 'What', 523 => 'What' }, - 'whitebalance' => { 7 => 0x6f, 8 => [0x44,0x4a], 9 => 0xbc, 10 => 0x36, 11 => 0x5e, 12 => 0x36, 13 => 0x78, 14 => 0x6f, 15 => 0x6f, 16 => 0x73, 17 => 0x6f, 18 => 0x78, 19 => 0x54, 20 => 0x6f, 21 => 0xbc, 22 => 0x7b, 24 => 0xbc, 25 => 0xc2, 27 => 0x131, 28 => 0x77, 79 => 0x8, 82 => 0x7, 118 => 0x7, 119 => [0x19,0x2012], 125 => [0xa403,0xfe4e], 133 => 0x1002, 145 => 0x3fc, 146 => 0xfa0d, 147 => 0x40, 158 => 0x1a, 188 => 0x3, 189 => 0xe, 190 => 0x4, 191 => 0xb, 193 => 0x115, 243 => 0x5, 291 => 0x7, 349 => 0x304, 354 => 0x3, 356 => 0x3033, 390 => 0x19, 397 => 0x7, 421 => 0x26, 422 => 0x1003, 432 => [0x88,0x3c,0x7,0x58], 442 => 0xf, 443 => 0xe, 456 => [0x115,0xb054], 521 => 'WhiteBalance', 523 => 'WhiteBalance', 527 => 'WhiteBalance' }, + 'webstatement' => { 556 => 'WebStatement' }, + 'weightedflatsubject' => { 514 => 'weightedFlatSubject' }, + 'what' => { 523 => 'What', 525 => 'What' }, + 'whitebalance' => { 7 => 0x6f, 8 => [0x44,0x4a], 9 => 0xbc, 10 => 0x36, 11 => 0x5e, 12 => 0x36, 13 => 0x78, 14 => 0x6f, 15 => 0x6f, 16 => 0x73, 17 => 0x6f, 18 => 0x78, 19 => 0x54, 20 => 0x6f, 21 => 0xbc, 22 => 0x7b, 24 => 0xbc, 25 => 0xc2, 27 => 0x131, 28 => 0x77, 79 => 0x8, 82 => 0x7, 118 => 0x7, 119 => [0x19,0x2012], 125 => [0xa403,0xfe4e], 133 => 0x1002, 145 => 0x3fc, 146 => 0xfa0d, 147 => 0x40, 158 => 0x1a, 188 => 0x3, 189 => 0xe, 190 => 0x4, 191 => 0xb, 193 => 0x115, 243 => 0x5, 291 => 0x7, 349 => 0x304, 354 => 0x3, 356 => 0x3033, 390 => 0x19, 397 => 0x7, 423 => 0x26, 424 => 0x1003, 434 => [0x88,0x3c,0x7,0x58], 444 => 0xf, 445 => 0xe, 458 => [0x115,0xb054], 523 => 'WhiteBalance', 525 => 'WhiteBalance', 529 => 'WhiteBalance' }, 'whitebalance0' => { 183 => 'WhiteBalance0' }, 'whitebalance1' => { 183 => 'WhiteBalance1' }, 'whitebalance2' => { 183 => 'WhiteBalance2', 330 => 0x500 }, @@ -7543,81 +7546,81 @@ my %tagLookup = ( 'whitebalancebias' => { 119 => 0x2011, 335 => 0x304, 354 => 0x23 }, 'whitebalanceblue' => { 79 => 0x7 }, 'whitebalancebracket' => { 330 => 0x502, 335 => 0x303 }, - 'whitebalancebracketing' => { 191 => 0x22, 194 => 0x2c, 453 => 0x2c }, + 'whitebalancebracketing' => { 191 => 0x22, 194 => 0x2c, 455 => 0x2c }, 'whitebalancebuttonplaybackmode' => { 327 => 0x1c5, 328 => 0x1dd }, 'whitebalancecomp' => { 338 => 0x1001 }, 'whitebalancedetected' => { 145 => 0x3fb }, - 'whitebalancefinetune' => { 133 => 0x100a, 191 => 0x38, 193 => 0x112, 243 => [0xb,0x3f], 422 => 0x1004, 442 => 0x6, 443 => 0x5, 456 => 0x112 }, + 'whitebalancefinetune' => { 133 => 0x100a, 191 => 0x38, 193 => 0x112, 243 => [0xb,0x3f], 424 => 0x1004, 444 => 0x6, 445 => 0x5, 458 => 0x112 }, 'whitebalancemode' => { 145 => 0x3fa, 390 => 0x1a }, 'whitebalancered' => { 79 => 0x6 }, 'whitebalanceset' => { 370 => 0xa }, - 'whitebalancesetting' => { 191 => 0x23, 442 => 0x5, 443 => 0x4, 444 => 0x16, 461 => 0xd }, - 'whitebalancesetup' => { 429 => 0x41 }, + 'whitebalancesetting' => { 191 => 0x23, 444 => 0x5, 445 => 0x4, 446 => 0x16, 463 => 0xd }, + 'whitebalancesetup' => { 431 => 0x41 }, 'whitebalancetemperature' => { 330 => 0x501 }, 'whiteboard' => { 335 => 0x301 }, - 'whitelevel' => { 125 => 0xc61d, 390 => 0x7e, 463 => 0x787f }, - 'whitepoint' => { 125 => 0x13e, 353 => 0x35d, 390 => 0x201, 546 => 'WhitePoint' }, - 'whites2012' => { 521 => 'Whites2012', 523 => 'Whites2012' }, - 'whitesadj' => { 493 => 0x9017 }, - 'wideadapter' => { 422 => 0x1017 }, + 'whitelevel' => { 125 => 0xc61d, 390 => 0x7e, 465 => 0x787f }, + 'whitepoint' => { 125 => 0x13e, 353 => 0x35d, 390 => 0x201, 548 => 'WhitePoint' }, + 'whites2012' => { 523 => 'Whites2012', 525 => 'Whites2012' }, + 'whitesadj' => { 495 => 0x9017 }, + 'wideadapter' => { 424 => 0x1017 }, 'widefocuszone' => { 188 => 0x2f }, - 'widerange' => { 431 => 0x20f }, + 'widerange' => { 433 => 0x20f }, 'windmode' => { 145 => 0x3f4 }, 'windnoisereduction' => { 249 => 0x352, 250 => 0x352, 251 => 0x2d6, 252 => 0x2fe, 253 => 0x2fe }, - 'windowlocation' => { 415 => 'WLOC' }, - 'windowsatom' => { 522 => 'windowsAtom' }, - 'windowsatomextension' => { 522 => [\'windowsAtom','windowsAtomExtension'] }, - 'windowsatominvocationflags' => { 522 => [\'windowsAtom','windowsAtomInvocationFlags'] }, - 'windowsatomuncprojectpath' => { 522 => [\'windowsAtom','windowsAtomUncProjectPath'] }, - 'wordcount' => { 540 => 'wordCount' }, - 'work' => { 407 => "\xa9wrk" }, + 'windowlocation' => { 416 => 'WLOC' }, + 'windowsatom' => { 524 => 'windowsAtom' }, + 'windowsatomextension' => { 524 => [\'windowsAtom','windowsAtomExtension'] }, + 'windowsatominvocationflags' => { 524 => [\'windowsAtom','windowsAtomInvocationFlags'] }, + 'windowsatomuncprojectpath' => { 524 => [\'windowsAtom','windowsAtomUncProjectPath'] }, + 'wordcount' => { 542 => 'wordCount' }, + 'work' => { 408 => "\xa9wrk" }, 'workcolorspace' => { 109 => 0x10200, 114 => 0x270 }, - 'workflowtag' => { 535 => 'WorkflowTag' }, - 'workflowtagcvid' => { 535 => [\'WorkflowTag','WorkflowTagCvId'] }, - 'workflowtagcvtermid' => { 535 => [\'WorkflowTag','WorkflowTagCvTermId'] }, - 'workflowtagcvtermname' => { 535 => [\'WorkflowTag','WorkflowTagCvTermName'] }, - 'workflowtagcvtermrefinedabout' => { 535 => [\'WorkflowTag','WorkflowTagCvTermRefinedAbout'] }, - 'worktodo' => { 529 => 'WorkToDo' }, + 'workflowtag' => { 537 => 'WorkflowTag' }, + 'workflowtagcvid' => { 537 => [\'WorkflowTag','WorkflowTagCvId'] }, + 'workflowtagcvtermid' => { 537 => [\'WorkflowTag','WorkflowTagCvTermId'] }, + 'workflowtagcvtermname' => { 537 => [\'WorkflowTag','WorkflowTagCvTermName'] }, + 'workflowtagcvtermrefinedabout' => { 537 => [\'WorkflowTag','WorkflowTagCvTermRefinedAbout'] }, + 'worktodo' => { 531 => 'WorkToDo' }, 'worldtimelocation' => { 354 => 0x3a, 390 => 0x22, 396 => '0.1' }, 'writer' => { 186 => 'WM/Writer' }, 'writer-editor' => { 138 => 0x7a }, - 'x3filllight' => { 432 => 0x12 }, + 'x3filllight' => { 434 => 0x12 }, 'xattrmditemwherefroms' => { 181 => 'com.apple.metadata:kMDItemWhereFroms' }, 'xattrquarantine' => { 181 => 'com.apple.quarantine' }, - 'xiaomiexifinfo' => { 409 => 'xiaomi.exifInfo.videoinfo' }, - 'xiaomihdr10' => { 409 => 'com.xiaomi.hdr10' }, + 'xiaomiexifinfo' => { 410 => 'xiaomi.exifInfo.videoinfo' }, + 'xiaomihdr10' => { 410 => 'com.xiaomi.hdr10' }, 'xiaomimodel' => { 125 => 0x9a00 }, - 'xiaomipreviewvideocover' => { 409 => 'com.xiaomi.preview_video_cover' }, + 'xiaomipreviewvideocover' => { 410 => 'com.xiaomi.preview_video_cover' }, 'xiaomisettings' => { 125 => 0x9999 }, 'xilinxversion' => { 145 => 0x414 }, 'xml' => { 143 => 'xml ' }, 'xmp' => { 112 => 0xffff00f6, 126 => 'XMP', 136 => 'XMP Data/XMP' }, - 'xmptoolkit' => { 547 => 'xmptk' }, + 'xmptoolkit' => { 549 => 'xmptk' }, 'xpauthor' => { 125 => 0x9c9d }, 'xpcomment' => { 125 => 0x9c9c }, 'xpkeywords' => { 125 => 0x9c9e }, 'xposition' => { 125 => 0x11e }, 'xpsubject' => { 125 => 0x9c9f }, 'xptitle' => { 125 => 0x9c9b }, - 'xresolution' => { 125 => 0x11a, 141 => 0x3, 405 => 0x0, 546 => 'XResolution' }, + 'xresolution' => { 125 => 0x11a, 141 => 0x3, 405 => 0x0, 548 => 'XResolution' }, 'xyresolution' => { 129 => 0x3 }, - 'yaw' => { 121 => 0x7, 415 => ['_yaw',"\xa9fyw"] }, - 'yawangle' => { 258 => 0x8, 427 => 0x0 }, - 'ycbcrcoefficients' => { 125 => 0x211, 546 => 'YCbCrCoefficients' }, - 'ycbcrpositioning' => { 125 => 0x213, 546 => 'YCbCrPositioning' }, - 'ycbcrsubsampling' => { 125 => 0x212, 546 => 'YCbCrSubSampling' }, - 'year' => { 407 => 'yrrc', 409 => 'year', 415 => 'yrrc' }, + 'yaw' => { 121 => 0x7, 416 => ['_yaw',"\xa9fyw"] }, + 'yawangle' => { 258 => 0x8, 429 => 0x0 }, + 'ycbcrcoefficients' => { 125 => 0x211, 548 => 'YCbCrCoefficients' }, + 'ycbcrpositioning' => { 125 => 0x213, 548 => 'YCbCrPositioning' }, + 'ycbcrsubsampling' => { 125 => 0x212, 548 => 'YCbCrSubSampling' }, + 'year' => { 408 => 'yrrc', 410 => 'year', 416 => 'yrrc' }, 'yearcreated' => { 147 => 0x10, 156 => 0xc }, 'yellowhsl' => { 109 => 0x20912 }, - 'yield' => { 542 => 'yield' }, + 'yield' => { 544 => 'yield' }, 'yposition' => { 125 => 0x11f }, - 'yresolution' => { 125 => 0x11b, 141 => 0x5, 405 => 0x4, 546 => 'YResolution' }, + 'yresolution' => { 125 => 0x11b, 141 => 0x5, 405 => 0x4, 548 => 'YResolution' }, 'zebrapatterntonerange' => { 326 => 0x211, 327 => 0x211, 328 => 0x229 }, 'zoneidentifier' => { 126 => 'ZoneIdentifier' }, - 'zonematching' => { 193 => 0x10a, 196 => [0x3a,0x4a], 456 => 0xb024 }, + 'zonematching' => { 193 => 0x10a, 196 => [0x3a,0x4a], 458 => 0xb024 }, 'zonematchingmode' => { 191 => 0x14 }, 'zonematchingon' => { 190 => 0x75 }, - 'zonematchingvalue' => { 442 => 0x1f }, + 'zonematchingvalue' => { 444 => 0x1f }, 'zoomedpreviewlength' => { 335 => 0xf05 }, 'zoomedpreviewsize' => { 335 => 0xf06 }, 'zoomedpreviewstart' => { 335 => 0xf04 }, @@ -7780,6 +7783,7 @@ my %tagExists = ( 'alphafiltering' => 1, 'alphaidentifiers' => 1, 'alphainterlace' => 1, + 'alphaisused' => 1, 'alphamask' => 1, 'alphaoffset' => 1, 'alphapreprocessing' => 1, @@ -7931,6 +7935,7 @@ my %tagExists = ( 'audioinfo' => 1, 'audioinputbuffersize' => 1, 'audioisinitialized' => 1, + 'audiokeys' => 1, 'audiolayer' => 1, 'audiolevel' => 1, 'audiomaxbitrate' => 1, @@ -8731,6 +8736,7 @@ my %tagExists = ( 'convergencebaseimage' => 1, 'convergencedistance' => 1, 'conversationid' => 1, + 'coordinateunits' => 1, 'coproducer' => 1, 'copyrightfilename' => 1, 'copyrightlen' => 1, @@ -9296,6 +9302,7 @@ my %tagExists = ( 'events' => 1, 'eventstarttime' => 1, 'evstepinfo' => 1, + 'exefilename' => 1, 'exif_profile' => 1, 'exifdata' => 1, 'exifex' => 1, @@ -9871,6 +9878,7 @@ my %tagExists = ( 'hdrgaincurve' => 1, 'hdrgainmap' => 1, 'hdrgm' => 1, + 'hdrimage' => 1, 'hdrinfo' => 1, 'hdrinfo2' => 1, 'hdrinfoversion' => 1, @@ -10257,6 +10265,7 @@ my %tagExists = ( 'jpsseparation' => 1, 'jpstype' => 1, 'jsondata' => 1, + 'jsoninfo' => 1, 'jsonmetadata' => 1, 'jumbf' => 1, 'jumbfbox' => 1, @@ -10547,6 +10556,7 @@ my %tagExists = ( 'magmode' => 1, 'magneticfield' => 1, 'magneticheading' => 1, + 'magneticvariation' => 1, 'magnetometer' => 1, 'magnetometerxyz' => 1, 'magnification' => 1, @@ -11341,6 +11351,10 @@ my %tagExists = ( 'paymenturl' => 1, 'pcscitation' => 1, 'pdahistogram' => 1, + 'pdbage' => 1, + 'pdbcreatedate' => 1, + 'pdbfilename' => 1, + 'pdbmodifydate' => 1, 'pdf' => 1, 'pdfx' => 1, 'pdrversion' => 1, @@ -12141,6 +12155,7 @@ my %tagExists = ( 'sequencenumberrandomoffset' => 1, 'sequenceoffset' => 1, 'serialinfo' => 1, + 'serialnumber2' => 1, 'seriesuid' => 1, 'serviceid' => 1, 'serviceorganizationname' => 1, @@ -12816,8 +12831,6 @@ my %tagExists = ( 'unknown03' => 1, 'unknown_cndb' => 1, 'unknown_grpl' => 1, - 'unknown_h' => 1, - 'unknown_m' => 1, 'unknown_slmt' => 1, 'unknownd30' => 1, 'unknowndata' => 1, @@ -12955,6 +12968,7 @@ my %tagExists = ( 'videofullrangeflag' => 1, 'videoheader' => 1, 'videoheight' => 1, + 'videokeys' => 1, 'videolength' => 1, 'videomaxbitrate' => 1, 'videomaxframerate' => 1, @@ -12992,6 +13006,7 @@ my %tagExists = ( 'visibleoutputs' => 1, 'vistaidlistdata' => 1, 'visualflightruleshud' => 1, + 'vivo' => 1, 'vmaphandling' => 1, 'vmcoldropthresh' => 1, 'vmcolthresh' => 1, @@ -13509,7 +13524,7 @@ Provides a fast, case insensitive lookup for tag names. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod index f97ccdc..cb83d4d 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod @@ -12,7 +12,7 @@ meta information extracted from or written to a file. =head1 TAG TABLES The tables listed below give the names of all tags recognized by ExifTool. -They contain a total of 28224 tags, with 17515 unique tag names. +They contain a total of 28259 tags, with 17525 unique tag names. B<Tag ID>, B<Index#> or B<Sequence> is given in the first column of each table. A B<Tag ID> is the computer-readable equivalent of a tag name, and @@ -171,6 +171,7 @@ L<https://www.w3.org/Graphics/JPEG/jfif3.pdf> for the JPEG specification. PhotoMechanic PhotoMechanic MIE MIE Samsung Samsung Trailer + Vivo Vivo EmbeddedVideo no Insta360 no NikonApp no @@ -7431,6 +7432,7 @@ These tags are used in Panasonic/Leica cameras. 0x00d6 NoiseReductionStrength rational64s 0x00e4 LensTypeModel int16u 0x00e8 MinimumISO int32u + 0x00e9 AFSubjectDetection int16u 0x00ee DynamicRangeBoost int16u 0x0e00 PrintIM PrintIM 0x2003 TimeInfo Panasonic TimeInfo @@ -12971,32 +12973,72 @@ Thermal parameters extracted from APP4 of some DJI RJPEG files. =head3 DJI Protobuf Tags -Tags found in protobuf-format DJI meta djmd and dbgi timed metadata. Only a -few tags are currently known, but unknown djmd tags may be extracted by -setting the Unknown option to 1 (or 2 to also extract unknown dbgi debug -tags). Tag ID's are composed of the corresponding .proto file name combined -with the hierarchical protobuf field numbers. The "dvtm_AVATA2.proto" file -is used by the DJI Avanta 2, and "dvtm_ac203.proto" by the OsmoAction4. +Tags found in protobuf-format DJI djmd and dbgi timed metadata. The known +tags listed below are extracted by default, but unknown djmd tags may be +extracted as well by setting the Unknown option to 1, or 2 to also extract +unknown dbgi debug tags. Tag ID's are composed of the corresponding .proto +file name combined with the hierarchical protobuf field numbers. - Tag ID Tag Name Writable - ------ -------- -------- - 'Protocol' Protocol no - 'dvtm_AVATA2_1-1-10' Model no - 'dvtm_AVATA2_2-2-3-1' SerialNumber no - 'dvtm_AVATA2_2-3-1' FrameWidth no - 'dvtm_AVATA2_2-3-2' FrameHeight no - 'dvtm_AVATA2_2-3-3' FrameRate no - 'dvtm_AVATA2_3-1-2' TimeStamp no - 'dvtm_AVATA2_3-4-4-1-2' GPSLatitude no - 'dvtm_AVATA2_3-4-4-1-3' GPSLongitude no - 'dvtm_ac203_1-1-10' Model no - 'dvtm_ac203_2-3-1' FrameWidth no - 'dvtm_ac203_2-3-2' FrameHeight no - 'dvtm_ac203_2-3-3' FrameRate no - 'dvtm_ac203_3-4-2-1-2' GPSLatitude no - 'dvtm_ac203_3-4-2-1-3' GPSLongitude no - 'dvtm_ac203_3-4-2-2' GPSAltitude no - 'dvtm_ac203_3-4-2-6-1' GPSDateTime no +ExifTool currently extracts timed GPS plus a few other tags from DJI devices +which use the following protocols: dvtm_AVATA2.proto (Avanta 2), +dvtm_ac203.proto (Osmo Action 4), dvtm_ac204.proto (Osmo Action 5) and +dvtm_wm265e.proto (Mavic 3). + +Note that with the protobuf format, numerical tags missing from the output +for a given protocol should be considered to have the default value of 0. + + Tag ID Tag Name Writable + ------ -------- -------- + 'Protocol' Protocol no + 'dvtm_AVATA2_1-1-5' SerialNumber no + 'dvtm_AVATA2_1-1-10' Model no + 'dvtm_AVATA2_2-2-3-1' SerialNumber2 no + 'dvtm_AVATA2_2-3' FrameInfo DJI FrameInfo + 'dvtm_AVATA2_3-1-2' TimeStamp no + 'dvtm_AVATA2_3-4-4-1' GPSInfo DJI GPSInfo + 'dvtm_ac203_1-1-5' SerialNumber no + 'dvtm_ac203_1-1-10' Model no + 'dvtm_ac203_2-3' FrameInfo DJI FrameInfo + 'dvtm_ac203_3-4-2-1' GPSInfo DJI GPSInfo + 'dvtm_ac203_3-4-2-2' GPSAltitude no + 'dvtm_ac203_3-4-2-6-1' GPSDateTime no + 'dvtm_ac204_1-1-5' SerialNumber no + 'dvtm_ac204_1-1-10' Model no + 'dvtm_ac204_2-3' FrameInfo DJI FrameInfo + 'dvtm_ac204_3-4-2-1' GPSInfo DJI GPSInfo + 'dvtm_ac204_3-4-2-2' GPSAltitude no + 'dvtm_ac204_3-4-2-6-1' GPSDateTime no + 'dvtm_wm265e_1-1-5' SerialNumber no + 'dvtm_wm265e_1-1-10' Model no + 'dvtm_wm265e_2-2' FrameInfo DJI FrameInfo + 'dvtm_wm265e_3-2-2-1' ISO no + 'dvtm_wm265e_3-2-3-1' ShutterSpeed no + 'dvtm_wm265e_3-2-6-1' DigitalZoom no + 'dvtm_wm265e_3-3-3-1' DroneRoll no + 'dvtm_wm265e_3-3-3-2' DronePitch no + 'dvtm_wm265e_3-3-3-3' DroneYaw no + 'dvtm_wm265e_3-3-4-1' GPSInfo DJI GPSInfo + 'dvtm_wm265e_3-3-4-2' AbsoluteAltitude no + 'dvtm_wm265e_3-3-5-1' RelativeAltitude no + 'dvtm_wm265e_3-4-3-1' GimbalPitch no + 'dvtm_wm265e_3-4-3-2' GimbalRoll no + 'dvtm_wm265e_3-4-3-3' GimbalYaw no + +=head3 DJI FrameInfo Tags + + Tag ID Tag Name Writable + ------ -------- -------- + 1 FrameWidth no + 2 FrameHeight no + 3 FrameRate no + +=head3 DJI GPSInfo Tags + + Tag ID Tag Name Writable + ------ -------- -------- + 1 CoordinateUnits no + 2 GPSLatitude no + 3 GPSLongitude no =head2 FLIR Tags @@ -17879,17 +17921,20 @@ These tags are used by the D4S, D750, D810, D5500, D7200 (FlashInfoVersion =head3 Nikon AFInfo2V0400 Tags +AF information for Nikon cameras with the Expeed 7 processor: The Zf, Z6_3, +Z8, Z9 and Z50_3. + Index1 Tag Name Writable ------ -------- -------- 0 AFInfo2Version no 5 AFAreaMode int8u 10 AFPointsUsed undef[51] + AFPointsUsed undef[35] + AFPointsUsed undef[27] 62 AFImageWidth int16u 64 AFImageHeight int16u 66 AFAreaXPosition int16u - 67 FocusPositionHorizontal int8u~ 68 AFAreaYPosition int16u - 69 FocusPositionVertical int8u~ 70 AFAreaWidth int16u 72 AFAreaHeight int16u 74 FocusResult int8u @@ -23657,6 +23702,16 @@ Tags written by the Sony Image Data Converter utility in ARW images. 0xd100 VersionCreateDate string 0xd101 VersionModifyDate string +=head2 Vivo Tags + +Proprietary information written by some Vivo phones. + + Tag Name Writable + -------- -------- + HDRImage no + HiddenData no + JSONInfo no + =head2 Unknown Tags The following tags are decoded in unsupported maker notes. Use the Unknown @@ -29945,15 +30000,16 @@ appropriate table in the config file (see example.config in the full distribution for an example). Note that some tags with the same name but different ID's may exist in the same location, but the family 7 group names may be used to -differentiate these. ExifTool currently writes only top-level metadata in -QuickTime-based files; it extracts other track-specific and timed metadata, -but can not yet edit tags in these locations (with the exception of -track-level date/time tags). +differentiate these. -Beware that the Keys tags are actually stored inside the ItemList in the -file, so deleting the ItemList group as a block (ie. C<-ItemList:all=>) also -deletes Keys tags. Instead, to preserve Keys tags the ItemList tags may be -deleted individually with C<-QuickTime:ItemList:all=>. +ExifTool currently writes +L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and +L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> only as +top-level metadata, but select Keys tags are may be written to the audio or +video track. See the +L<AudioKeys|Image::ExifTool::TagNames/QuickTime AudioKeys Tags> and +L<VideoKeys|Image::ExifTool::TagNames/QuickTime VideoKeys Tags> tags for +more information. Alternate language tags may be accessed for L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and @@ -29965,8 +30021,8 @@ L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> tags support a language code, but without a country code. If no language code is specified when writing, the default language is written and alternate languages for the tag are deleted. Use the "und" language code to write the default -language without deleting alternate languages. Note that "eng" is treated -as a default language when reading, but not when writing. +language without deleting alternate languages. Note that when reading, +"eng" is also treated as the default language if there is no country code. According to the specification, integer-format QuickTime date/time tags should be stored as UTC. Unfortunately, digital cameras often store local @@ -30051,7 +30107,7 @@ for the official QuickTime specification. The tags below are extracted from timed metadata in QuickTime and other formats of video files when the ExtractEmbedded option is used. Although most of these tags are combined into the single table below, ExifTool -currently reads 96 different types of timed GPS metadata from video files. +currently reads 100 different types of timed GPS metadata from video files. Tag Name Writable -------- -------- @@ -30089,6 +30145,7 @@ currently reads 96 different types of timed GPS metadata from video files. ISO no JpgFromRaw no KiloCalories no + MagneticVariation no PreviewImage no PreviewInfo QuickTime PreviewInfo RVMI_gReV QuickTime RVMI_gReV @@ -30103,8 +30160,6 @@ currently reads 96 different types of timed GPS metadata from video files. Unknown01? no Unknown02? no Unknown03? no - Unknown_H? no - Unknown_M? no UserLabel no VerticalSpeed no VideoTimeStamp no @@ -30255,15 +30310,11 @@ changed via the config file. 'artist' Artist yes 'artwork' Artwork yes 'author' Author yes - 'camera.framereadouttimeinmicroseconds' - FrameReadoutTime yes - 'camera.identifier' CameraIdentifier yes 'collection.user' UserCollection yes 'com.android.capture.fps' AndroidCaptureFPS float 'com.android.manufacturer' AndroidMake yes 'com.android.model' AndroidModel yes 'com.android.version' AndroidVersion yes - 'com.apple.photos.captureMode' CaptureMode yes 'com.xiaomi.hdr10' XiaomiHDR10 int32s 'com.xiaomi.preview_video_cover' XiaomiPreviewVideoCover int32s @@ -30332,6 +30383,35 @@ changed via the config file. 'xiaomi.exifInfo.videoinfo' XiaomiExifInfo yes 'year' Year yes +=head3 QuickTime AudioKeys Tags + +Keys tags written in the audio track by some Apple devices. These tags +belong to the ExifTool AudioKeys family 1 gorup. + + Tag ID Tag Name Writable + ------ -------- -------- + 'player.movie.audio.balance' Balance yes + 'player.movie.audio.bass' Bass yes + 'player.movie.audio.gain' AudioGain yes + 'player.movie.audio.mute' Mute int8u + 'player.movie.audio.pitchshift' PitchShift yes + 'player.movie.audio.treble' Treble yes + +=head3 QuickTime VideoKeys Tags + +Keys tags written in the video track. These tags belong to the ExifTool +VideoKeys family 1 gorup. + + Tag ID Tag Name Writable + ------ -------- -------- + 'camera.focal_length.35mm_equivalent' + FocalLengthIn35mmFormat yes + 'camera.framereadouttimeinmicroseconds' + FrameReadoutTime yes + 'camera.identifier' CameraIdentifier yes + 'camera.lens_model' LensModel yes + 'com.apple.photos.captureMode' CaptureMode yes + =head3 QuickTime FaceInfo Tags Tag ID Tag Name Writable @@ -30431,7 +30511,9 @@ Tags found in Pittasoft Blackvue dashcam "free" data. 'ipro' ItemProtection? no 'iprp' ItemProperties QuickTime ItemProp 'iref' ItemReference QuickTime ItemRef - 'keys' Keys QuickTime Keys + 'keys' AudioKeys QuickTime AudioKeys + VideoKeys QuickTime VideoKeys + Keys QuickTime Keys 'pitm' PrimaryItemReference no 'uuid' MetaVersion no UUID-Unknown? no @@ -32099,6 +32181,7 @@ This chunk is found in lossless WebP files. ------ -------- -------- 1 ImageWidth no 2 ImageHeight no + 4 AlphaIsUsed no =head3 RIFF VP8X Tags @@ -33488,10 +33571,10 @@ L<https://www.matroska.org/technical/tagging.html>). 'GENRE' Genre no 'IMDB' IMDB no 'INITIAL_KEY' InitialKey no - 'INSTRUMENTS' Instruments no + 'INSTRUMENTS' Instruments no+ 'ISBN' ISBN no 'ISRC' ISRC no - 'KEYWORDS' Keywords no + 'KEYWORDS' Keywords no+ 'LABEL' Label no 'LABEL_CODE' LabelCode no 'LAW_RATING' LawRating no @@ -39660,6 +39743,35 @@ existing StringFileInfo tags even if not listed in this table. ProductVersion no SpecialBuild no +=head3 EXE DebugRSDS Tags + +CodeView RSDS debug information found in some Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 0 PDBModifyDate no + 20 PDBAge no + 24 PDBFileName no + +=head3 EXE DebugNB10 Tags + +CodeView NB10 debug information found in some Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 0 PDBModifyDate no + 8 PDBCreateDate no + 12 PDBAge no + 16 PDBFileName no + +=head3 EXE Misc Tags + +Miscellaneous CodeView debug information in Windows EXE files. + + Index1 Tag Name Writable + ------ -------- -------- + 12 EXEFileName no + =head3 EXE MachO Tags Information extracted from Mach-O (Mac OS X) executable files and DYLIB @@ -41513,7 +41625,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Text.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Text.pm index 0163e20..152eccd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Text.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Text.pm @@ -222,7 +222,7 @@ characteristics of TXT and CSV files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Theora.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Theora.pm index ff121bc..df8d2d8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Theora.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Theora.pm @@ -122,7 +122,7 @@ information from Theora video streams. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Torrent.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Torrent.pm index ca3eb1d..682a428 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Torrent.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Torrent.pm @@ -14,7 +14,7 @@ use strict; use vars qw($VERSION); use Image::ExifTool qw(:DataAccess :Utils); -$VERSION = '1.06'; +$VERSION = '1.07'; sub ReadBencode($$$); sub ExtractTags($$$;$$@); @@ -282,7 +282,7 @@ sub ProcessTorrent($$) my $dict = ReadBencode($et, $raf, \$buff); my $err = $$raf{BencodeError}; $et->Warn("Bencode error: $err") if $err; - if (ref $dict eq 'HASH' and ($$dict{announce} or $$dict{'created by'})) { + if (ref $dict eq 'HASH' and ($$dict{announce} or $$dict{'created by'} or $$dict{info})) { $et->SetFileType(); my $tagTablePtr = GetTagTable('Image::ExifTool::Torrent::Main'); ExtractTags($et, $dict, $tagTablePtr) and $success = 1; @@ -309,7 +309,7 @@ bencoded information from BitTorrent files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Unknown.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Unknown.pm index 4439289..eaa4c39 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Unknown.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Unknown.pm @@ -53,7 +53,7 @@ unknown manufacturers. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/VCard.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/VCard.pm index 29574e2..4f19126 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/VCard.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/VCard.pm @@ -430,7 +430,7 @@ information from vCard VCF and iCalendar ICS files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Validate.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Validate.pm index fd17369..ec63f84 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Validate.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Validate.pm @@ -678,7 +678,7 @@ ExifTool Validate option is enabled. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vivo.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vivo.pm new file mode 100644 index 0000000..09be2dd --- /dev/null +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vivo.pm @@ -0,0 +1,124 @@ +#------------------------------------------------------------------------------ +# File: Vivo.pm +# +# Description: Read trailer written by Vivo phones +# +# Revisions: 2025-01-13 - P. Harvey Created +#------------------------------------------------------------------------------ + +package Image::ExifTool::Vivo; + +use strict; +use vars qw($VERSION); +use Image::ExifTool qw(:DataAccess :Utils); +use Image::ExifTool::XMP; + +$VERSION = '1.00'; + +%Image::ExifTool::Vivo::Main = ( + GROUPS => { 0 => 'Trailer', 1 => 'Vivo', 2 => 'Image' }, + VARS => { NO_ID => 1 }, + NOTES => 'Proprietary information written by some Vivo phones.', + # (don't know for sure what type of image this is, but it is in JPEG format) + HDRImage => { + Notes => 'highlights of HDR image', + Groups => { 2 => 'Preview' }, + Binary => 1, + }, + JSONInfo => { }, + HiddenData => { + Notes => 'hidden in EXIF, not in trailer. This data is lost if the file is edited', + Groups => { 0 => 'EXIF' }, + }, +); + +#------------------------------------------------------------------------------ +# Process Vivo trailer +# Inputs: 0) ExifTool object reference, 1) dirInfo reference +# Returns: 1 on success, -1 if we must scan for the start of the trailer +# - takes Offset as positive offset from end of trailer to end of file, +# and returns DataPos and DirLen, and updates OutFile when writing +sub ProcessVivo($$) +{ + my ($et, $dirInfo) = @_; + my $raf = $$dirInfo{RAF}; + my $buff; + + # return now unless we are at a position to scan for the trailer + # (must scan because the trailer footer doesn't indicate the trailer length) + return -1 unless $$dirInfo{ScanForTrailer}; + + my $pos = $raf->Tell(); + $raf->Seek(0, 2) or return 0; + my $len = $raf->Tell() - $pos - $$dirInfo{Offset}; + $raf->Seek($pos, 0) or return 0; + return 0 unless $len > 0 and $len < 1e7 and $raf->Read($buff, $len) == $len and + $buff =~ /\xff{4}\x1b\*9HWfu\x84\x93\xa2\xb1$/ and # validate footer + $buff =~ /(streamdata|vivo\{")/g; # find start + my $start = pos($buff) - length($1); + if ($start) { + $pos += $start; + $len -= $start; + $buff = substr($buff, $start); + } + # set trailer position and length + @$dirInfo{'DataPos','DirLen'} = ($pos, $len); + + if ($$dirInfo{OutFile}) { + if ($$et{DEL_GROUP}{Vivo}) { + $et->VPrint(0, " Deleting Vivo trailer ($len bytes)\n"); + ++$$et{CHANGED}; + } else { + $et->VPrint(0, " Copying Vivo trailer ($len bytes)\n"); + Write($$dirInfo{OutFile}, $buff); + } + } else { + $et->DumpTrailer($dirInfo) if $$et{OPTIONS}{Verbose} or $$et{HTML_DUMP}; + my $tbl = GetTagTable('Image::ExifTool::Vivo::Main'); + pos($buff) = 0; # rewind search to start of buffer + if ($buff =~ /^streamdata\xff\xd8\xff/ and $buff =~ /\xff\xd9stream(info|coun)/g) { + $et->HandleTag($tbl, HDRImage => substr($buff, 10, pos($buff)-20)); + } + # continue looking for Vivo JSON data + if ($buff =~ /vivo\{"/g) { + my $jsonStart = pos($buff) - 2; + if ($buff =~ /\}\0/g) { + my $jsonLen = pos($buff) - 1 - $jsonStart; + $et->HandleTag($tbl, JSONInfo => substr($buff, $jsonStart, $jsonLen)); + } + } + } + return 1; +} + +1; # end + +__END__ + +=head1 NAME + +Image::ExifTool::Vivo - Read trailer written by Vivo phones + +=head1 SYNOPSIS + +This module is used by Image::ExifTool + +=head1 DESCRIPTION + +This module contains definitions required by Image::ExifTool to read +metadata the trailer written by some Vivo phones. + +=head1 AUTHOR + +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) + +This library is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. + +=head1 SEE ALSO + +L<Image::ExifTool::TagNames/Vivo Tags>, +L<Image::ExifTool(3pm)|Image::ExifTool> + +=cut + diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vorbis.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vorbis.pm index 5370981..d6df416 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vorbis.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Vorbis.pm @@ -228,7 +228,7 @@ information from Ogg Vorbis audio headers. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WPG.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WPG.pm index 2837382..2546b78 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WPG.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WPG.pm @@ -271,7 +271,7 @@ This module contains definitions required by Image::ExifTool to read WPG =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WTV.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WTV.pm index 3f879b2..0e49d93 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WTV.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WTV.pm @@ -297,7 +297,7 @@ This module contains definitions required by Image::ExifTool to read WTV =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteCanonRaw.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteCanonRaw.pl index cf17f77..adb28d3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteCanonRaw.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteCanonRaw.pl @@ -630,7 +630,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteExif.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteExif.pl index d639dd6..da335c8 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteExif.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteExif.pl @@ -2725,7 +2725,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteIPTC.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteIPTC.pl index 3fcfa02..7ee18e2 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteIPTC.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteIPTC.pl @@ -711,7 +711,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePDF.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePDF.pl index 30b00f0..c0de381 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePDF.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePDF.pl @@ -779,7 +779,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePNG.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePNG.pl index 8fd9d80..7fc47cd 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePNG.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePNG.pl @@ -401,7 +401,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePhotoshop.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePhotoshop.pl index 8df0110..f50eac9 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePhotoshop.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePhotoshop.pl @@ -257,7 +257,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePostScript.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePostScript.pl index 7b0c0ea..ff0bce5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePostScript.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WritePostScript.pl @@ -687,7 +687,7 @@ =head1 ACKNOWLEDGEMENTS =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl index ead12ec..f339a86 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl @@ -15,6 +15,8 @@ package Image::ExifTool::QuickTime; QuickTime => 'ItemList', # (default location for QuickTime tags) ItemList => 'Meta', # MOV-Movie-UserData-Meta-ItemList Keys => 'Movie', # MOV-Movie-Meta-Keys !! (hack due to different Meta location) + AudioKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! + VideoKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! Meta => 'UserData', XMP => 'UserData', # MOV-Movie-UserData-XMP Microsoft => 'UserData', # MOV-Movie-UserData-Microsoft @@ -29,6 +31,8 @@ package Image::ExifTool::QuickTime; QuickTime => 'ItemList', # (default location for QuickTime tags) ItemList => 'Meta', # MOV-Movie-UserData-Meta-ItemList Keys => 'Movie', # MOV-Movie-Meta-Keys !! (hack due to different Meta location) + AudioKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! + VideoKeys => 'Track', # MOV-Movie-Track-Meta-Keys !! Meta => 'UserData', UserData => 'Movie', # MOV-Movie-UserData Microsoft => 'UserData', # MOV-Movie-UserData-Microsoft @@ -374,6 +378,9 @@ ($$$) # Write Meta Keys to add/delete entries as necessary ('mdta' handler) (ref PH) # Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref # Returns: updated keys box data +# Note: Residual entries may be left in the 'keys' directory when deleting tags +# with language codes because the language code(s) are not known until the +# corresponding ItemList entry(s) are processed sub WriteKeys($$$) { my ($et, $dirInfo, $tagTablePtr) = @_; @@ -383,13 +390,14 @@ ($$$) my $outfile = $$dirInfo{OutFile}; my ($tag, %done, %remap, %info, %add, $i); + my $keysGrp = $avType{$$et{MediaType}} ? "$avType{$$et{MediaType}}Keys" : 'Keys'; $dirLen < 8 and $et->Warn('Short Keys box'), $dirLen = 8, $$dataPt = "\0" x 8; - if ($$et{DEL_GROUP}{Keys}) { + if ($$et{DEL_GROUP}{$keysGrp}) { $dirLen = 8; # delete all existing keys # deleted keys are identified by a zero entry in the Remap lookup my $n = Get32u($dataPt, 4); for ($i=1; $i<=$n; ++$i) { $remap{$i} = 0; } - $et->VPrint(0, " [deleting $n Keys entr".($n==1 ? 'y' : 'ies')."]\n"); + $et->VPrint(0, " [deleting $n $keysGrp entr".($n==1 ? 'y' : 'ies')."]\n"); ++$$et{CHANGED}; } my $pos = 8; @@ -425,7 +433,7 @@ ($$$) } unless ($dontDelete) { # delete this key - $et->VPrint(1, "$$et{INDENT}\[deleting Keys entry $index '${tag}']\n"); + $et->VPrint(1, "$$et{INDENT}\[deleting $keysGrp entry $index '${tag}']\n"); $pos += $len; $remap{$index++} = 0; ++$$et{CHANGED}; @@ -455,7 +463,7 @@ ($$$) # add new entry to 'keys' data my $val = $id =~ /^com\./ ? $id : "com.apple.quicktime.$id"; $newData .= Set32u(8 + length($val)) . 'mdta' . $val; - $et->VPrint(1, "$$et{INDENT}\[adding Keys entry $newIndex '${id}']\n"); + $et->VPrint(1, "$$et{INDENT}\[adding $keysGrp entry $newIndex '${id}']\n"); $add{$newIndex++} = $tagInfo; ++$$et{CHANGED}; } @@ -470,7 +478,7 @@ ($$$) # Info - Keys tag information, based on old index value # Add - Keys items deleted, based on old index value # Num - Number of items in edited Keys box - $$et{Keys} = { Remap => \%remap, Info => \%info, Add => \%add, Num => $num }; + $$et{$keysGrp} = { Remap => \%remap, Info => \%info, Add => \%add, Num => $num }; return $newData; # return updated Keys box } @@ -556,6 +564,7 @@ ($$$) } } my ($hdr, $subTable, $proc); + my $strt = 0; if ($name eq 'EXIF') { if (not length $buff) { # create EXIF from scratch @@ -565,6 +574,7 @@ ($$$) $hdr = ''; } elsif (length($buff) >= 4 and length($buff) >= 4 + unpack('N',$buff)) { $hdr = substr($buff, 0, 4 + unpack('N',$buff)); + $strt = length $hdr; } else { $et->Warn('Invalid Exif header'); next; @@ -578,8 +588,8 @@ ($$$) my %dirInfo = ( DataPt => \$buff, DataLen => length $buff, - DirStart => length $hdr, - DirLen => length($buff) - length $hdr, + DirStart => $strt, + DirLen => length($buff) - $strt, ); my $changed = $$et{CHANGED}; my $newVal = $et->WriteDirectory(\%dirInfo, $subTable, $proc); @@ -881,7 +891,7 @@ ($$$) $et or return 1; # allow dummy access to autoload this package my ($mdat, @mdat, @mdatEdit, $edit, $track, $outBuff, $co, $term, $delCount); my (%langTags, $canCreate, $delGrp, %boxPos, %didDir, $writeLast, $err, $atomCount); - my ($tag, $lastTag, $lastPos, $errStr, $trailer, $buf2); + my ($tag, $lastTag, $lastPos, $errStr, $trailer, $buf2, $keysGrp, $keysPath); my $outfile = $$dirInfo{OutFile} || return 0; my $raf = $$dirInfo{RAF}; # (will be null for lower-level atoms) my $dataPt = $$dirInfo{DataPt}; # (will be null for top-level atoms) @@ -915,15 +925,26 @@ ($$$) $raf->Seek($dirStart, 1) if $dirStart; # skip header if it exists + if ($avType{$$et{MediaType}}) { + # (note: these won't be correct now if we haven't yet processed the Media box, + # but in this case they won't be needed until after we set them properly below) + ($keysGrp, $keysPath) = ("$avType{$$et{MediaType}}Keys", 'MOV-Movie-Track'); + } else { + ($keysGrp, $keysPath) = ('Keys', 'MOV-Movie'); + } my $curPath = join '-', @{$$et{PATH}}; my ($dir, $writePath) = ($dirName, $dirName); $writePath = "$dir-$writePath" while defined($dir = $$et{DirMap}{$dir}); # hack to create Keys directories if necessary (its containing Meta is in a different location) - if ($$addDirs{Keys} and $curPath =~ /^MOV-Movie(-Meta)?$/) { + if (($$addDirs{Keys} and $curPath =~ /^MOV-Movie(-Meta)?$/)) { $createKeys = 1; # create new Keys directories - } elsif ($curPath eq 'MOV-Movie-Meta-ItemList') { + } elsif (($$addDirs{AudioKeys} or $$addDirs{VideoKeys}) and $curPath =~ /^MOV-Movie-Track(-Meta)?$/) { + $createKeys = -1; # (must wait until MediaType is known) + } elsif (($curPath eq 'MOV-Movie-Meta-ItemList') or + ($curPath eq 'MOV-Movie-Track-Meta-ItemList' and $avType{$$et{MediaType}})) + { $createKeys = 2; # create new Keys tags - my $keys = $$et{Keys}; + my $keys = $$et{$keysGrp}; if ($keys) { # add new tag entries for existing Keys tags, now that we know their ID's # - first make lookup to convert Keys tagInfo ref to index number @@ -931,7 +952,7 @@ ($$$) foreach $index (keys %{$$keys{Info}}) { $keysInfo{$$keys{Info}{$index}} = $index if $$keys{Remap}{$index}; } - my $keysTable = GetTagTable('Image::ExifTool::QuickTime::Keys'); + my $keysTable = GetTagTable("Image::ExifTool::QuickTime::$keysGrp"); my $newKeysTags = $et->GetNewTagInfoHash($keysTable); foreach (keys %$newKeysTags) { my $tagInfo = $$newKeysTags{$_}; @@ -960,7 +981,8 @@ ($$$) } if ($curPath eq $writePath or $createKeys) { $canCreate = 1; - $delGrp = $$et{DEL_GROUP}{$dirName}; + # (must check the appropriate Keys delete flag if this is a Keys ItemList) + $delGrp = $$et{DEL_GROUP}{$createKeys ? $keysGrp : $dirName}; } $atomCount = $$tagTablePtr{VARS}{ATOM_COUNT} if $$tagTablePtr{VARS}; @@ -1078,12 +1100,12 @@ ($$$) last; } } - # save the handler type for this track - if ($tag eq 'hdlr' and length $buff >= 12) { - my $hdlr = substr($buff,8,4); - $$et{HandlerType} = $hdlr if $hdlr =~ /^(vide|soun)$/; + # save the handler type of the track media + if ($tag eq 'hdlr' and length $buff >= 12 and + @{$$et{PATH}} and $$et{PATH}[-1] eq 'Media') + { + $$et{MediaType} = substr($buff,8,4); } - # if this atom stores offsets, save its location so we can fix up offsets later # (are there any other atoms that may store absolute file offsets?) if ($tag =~ /^(stco|co64|iloc|mfra|moof|sidx|saio|gps |CTBO|uuid)$/) { @@ -1128,11 +1150,11 @@ ($$$) &{$$tagInfo{WriteHook}}($buff,$et) if $tagInfo and $$tagInfo{WriteHook}; # allow numerical tag ID's (ItemList entries defined by Keys) - if (not $tagInfo and $dirName eq 'ItemList' and $$et{Keys}) { + if (not $tagInfo and $dirName eq 'ItemList' and $$et{$keysGrp}) { $keysIndex = unpack('N', $tag); - my $newIndex = $$et{Keys}{Remap}{$keysIndex}; + my $newIndex = $$et{$keysGrp}{Remap}{$keysIndex}; if (defined $newIndex) { - $tagInfo = $$et{Keys}{Info}{$keysIndex}; + $tagInfo = $$et{$keysGrp}{Info}{$keysIndex}; unless ($newIndex) { if ($tagInfo) { $et->VPrint(1," - Keys:$$tagInfo{Name}"); @@ -1172,7 +1194,7 @@ ($$$) if ($subdir) { # process atoms in this container from a buffer in memory if ($tag eq 'trak') { - undef $$et{HandlerType}; # init handler type for this track + $$et{MediaType} = ''; # init media type for this track delete $$et{AssumedDataRef}; } my $subName = $$subdir{DirName} || $$tagInfo{Name}; @@ -1241,10 +1263,13 @@ ($$$) $$et{CHANGED} = $oldChanged; undef $newData; } - if ($tag eq 'trak' and $$et{AssumedDataRef}) { - my $grp = $$et{CUR_WRITE_GROUP} || $dirName; - $et->Error("Can't locate data reference to update offsets for $grp"); - delete $$et{AssumedDataRef}; + if ($tag eq 'trak') { + $$et{MediaType} = ''; # reset media type at end of track + if ($$et{AssumedDataRef}) { + my $grp = $$et{CUR_WRITE_GROUP} || $dirName; + $et->Error("Can't locate data reference to update offsets for $grp"); + delete $$et{AssumedDataRef}; + } } $$et{CUR_WRITE_GROUP} = $oldWriteGroup; SetByteOrder('MM'); @@ -1540,7 +1565,7 @@ ($$$) } if ($msg) { # (allow empty sample description for non-audio/video handler types, eg. 'url ', 'meta') - if ($$et{HandlerType}) { + if ($$et{MediaType}) { my $grp = $$et{CUR_WRITE_GROUP} || $parent; $et->Error("$msg for $grp"); return $rtnErr; @@ -1593,7 +1618,16 @@ ($$$) } $et->VPrint(0, " [deleting $delCount $dirName tag".($delCount==1 ? '' : 's')."]\n") if $delCount; - $createKeys &= ~0x01 unless $$addDirs{Keys}; # (Keys may have been written) + # can finally set necessary variables for creating Video/AudioKeys tags + if ($createKeys < 0) { + if ($avType{$$et{MediaType}}) { + $createKeys = 1; + ($keysGrp, $keysPath) = ("$avType{$$et{MediaType}}Keys", 'MOV-Movie-Track'); + } else { + $canCreate = 0; + } + } + $createKeys &= ~0x01 unless $$addDirs{$keysGrp}; # (Keys may have been written) # add new directories/tags at this level if necessary if ($canCreate and (exists $$et{EDIT_DIRS}{$dirName} or $createKeys)) { @@ -1604,13 +1638,13 @@ ($$$) my ($tag, $index); # add Keys tags if necessary if ($createKeys) { - if ($curPath eq 'MOV-Movie') { + if ($curPath eq $keysPath) { # add Meta for Keys if necessary unless ($didDir{meta}) { $$dirs{meta} = $Image::ExifTool::QuickTime::Movie{meta}; push @addTags, 'meta'; } - } elsif ($curPath eq 'MOV-Movie-Meta') { + } elsif ($curPath eq "$keysPath-Meta") { # special case for Keys Meta -- reset directories and start again undef @addTags; $dirs = { }; @@ -1619,10 +1653,10 @@ ($$$) $$dirs{$_} = $Image::ExifTool::QuickTime::Meta{$_}; push @addTags, $_; } - } elsif ($curPath eq 'MOV-Movie-Meta-ItemList' and $$et{Keys}) { - foreach $index (sort { $a <=> $b } keys %{$$et{Keys}{Add}}) { + } elsif ($curPath eq "$keysPath-Meta-ItemList" and $$et{$keysGrp}) { + foreach $index (sort { $a <=> $b } keys %{$$et{$keysGrp}{Add}}) { my $id = Set32u($index); - $$newTags{$id} = $$et{Keys}{Add}{$index}; + $$newTags{$id} = $$et{$keysGrp}{Add}{$index}; push @addTags, $id; } } else { @@ -1634,8 +1668,7 @@ ($$$) foreach $tag (@addTags) { my $tagInfo = $$dirs{$tag} || $$newTags{$tag}; next if defined $$tagInfo{CanCreate} and not $$tagInfo{CanCreate}; - next if defined $$tagInfo{HandlerType} and - (not $$et{HandlerType} or $$et{HandlerType} ne $$tagInfo{HandlerType}); + next if defined $$tagInfo{MediaType} and $$et{MediaType} ne $$tagInfo{MediaType}; my $subdir = $$tagInfo{SubDirectory}; unless ($subdir) { my $nvHash = $et->GetNewValueHash($tagInfo); @@ -1697,13 +1730,13 @@ ($$$) } my $subName = $$subdir{DirName} || $$tagInfo{Name}; # QuickTime hierarchy is complex, so check full directory path before adding - if ($createKeys and $curPath eq 'MOV-Movie' and $subName eq 'Meta') { + if ($createKeys and $curPath eq $keysPath and $subName eq 'Meta') { $et->VPrint(0, " Creating Meta with mdta Handler and Keys\n"); # init Meta box for Keys tags with mdta Handler and empty Keys+ItemList $buf2 = "\0\0\0\x20hdlr\0\0\0\0\0\0\0\0mdta\0\0\0\0\0\0\0\0\0\0\0\0" . "\0\0\0\x10keys\0\0\0\0\0\0\0\0" . "\0\0\0\x08ilst"; - } elsif ($createKeys and $curPath eq 'MOV-Movie-Meta') { + } elsif ($createKeys and $curPath eq "$keysPath-Meta") { $buf2 = ($subName eq 'Keys' ? "\0\0\0\0\0\0\0\0" : ''); } elsif ($subName eq 'Meta' and $$et{OPTIONS}{QuickTimeHandler}) { $et->VPrint(0, " Creating Meta with mdir Handler\n"); @@ -1752,8 +1785,8 @@ ($$$) } } # add only once (must delete _after_ call to WriteDirectory()) - # (Keys is a special case, and will be removed after Meta is processed) - delete $$addDirs{$subName} unless $subName eq 'Keys'; + # (Keys tags are a special case, and are handled separately) + delete $$addDirs{$subName} unless $createKeys; } } # write HEIC metadata after top-level 'meta' box has been processed if editing this information @@ -1779,9 +1812,9 @@ ($$$) # (could report a file if editing nothing when it contained an empty Meta atom) # ++$$et{CHANGED}; } - if ($curPath eq 'MOV-Movie-Meta') { - delete $$addDirs{Keys}; # prevent creation of another Meta for Keys tags - delete $$et{Keys}; + if ($curPath eq "$keysPath-Meta") { + delete $$addDirs{$keysGrp}; # prevent creation of another Meta for Keys tags + delete $$et{$keysGrp}; } } @@ -2109,6 +2142,7 @@ ($$) $raf->Seek(0,0); # write the file + $$et{MediaType} = ''; $$dirInfo{Parent} = ''; $$dirInfo{DirName} = 'MOV'; $$dirInfo{ChunkOffset} = [ ]; # (just to be safe) @@ -2134,7 +2168,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteRIFF.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteRIFF.pl index 0372dfd..851d542 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteRIFF.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteRIFF.pl @@ -324,8 +324,10 @@ ($$) $raf->Read($buff, 6) == 6 or $et->Error('Truncated VP8L chunk'), return 1; $outsize += 6; if ($buff =~ /^\x2f/s) { + my $word = Get32u(\$buff, 2); $imageWidth = (Get16u(\$buff, 1) & 0x3fff) + 1; - $imageHeight = ((Get32u(\$buff, 2) >> 6) & 0x3fff) + 1; + $imageHeight = (($word >> 6) & 0x3fff) + 1; + $has{ALPH} = 1 if $word & 0x100000; # set alpha flag if necessary } $len2 -= 6; } @@ -372,7 +374,7 @@ =head1 NOTES =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteXMP.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteXMP.pl index 4aec131..5b97501 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteXMP.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/WriteXMP.pl @@ -1651,7 +1651,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Writer.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Writer.pl index 391c69a..911e5c0 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Writer.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/Writer.pl @@ -138,11 +138,12 @@ package Image::ExifTool; # 2) any dependencies must be added to %excludeGroups my @delGroups = qw( Adobe AFCP APP0 APP1 APP2 APP3 APP4 APP5 APP6 APP7 APP8 APP9 APP10 APP11 APP12 - APP13 APP14 APP15 CanonVRD CIFF Ducky EXIF ExifIFD File FlashPix FotoStation - GlobParamIFD GPS ICC_Profile IFD0 IFD1 Insta360 InteropIFD IPTC ItemList JFIF - Jpeg2000 JUMBF Keys MakerNotes Meta MetaIFD Microsoft MIE MPF Nextbase NikonApp - NikonCapture PDF PDF-update PhotoMechanic Photoshop PNG PNG-pHYs PrintIM - QuickTime RMETA RSRC SEAL SubIFD Trailer UserData XML XML-* XMP XMP-* + APP13 APP14 APP15 AudioKeys CanonVRD CIFF Ducky EXIF ExifIFD File FlashPix + FotoStation GlobParamIFD GPS ICC_Profile IFD0 IFD1 Insta360 InteropIFD IPTC + ItemList JFIF Jpeg2000 JUMBF Keys MakerNotes Meta MetaIFD Microsoft MIE MPF + Nextbase NikonApp NikonCapture PDF PDF-update PhotoMechanic Photoshop PNG + PNG-pHYs PrintIM QuickTime RMETA RSRC SEAL SubIFD Trailer UserData VideoKeys + Vivo XML XML-* XMP XMP-* ); # family 2 group names that we can delete my @delGroup2 = qw( @@ -1297,12 +1298,13 @@ ($$;@) foreach (qw(ByteUnit Charset CharsetEXIF CharsetFileName CharsetID3 CharsetIPTC CharsetPhotoshop Composite DateFormat Debug EncodeHangs Escape ExtendedXMP ExtractEmbedded FastScan Filter FixBase Geolocation GeolocAltNames - GeolocFeature GeolocMinPop GeolocMaxDist GlobalTimeShift HexTagIDs - IgnoreGroups IgnoreMinorErrors IgnoreTags ImageHashType Lang - LargeFileSupport LigoGPSScale ListItem ListSep MDItemTags MissingTagValue - NoPDFList NoWarning Password PrintConv QuickTimeUTC RequestTags SaveFormat - SavePath ScanForXMP StructFormat SystemTags TimeZone Unknown UserParam - Validate WindowsLongPath WindowsWideFile XAttrTags XMPAutoConv)) + GeolocFeature GeolocMinPop GeolocMaxDist GlobalTimeShift GPSQuadrant + HexTagIDs IgnoreGroups IgnoreMinorErrors IgnoreTags ImageHashType Lang + LargeFileSupport LigoGPSScale ListItem ListSep MDItemTags + MissingTagValue NoPDFList NoWarning Password PrintConv QuickTimeUTC + RequestTags SaveFormat SavePath ScanForXMP StructFormat SystemTags + TimeZone Unknown UserParam Validate WindowsLongPath WindowsWideFile + XAttrTags XMPAutoConv)) { $srcExifTool->Options($_ => $$options{$_}); } @@ -2822,7 +2824,10 @@ ($;$) my %allGroups; # add family 1 groups not in tables - $family == 1 and map { $allGroups{$_} = 1 } qw(Garmin); + no warnings; # (avoid "possible attempt to put comments in qw()") + $family == 1 and map { $allGroups{$_} = 1 } qw(Garmin AudioItemList AudioUserData + VideoItemList VideoUserData Track#Keys Track#ItemList Track#UserData); + use warnings; # loop through all tag tables and get all group names while (@tableNames) { my $table = GetTagTable(pop @tableNames); @@ -5228,7 +5233,7 @@ (@) { my $val = $_[0]; my $hi = int($val / 4294967296); - my $lo = Set32u($val - $hi * 4294967296); + my $lo = Set32u($val - $hi * 4294967296); # NOTE: subject to round-off errors! $hi = Set32u($hi); $val = GetByteOrder() eq 'MM' ? $hi . $lo : $lo . $hi; $_[1] and substr(${$_[1]}, $_[2], length($val)) = $val; @@ -6102,7 +6107,7 @@ ($$) my $tbuf = ''; $raf->Seek(-length($buff), 1); # seek back to just after EOI $$trailInfo{OutFile} = \$tbuf; # rewrite the trailer - $$trailInfo{ScanForAFCP} = 1; # scan if necessary + $$trailInfo{ScanForTrailer} = 1;# scan if necessary $self->ProcessTrailers($trailInfo) or undef $trailInfo; } if (not $oldOutfile) { @@ -6987,7 +6992,7 @@ ($$;$$$$) $mtime = $m unless defined $mtime; $success = eval { utime($atime, $mtime, $file) } if defined $atime and defined $mtime; } - $self->Warn('Error opening file for update') unless $success; + $self->Warn('Error updating file time') unless $success; return $success; } $saveFile = $file; @@ -7376,7 +7381,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XISF.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XISF.pm index 1185696..061f090 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XISF.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XISF.pm @@ -163,7 +163,7 @@ information from XISF (Extensible Image Serialization Format) images. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP.pm index 97c91f4..7648da3 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP.pm @@ -4582,7 +4582,7 @@ information. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl index c7e5d6e..1dc0811 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl @@ -2427,7 +2427,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMPStruct.pl b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMPStruct.pl index a31c4f8..c47be3e 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMPStruct.pl +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/XMPStruct.pl @@ -944,7 +944,7 @@ =head1 DESCRIPTION =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZIP.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZIP.pm index 2daefd3..8f3ea9c 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZIP.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZIP.pm @@ -840,7 +840,7 @@ Electronic Publication (EPUB), and Sketch design files (SKETCH). =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZISRAW.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZISRAW.pm index b314561..77463e5 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZISRAW.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/ZISRAW.pm @@ -220,7 +220,7 @@ metadata from Zeiss Integrated Software RAW (ZISRAW) CZI files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/iWork.pm b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/iWork.pm index d122d37..2279852 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/iWork.pm +++ b/focuspoints.lrdevplugin/bin/exiftool_files/lib/Image/ExifTool/iWork.pm @@ -215,7 +215,7 @@ information from Apple iWork '09 XML+ZIP files. =head1 AUTHOR -Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com) +Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com) This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/bin/exiftool_files/windows_exiftool.txt b/focuspoints.lrdevplugin/bin/exiftool_files/windows_exiftool.txt index 2f9d66c..c018f88 100644 --- a/focuspoints.lrdevplugin/bin/exiftool_files/windows_exiftool.txt +++ b/focuspoints.lrdevplugin/bin/exiftool_files/windows_exiftool.txt @@ -732,10 +732,14 @@ OPTIONS imported. To force a tag to be deleted, use the -f option and set the value to "-" in the CSV file (or to the MissingTagValue if this API option was used). Multiple databases may be imported in a - single command. Specific tags may be imported from the database by - adding -*TAG* options to the command, or excluded with --*TAG* - options. If no tags are specified, then all except FileName and - Directory are used. + single command. + + Specific tags may be imported from the CSV database by adding + -*TAG* options to the command, or excluded with --*TAG*, with + exclusions taking priority. Group names and wildcards are allowed. + If no tags are specified, then all except FileName and Directory + are used. Tags are imported in the same order as the database + entries. When exporting a CSV file, the -g or -G option adds group names to the tag headings. If the -a option is used to allow duplicate tag @@ -920,10 +924,14 @@ OPTIONS values are not compatible with the import file format (ie. export with -D, -H, -l, or -T is not compatible, and use -G instead of -g). Additionally, tag names in the input JSON file may be suffixed - with a "#" to disable print conversion. Specific tags may be - imported from the database by adding -*TAG* options to the command, - or excluded with --*TAG* options. If no tags are specified, then - all except FileName and Directory are used. + with a "#" to disable print conversion. + + Specific tags may be imported from the JSON database by adding + -*TAG* options to the command, or excluded with --*TAG*, with + exclusions taking priority. Group names and wildcards are allowed. + If no tags are specified, then all except FileName and Directory + are used. Tags are imported in the same order as the database + entries. Unlike CSV import, empty values are not ignored, and will cause an empty value to be written if supported by the specific metadata @@ -1068,7 +1076,7 @@ OPTIONS produces output like this: - -- Generated by ExifTool 13.10 -- + -- Generated by ExifTool 13.15 -- File: a.jpg - 2003:10:31 15:44:19 (f/5.6, 1/60s, ISO 100) File: b.jpg - 2006:05:23 11:57:38 @@ -1086,9 +1094,8 @@ OPTIONS of all matching tags are joined). The -p output iterates through the family 3 group names, with each - sub-document producing additional output. This feature is most - useful when used in combination with the -ee option to extract - embedded documents. + sub-document producing additional output when combined with the -ee + (ExtractEmbedded) option. If a specified tag does not exist, a minor warning is issued and the line with the missing tag is not printed. However, the -f @@ -1915,9 +1922,10 @@ OPTIONS The -g and -G options may be used to organize the output by the specified family of groups, with -G1 being the default. The -a option is implied. Adding -v includes a count of the number of tags - that are the same in each group. The following text formatting - options are valid when -diff is used: -c, -charset, -d, -E, -ec, - -ex, -L, -lang, -n, -s, -sep, -struct and -w. + that are the same in each group, and -v2 also indicates when zero + tags were the same. The following text formatting options are valid + when -diff is used: -c, -charset, -d, -E, -ec, -ex, -L, -lang, -n, + -s, -sep, -struct and -w. -geotag *TRKFILE* Geotag images from the specified GPS track log file. Using the @@ -2406,6 +2414,10 @@ WRITING READ-ONLY FILES exiftool -if "$fileattributes !~ /Hidden/" ... READING EXAMPLES + The commands below are appropriate for the Windows cmd shell, which is + recommended. If running in PowerShell, single quotes would be needed + instead of double quotes around arguments containing a dollar sign. + exiftool -a -u -g1 a.jpg Print all meta information in an image, including duplicate and unknown tags, sorted by group (for family 1). For performance @@ -2472,7 +2484,7 @@ READING EXAMPLES Print one line of output containing the file name and DateTimeOriginal for each image in directory "dir". - exiftool -ee3 -p '$gpslatitude, $gpslongitude, $gpstimestamp' a.m2ts + exiftool -ee3 -p "$gpslatitude, $gpslongitude, $gpstimestamp" a.m2ts Extract all GPS positions from an AVCHD video. exiftool -icc_profile -b -w icc image.jpg @@ -2880,7 +2892,7 @@ EXIT STATUS the commands if -execute was used). AUTHOR - Copyright 2003-2024, Phil Harvey + Copyright 2003-2025, Phil Harvey This is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon Z fc.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon Z fc.txt index 5636b50..7497ce3 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon Z fc.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon Z fc.txt @@ -1,93 +1,93 @@ --- Focus points for Nikon Z 50 +-- Focus points for Nikon Z fc -focusPointDimens = {378, 324} +focusPointDimens = {490, 325} -A1 = {568, 272} -B1 = {568, 602} -C1 = {568, 932} -D1 = {568, 1262} -E1 = {568, 1592} -F1 = {568, 1922} -G1 = {568, 2252} -H1 = {568, 2582} -I1 = {568, 2912} +A1 = {563, 376} +A2 = {1057, 376} +A3 = {1551, 376} +A4 = {2045, 376} +A5 = {2539, 376} +A6 = {3033, 376} +A7 = {3527, 376} +A8 = {4021, 376} +A9 = {4515, 376} -A2 = {1062, 272} -B2 = {1062, 602} -C2 = {1062, 932} -D2 = {1062, 1262} -E2 = {1062, 1592} -F2 = {1062, 1922} -G2 = {1062, 2252} -H2 = {1062, 2582} -I2 = {1062, 2912} +B1 = {563, 705} +B2 = {1057, 705} +B3 = {1551, 705} +B4 = {2045, 705} +B5 = {2539, 705} +B6 = {3033, 705} +B7 = {3527, 705} +B8 = {4021, 705} +B9 = {4515, 705} -A3 = {1556, 272} -B3 = {1556, 602} -C3 = {1556, 932} -D3 = {1556, 1262} -E3 = {1556, 1592} -F3 = {1556, 1922} -G3 = {1556, 2252} -H3 = {1556, 2582} -I3 = {1556, 2912} +C1 = {563, 1034} +C2 = {1057, 1034} +C3 = {1551, 1034} +C4 = {2045, 1034} +C5 = {2539, 1034} +C6 = {3033, 1034} +C7 = {3527, 1034} +C8 = {4021, 1034} +C9 = {4515, 1034} -A4 = {2050, 272} -B4 = {2050, 602} -C4 = {2050, 932} -D4 = {2050, 1262} -E4 = {2050, 1592} -F4 = {2050, 1922} -G4 = {2050, 2252} -H4 = {2050, 2582} -I4 = {2050, 2912} +D1 = {563, 1363} +D2 = {1057, 1363} +D3 = {1551, 1363} +D4 = {2045, 1363} +D5 = {2539, 1363} +D6 = {3033, 1363} +D7 = {3527, 1363} +D8 = {4021, 1363} +D9 = {4515, 1363} -A5 = {2544, 272} -B5 = {2544, 602} -C5 = {2544, 932} -D5 = {2544, 1262} -E5 = {2544, 1592} -F5 = {2544, 1922} -G5 = {2544, 2252} -H5 = {2544, 2582} -I5 = {2544, 2912} +E1 = {563, 1692} +E2 = {1057, 1692} +E3 = {1551, 1692} +E4 = {2045, 1692} +E5 = {2539, 1692} +E6 = {3033, 1692} +E7 = {3527, 1692} +E8 = {4021, 1692} +E9 = {4515, 1692} -A6 = {3038, 272} -B6 = {3038, 602} -C6 = {3038, 932} -D6 = {3038, 1262} -E6 = {3038, 1592} -F6 = {3038, 1922} -G6 = {3038, 2252} -H6 = {3038, 2582} -I6 = {3038, 2912} +F1 = {563, 2021} +F2 = {1057, 2021} +F3 = {1551, 2021} +F4 = {2045, 2021} +F5 = {2539, 2021} +F6 = {3033, 2021} +F7 = {3527, 2021} +F8 = {4021, 2021} +F9 = {4515, 2021} -A7 = {3532, 272} -B7 = {3532, 602} -C7 = {3532, 932} -D7 = {3532, 1262} -E7 = {3532, 1592} -F7 = {3532, 1922} -G7 = {3532, 2252} -H7 = {3532, 2582} -I7 = {3532, 2912} +G1 = {563, 2350} +G2 = {1057, 2350} +G3 = {1551, 2350} +G4 = {2045, 2350} +G5 = {2539, 2350} +G6 = {3033, 2350} +G7 = {3527, 2350} +G8 = {4021, 2350} +G9 = {4515, 2350} -A8 = {4026, 272} -B8 = {4026, 602} -C8 = {4026, 932} -D8 = {4026, 1262} -E8 = {4026, 1592} -F8 = {4026, 1922} -G8 = {4026, 2252} -H8 = {4026, 2582} -I8 = {4026, 2912} +H1 = {563, 2679} +H2 = {1057, 2679} +H3 = {1551, 2679} +H4 = {2045, 2679} +H5 = {2539, 2679} +H6 = {3033, 2679} +H7 = {3527, 2679} +H8 = {4021, 2679} +H9 = {4515, 2679} -A9 = {4520, 272} -B9 = {4520, 602} -C9 = {4520, 932} -D9 = {4520, 1262} -E9 = {4520, 1592} -F9 = {4520, 1922} -G9 = {4520, 2252} -H9 = {4520, 2582} -I9 = {4520, 2912} +I1 = {563, 3008} +I2 = {1057, 3008} +I3 = {1551, 3008} +I4 = {2045, 3008} +I5 = {2539, 3008} +I6 = {3033, 3008} +I7 = {3527, 3008} +I8 = {4021, 3008} +I9 = {4515, 3008} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 30.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 30.txt index 5636b50..55ff6b5 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 30.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 30.txt @@ -1,93 +1,93 @@ --- Focus points for Nikon Z 50 +-- Focus points for Nikon Z 30 -focusPointDimens = {378, 324} +focusPointDimens = {490, 325} -A1 = {568, 272} -B1 = {568, 602} -C1 = {568, 932} -D1 = {568, 1262} -E1 = {568, 1592} -F1 = {568, 1922} -G1 = {568, 2252} -H1 = {568, 2582} -I1 = {568, 2912} +A1 = {563, 376} +A2 = {1057, 376} +A3 = {1551, 376} +A4 = {2045, 376} +A5 = {2539, 376} +A6 = {3033, 376} +A7 = {3527, 376} +A8 = {4021, 376} +A9 = {4515, 376} -A2 = {1062, 272} -B2 = {1062, 602} -C2 = {1062, 932} -D2 = {1062, 1262} -E2 = {1062, 1592} -F2 = {1062, 1922} -G2 = {1062, 2252} -H2 = {1062, 2582} -I2 = {1062, 2912} +B1 = {563, 705} +B2 = {1057, 705} +B3 = {1551, 705} +B4 = {2045, 705} +B5 = {2539, 705} +B6 = {3033, 705} +B7 = {3527, 705} +B8 = {4021, 705} +B9 = {4515, 705} -A3 = {1556, 272} -B3 = {1556, 602} -C3 = {1556, 932} -D3 = {1556, 1262} -E3 = {1556, 1592} -F3 = {1556, 1922} -G3 = {1556, 2252} -H3 = {1556, 2582} -I3 = {1556, 2912} +C1 = {563, 1034} +C2 = {1057, 1034} +C3 = {1551, 1034} +C4 = {2045, 1034} +C5 = {2539, 1034} +C6 = {3033, 1034} +C7 = {3527, 1034} +C8 = {4021, 1034} +C9 = {4515, 1034} -A4 = {2050, 272} -B4 = {2050, 602} -C4 = {2050, 932} -D4 = {2050, 1262} -E4 = {2050, 1592} -F4 = {2050, 1922} -G4 = {2050, 2252} -H4 = {2050, 2582} -I4 = {2050, 2912} +D1 = {563, 1363} +D2 = {1057, 1363} +D3 = {1551, 1363} +D4 = {2045, 1363} +D5 = {2539, 1363} +D6 = {3033, 1363} +D7 = {3527, 1363} +D8 = {4021, 1363} +D9 = {4515, 1363} -A5 = {2544, 272} -B5 = {2544, 602} -C5 = {2544, 932} -D5 = {2544, 1262} -E5 = {2544, 1592} -F5 = {2544, 1922} -G5 = {2544, 2252} -H5 = {2544, 2582} -I5 = {2544, 2912} +E1 = {563, 1692} +E2 = {1057, 1692} +E3 = {1551, 1692} +E4 = {2045, 1692} +E5 = {2539, 1692} +E6 = {3033, 1692} +E7 = {3527, 1692} +E8 = {4021, 1692} +E9 = {4515, 1692} -A6 = {3038, 272} -B6 = {3038, 602} -C6 = {3038, 932} -D6 = {3038, 1262} -E6 = {3038, 1592} -F6 = {3038, 1922} -G6 = {3038, 2252} -H6 = {3038, 2582} -I6 = {3038, 2912} +F1 = {563, 2021} +F2 = {1057, 2021} +F3 = {1551, 2021} +F4 = {2045, 2021} +F5 = {2539, 2021} +F6 = {3033, 2021} +F7 = {3527, 2021} +F8 = {4021, 2021} +F9 = {4515, 2021} -A7 = {3532, 272} -B7 = {3532, 602} -C7 = {3532, 932} -D7 = {3532, 1262} -E7 = {3532, 1592} -F7 = {3532, 1922} -G7 = {3532, 2252} -H7 = {3532, 2582} -I7 = {3532, 2912} +G1 = {563, 2350} +G2 = {1057, 2350} +G3 = {1551, 2350} +G4 = {2045, 2350} +G5 = {2539, 2350} +G6 = {3033, 2350} +G7 = {3527, 2350} +G8 = {4021, 2350} +G9 = {4515, 2350} -A8 = {4026, 272} -B8 = {4026, 602} -C8 = {4026, 932} -D8 = {4026, 1262} -E8 = {4026, 1592} -F8 = {4026, 1922} -G8 = {4026, 2252} -H8 = {4026, 2582} -I8 = {4026, 2912} +H1 = {563, 2679} +H2 = {1057, 2679} +H3 = {1551, 2679} +H4 = {2045, 2679} +H5 = {2539, 2679} +H6 = {3033, 2679} +H7 = {3527, 2679} +H8 = {4021, 2679} +H9 = {4515, 2679} -A9 = {4520, 272} -B9 = {4520, 602} -C9 = {4520, 932} -D9 = {4520, 1262} -E9 = {4520, 1592} -F9 = {4520, 1922} -G9 = {4520, 2252} -H9 = {4520, 2582} -I9 = {4520, 2912} +I1 = {563, 3008} +I2 = {1057, 3008} +I3 = {1551, 3008} +I4 = {2045, 3008} +I5 = {2539, 3008} +I6 = {3033, 3008} +I7 = {3527, 3008} +I8 = {4021, 3008} +I9 = {4515, 3008} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 5.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 5.txt index c8b5b5b..7b3cd8d 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 5.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 5.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 5 -focusPointDimens = {532, 350} +focusPointDimens = {528, 352} -A1 = {614, 420} -B1 = {614, 776} -C1 = {614, 1132} -D1 = {614, 1488} -E1 = {614, 1844} -F1 = {614, 2200} -G1 = {614, 2556} -H1 = {614, 2912} -I1 = {614, 3268} +A1 = {612, 410} +A2 = {1144, 410} +A3 = {1676, 410} +A4 = {2208, 410} +A5 = {2740, 410} +A6 = {3272, 410} +A7 = {3804, 410} +A8 = {4336, 410} +A9 = {4868, 410} -A2 = {1152, 420} -B2 = {1152, 776} -C2 = {1152, 1132} -D2 = {1152, 1488} -E2 = {1152, 1844} -F2 = {1152, 2200} -G2 = {1152, 2556} -H2 = {1152, 2912} -I2 = {1152, 3268} +B1 = {612, 764} +B2 = {1144, 764} +B3 = {1676, 764} +B4 = {2208, 764} +B5 = {2740, 764} +B6 = {3272, 764} +B7 = {3804, 764} +B8 = {4336, 764} +B9 = {4868, 764} -A3 = {1690, 420} -B3 = {1690, 776} -C3 = {1690, 1132} -D3 = {1690, 1488} -E3 = {1690, 1844} -F3 = {1690, 2200} -G3 = {1690, 2556} -H3 = {1690, 2912} -I3 = {1690, 3268} +C1 = {612, 1118} +C2 = {1144, 1118} +C3 = {1676, 1118} +C4 = {2208, 1118} +C5 = {2740, 1118} +C6 = {3272, 1118} +C7 = {3804, 1118} +C8 = {4336, 1118} +C9 = {4868, 1118} -A4 = {2228, 420} -B4 = {2228, 776} -C4 = {2228, 1132} -D4 = {2228, 1488} -E4 = {2228, 1844} -F4 = {2228, 2200} -G4 = {2228, 2556} -H4 = {2228, 2912} -I4 = {2228, 3268} +D1 = {612, 1472} +D2 = {1144, 1472} +D3 = {1676, 1472} +D4 = {2208, 1472} +D5 = {2740, 1472} +D6 = {3272, 1472} +D7 = {3804, 1472} +D8 = {4336, 1472} +D9 = {4868, 1472} -A5 = {2766, 420} -B5 = {2766, 776} -C5 = {2766, 1132} -D5 = {2766, 1488} -E5 = {2766, 1844} -F5 = {2766, 2200} -G5 = {2766, 2556} -H5 = {2766, 2912} -I5 = {2766, 3268} +E1 = {612, 1826} +E2 = {1144, 1826} +E3 = {1676, 1826} +E4 = {2208, 1826} +E5 = {2740, 1826} +E6 = {3272, 1826} +E7 = {3804, 1826} +E8 = {4336, 1826} +E9 = {4868, 1826} -A6 = {3304, 420} -B6 = {3304, 776} -C6 = {3304, 1132} -D6 = {3304, 1488} -E6 = {3304, 1844} -F6 = {3304, 2200} -G6 = {3304, 2556} -H6 = {3304, 2912} -I6 = {3304, 3268} +F1 = {612, 2180} +F2 = {1144, 2180} +F3 = {1676, 2180} +F4 = {2208, 2180} +F5 = {2740, 2180} +F6 = {3272, 2180} +F7 = {3804, 2180} +F8 = {4336, 2180} +F9 = {4868, 2180} -A7 = {3842, 420} -B7 = {3842, 776} -C7 = {3842, 1132} -D7 = {3842, 1488} -E7 = {3842, 1844} -F7 = {3842, 2200} -G7 = {3842, 2556} -H7 = {3842, 2912} -I7 = {3842, 3268} +G1 = {612, 2534} +G2 = {1144, 2534} +G3 = {1676, 2534} +G4 = {2208, 2534} +G5 = {2740, 2534} +G6 = {3272, 2534} +G7 = {3804, 2534} +G8 = {4336, 2534} +G9 = {4868, 2534} -A8 = {4380, 420} -B8 = {4380, 776} -C8 = {4380, 1132} -D8 = {4380, 1488} -E8 = {4380, 1844} -F8 = {4380, 2200} -G8 = {4380, 2556} -H8 = {4380, 2912} -I8 = {4380, 3268} +H1 = {612, 2888} +H2 = {1144, 2888} +H3 = {1676, 2888} +H4 = {2208, 2888} +H5 = {2740, 2888} +H6 = {3272, 2888} +H7 = {3804, 2888} +H8 = {4336, 2888} +H9 = {4868, 2888} -A9 = {4918, 420} -B9 = {4918, 776} -C9 = {4918, 1132} -D9 = {4918, 1488} -E9 = {4918, 1844} -F9 = {4918, 2200} -G9 = {4918, 2556} -H9 = {4918, 2912} -I9 = {4918, 3268} +I1 = {612, 3242} +I2 = {1144, 3242} +I3 = {1676, 3242} +I4 = {2208, 3242} +I5 = {2740, 3242} +I6 = {3272, 3242} +I7 = {3804, 3242} +I8 = {4336, 3242} +I9 = {4868, 3242} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 50.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 50.txt index 5636b50..6ee1f67 100755 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 50.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 50.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 50 -focusPointDimens = {378, 324} +focusPointDimens = {484, 320} -A1 = {568, 272} -B1 = {568, 602} -C1 = {568, 932} -D1 = {568, 1262} -E1 = {568, 1592} -F1 = {568, 1922} -G1 = {568, 2252} -H1 = {568, 2582} -I1 = {568, 2912} +A1 = {568, 380} +A2 = {1060, 380} +A3 = {1552, 380} +A4 = {2044, 380} +A5 = {2536, 380} +A6 = {3028, 380} +A7 = {3520, 380} +A8 = {4012, 380} +A9 = {4504, 380} -A2 = {1062, 272} -B2 = {1062, 602} -C2 = {1062, 932} -D2 = {1062, 1262} -E2 = {1062, 1592} -F2 = {1062, 1922} -G2 = {1062, 2252} -H2 = {1062, 2582} -I2 = {1062, 2912} +B1 = {568, 708} +B2 = {1060, 708} +B3 = {1552, 708} +B4 = {2044, 708} +B5 = {2536, 708} +B6 = {3028, 708} +B7 = {3520, 708} +B8 = {4012, 708} +B9 = {4504, 708} -A3 = {1556, 272} -B3 = {1556, 602} -C3 = {1556, 932} -D3 = {1556, 1262} -E3 = {1556, 1592} -F3 = {1556, 1922} -G3 = {1556, 2252} -H3 = {1556, 2582} -I3 = {1556, 2912} +C1 = {568, 1036} +C2 = {1060, 1036} +C3 = {1552, 1036} +C4 = {2044, 1036} +C5 = {2536, 1036} +C6 = {3028, 1036} +C7 = {3520, 1036} +C8 = {4012, 1036} +C9 = {4504, 1036} -A4 = {2050, 272} -B4 = {2050, 602} -C4 = {2050, 932} -D4 = {2050, 1262} -E4 = {2050, 1592} -F4 = {2050, 1922} -G4 = {2050, 2252} -H4 = {2050, 2582} -I4 = {2050, 2912} +D1 = {568, 1364} +D2 = {1060, 1364} +D3 = {1552, 1364} +D4 = {2044, 1364} +D5 = {2536, 1364} +D6 = {3028, 1364} +D7 = {3520, 1364} +D8 = {4012, 1364} +D9 = {4504, 1364} -A5 = {2544, 272} -B5 = {2544, 602} -C5 = {2544, 932} -D5 = {2544, 1262} -E5 = {2544, 1592} -F5 = {2544, 1922} -G5 = {2544, 2252} -H5 = {2544, 2582} -I5 = {2544, 2912} +E1 = {568, 1692} +E2 = {1060, 1692} +E3 = {1552, 1692} +E4 = {2044, 1692} +E5 = {2536, 1692} +E6 = {3028, 1692} +E7 = {3520, 1692} +E8 = {4012, 1692} +E9 = {4504, 1692} -A6 = {3038, 272} -B6 = {3038, 602} -C6 = {3038, 932} -D6 = {3038, 1262} -E6 = {3038, 1592} -F6 = {3038, 1922} -G6 = {3038, 2252} -H6 = {3038, 2582} -I6 = {3038, 2912} +F1 = {568, 2020} +F2 = {1060, 2020} +F3 = {1552, 2020} +F4 = {2044, 2020} +F5 = {2536, 2020} +F6 = {3028, 2020} +F7 = {3520, 2020} +F8 = {4012, 2020} +F9 = {4504, 2020} -A7 = {3532, 272} -B7 = {3532, 602} -C7 = {3532, 932} -D7 = {3532, 1262} -E7 = {3532, 1592} -F7 = {3532, 1922} -G7 = {3532, 2252} -H7 = {3532, 2582} -I7 = {3532, 2912} +G1 = {568, 2348} +G2 = {1060, 2348} +G3 = {1552, 2348} +G4 = {2044, 2348} +G5 = {2536, 2348} +G6 = {3028, 2348} +G7 = {3520, 2348} +G8 = {4012, 2348} +G9 = {4504, 2348} -A8 = {4026, 272} -B8 = {4026, 602} -C8 = {4026, 932} -D8 = {4026, 1262} -E8 = {4026, 1592} -F8 = {4026, 1922} -G8 = {4026, 2252} -H8 = {4026, 2582} -I8 = {4026, 2912} +H1 = {568, 2676} +H2 = {1060, 2676} +H3 = {1552, 2676} +H4 = {2044, 2676} +H5 = {2536, 2676} +H6 = {3028, 2676} +H7 = {3520, 2676} +H8 = {4012, 2676} +H9 = {4504, 2676} -A9 = {4520, 272} -B9 = {4520, 602} -C9 = {4520, 932} -D9 = {4520, 1262} -E9 = {4520, 1592} -F9 = {4520, 1922} -G9 = {4520, 2252} -H9 = {4520, 2582} -I9 = {4520, 2912} +I1 = {568, 3004} +I2 = {1060, 3004} +I3 = {1552, 3004} +I4 = {2044, 3004} +I5 = {2536, 3004} +I6 = {3028, 3004} +I7 = {3520, 3004} +I8 = {4012, 3004} +I9 = {4504, 3004} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6.txt index d72953a..7ad2442 100755 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 6 -focusPointDimens = {532, 350} +focusPointDimens = {532, 354} -A1 = {614, 420} -B1 = {614, 776} -C1 = {614, 1132} -D1 = {614, 1488} -E1 = {614, 1844} -F1 = {614, 2200} -G1 = {614, 2556} -H1 = {614, 2912} -I1 = {614, 3268} +A1 = {612, 408} +A2 = {1148, 410} +A3 = {1684, 410} +A4 = {2220, 410} +A5 = {2756, 410} +A6 = {3292, 410} +A7 = {3828, 410} +A8 = {4364, 410} +A9 = {4900, 410} -A2 = {1152, 420} -B2 = {1152, 776} -C2 = {1152, 1132} -D2 = {1152, 1488} -E2 = {1152, 1844} -F2 = {1152, 2200} -G2 = {1152, 2556} -H2 = {1152, 2912} -I2 = {1152, 3268} +B1 = {612, 764} +B2 = {1148, 764} +B3 = {1684, 764} +B4 = {2220, 764} +B5 = {2756, 764} +B6 = {3292, 764} +B7 = {3828, 764} +B8 = {4364, 764} +B9 = {4900, 764} -A3 = {1690, 420} -B3 = {1690, 776} -C3 = {1690, 1132} -D3 = {1690, 1488} -E3 = {1690, 1844} -F3 = {1690, 2200} -G3 = {1690, 2556} -H3 = {1690, 2912} -I3 = {1690, 3268} +C1 = {612, 1120} +C2 = {1148, 1120} +C3 = {1684, 1120} +C4 = {2220, 1120} +C5 = {2756, 1120} +C6 = {3292, 1120} +C7 = {3828, 1120} +C8 = {4364, 1120} +C9 = {4900, 1120} -A4 = {2228, 420} -B4 = {2228, 776} -C4 = {2228, 1132} -D4 = {2228, 1488} -E4 = {2228, 1844} -F4 = {2228, 2200} -G4 = {2228, 2556} -H4 = {2228, 2912} -I4 = {2228, 3268} +D1 = {612, 1476} +D2 = {1148, 1476} +D3 = {1684, 1476} +D4 = {2220, 1476} +D5 = {2756, 1476} +D6 = {3292, 1476} +D7 = {3828, 1476} +D8 = {4364, 1476} +D9 = {4900, 1476} -A5 = {2766, 420} -B5 = {2766, 776} -C5 = {2766, 1132} -D5 = {2766, 1488} -E5 = {2766, 1844} -F5 = {2766, 2200} -G5 = {2766, 2556} -H5 = {2766, 2912} -I5 = {2766, 3268} +E1 = {612, 1832} +E2 = {1148, 1832} +E3 = {1684, 1832} +E4 = {2220, 1832} +E5 = {2756, 1832} +E6 = {3292, 1832} +E7 = {3828, 1832} +E8 = {4364, 1832} +E9 = {4900, 1832} -A6 = {3304, 420} -B6 = {3304, 776} -C6 = {3304, 1132} -D6 = {3304, 1488} -E6 = {3304, 1844} -F6 = {3304, 2200} -G6 = {3304, 2556} -H6 = {3304, 2912} -I6 = {3304, 3268} +F1 = {612, 2188} +F2 = {1148, 2188} +F3 = {1684, 2188} +F4 = {2220, 2188} +F5 = {2756, 2188} +F6 = {3292, 2188} +F7 = {3828, 2188} +F8 = {4364, 2188} +F9 = {4900, 2188} -A7 = {3842, 420} -B7 = {3842, 776} -C7 = {3842, 1132} -D7 = {3842, 1488} -E7 = {3842, 1844} -F7 = {3842, 2200} -G7 = {3842, 2556} -H7 = {3842, 2912} -I7 = {3842, 3268} +G1 = {612, 2544} +G2 = {1148, 2544} +G3 = {1684, 2544} +G4 = {2220, 2544} +G5 = {2756, 2544} +G6 = {3292, 2544} +G7 = {3828, 2544} +G8 = {4364, 2544} +G9 = {4900, 2544} -A8 = {4380, 420} -B8 = {4380, 776} -C8 = {4380, 1132} -D8 = {4380, 1488} -E8 = {4380, 1844} -F8 = {4380, 2200} -G8 = {4380, 2556} -H8 = {4380, 2912} -I8 = {4380, 3268} +H1 = {612, 2900} +H2 = {1148, 2900} +H3 = {1684, 2900} +H4 = {2220, 2900} +H5 = {2756, 2900} +H6 = {3292, 2900} +H7 = {3828, 2900} +H8 = {4364, 2900} +H9 = {4900, 2900} -A9 = {4918, 420} -B9 = {4918, 776} -C9 = {4918, 1132} -D9 = {4918, 1488} -E9 = {4918, 1844} -F9 = {4918, 2200} -G9 = {4918, 2556} -H9 = {4918, 2912} -I9 = {4918, 3268} +I1 = {612, 3256} +I2 = {1148, 3256} +I3 = {1684, 3256} +I4 = {2220, 3256} +I5 = {2756, 3256} +I6 = {3292, 3256} +I7 = {3828, 3256} +I8 = {4364, 3256} +I9 = {4900, 3256} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6_2.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6_2.txt index 8baa224..9c5ba0d 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6_2.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 6_2.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 6_2 -focusPointDimens = {532, 350} +focusPointDimens = {532, 354} -A1 = {614, 420} -B1 = {614, 776} -C1 = {614, 1132} -D1 = {614, 1488} -E1 = {614, 1844} -F1 = {614, 2200} -G1 = {614, 2556} -H1 = {614, 2912} -I1 = {614, 3268} +A1 = {612, 408} +A2 = {1148, 410} +A3 = {1684, 410} +A4 = {2220, 410} +A5 = {2756, 410} +A6 = {3292, 410} +A7 = {3828, 410} +A8 = {4364, 410} +A9 = {4900, 410} -A2 = {1152, 420} -B2 = {1152, 776} -C2 = {1152, 1132} -D2 = {1152, 1488} -E2 = {1152, 1844} -F2 = {1152, 2200} -G2 = {1152, 2556} -H2 = {1152, 2912} -I2 = {1152, 3268} +B1 = {612, 764} +B2 = {1148, 764} +B3 = {1684, 764} +B4 = {2220, 764} +B5 = {2756, 764} +B6 = {3292, 764} +B7 = {3828, 764} +B8 = {4364, 764} +B9 = {4900, 764} -A3 = {1690, 420} -B3 = {1690, 776} -C3 = {1690, 1132} -D3 = {1690, 1488} -E3 = {1690, 1844} -F3 = {1690, 2200} -G3 = {1690, 2556} -H3 = {1690, 2912} -I3 = {1690, 3268} +C1 = {612, 1120} +C2 = {1148, 1120} +C3 = {1684, 1120} +C4 = {2220, 1120} +C5 = {2756, 1120} +C6 = {3292, 1120} +C7 = {3828, 1120} +C8 = {4364, 1120} +C9 = {4900, 1120} -A4 = {2228, 420} -B4 = {2228, 776} -C4 = {2228, 1132} -D4 = {2228, 1488} -E4 = {2228, 1844} -F4 = {2228, 2200} -G4 = {2228, 2556} -H4 = {2228, 2912} -I4 = {2228, 3268} +D1 = {612, 1476} +D2 = {1148, 1476} +D3 = {1684, 1476} +D4 = {2220, 1476} +D5 = {2756, 1476} +D6 = {3292, 1476} +D7 = {3828, 1476} +D8 = {4364, 1476} +D9 = {4900, 1476} -A5 = {2766, 420} -B5 = {2766, 776} -C5 = {2766, 1132} -D5 = {2766, 1488} -E5 = {2766, 1844} -F5 = {2766, 2200} -G5 = {2766, 2556} -H5 = {2766, 2912} -I5 = {2766, 3268} +E1 = {612, 1832} +E2 = {1148, 1832} +E3 = {1684, 1832} +E4 = {2220, 1832} +E5 = {2756, 1832} +E6 = {3292, 1832} +E7 = {3828, 1832} +E8 = {4364, 1832} +E9 = {4900, 1832} -A6 = {3304, 420} -B6 = {3304, 776} -C6 = {3304, 1132} -D6 = {3304, 1488} -E6 = {3304, 1844} -F6 = {3304, 2200} -G6 = {3304, 2556} -H6 = {3304, 2912} -I6 = {3304, 3268} +F1 = {612, 2188} +F2 = {1148, 2188} +F3 = {1684, 2188} +F4 = {2220, 2188} +F5 = {2756, 2188} +F6 = {3292, 2188} +F7 = {3828, 2188} +F8 = {4364, 2188} +F9 = {4900, 2188} -A7 = {3842, 420} -B7 = {3842, 776} -C7 = {3842, 1132} -D7 = {3842, 1488} -E7 = {3842, 1844} -F7 = {3842, 2200} -G7 = {3842, 2556} -H7 = {3842, 2912} -I7 = {3842, 3268} +G1 = {612, 2544} +G2 = {1148, 2544} +G3 = {1684, 2544} +G4 = {2220, 2544} +G5 = {2756, 2544} +G6 = {3292, 2544} +G7 = {3828, 2544} +G8 = {4364, 2544} +G9 = {4900, 2544} -A8 = {4380, 420} -B8 = {4380, 776} -C8 = {4380, 1132} -D8 = {4380, 1488} -E8 = {4380, 1844} -F8 = {4380, 2200} -G8 = {4380, 2556} -H8 = {4380, 2912} -I8 = {4380, 3268} +H1 = {612, 2900} +H2 = {1148, 2900} +H3 = {1684, 2900} +H4 = {2220, 2900} +H5 = {2756, 2900} +H6 = {3292, 2900} +H7 = {3828, 2900} +H8 = {4364, 2900} +H9 = {4900, 2900} -A9 = {4918, 420} -B9 = {4918, 776} -C9 = {4918, 1132} -D9 = {4918, 1488} -E9 = {4918, 1844} -F9 = {4918, 2200} -G9 = {4918, 2556} -H9 = {4918, 2912} -I9 = {4918, 3268} +I1 = {612, 3256} +I2 = {1148, 3256} +I3 = {1684, 3256} +I4 = {2220, 3256} +I5 = {2756, 3256} +I6 = {3292, 3256} +I7 = {3828, 3256} +I8 = {4364, 3256} +I9 = {4900, 3256} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7.txt index e57bac6..12f2283 100755 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 7 -focusPointDimens = {728, 480} +focusPointDimens = {728, 484} -A1 = {836, 568} -B1 = {836, 1056} -C1 = {836, 1544} -D1 = {836, 2032} -E1 = {836, 2520} -F1 = {836, 3008} -G1 = {836, 3496} -H1 = {836, 3984} -I1 = {836, 4472} +A1 = {835, 558} +A2 = {1567, 558} +A3 = {2299, 558} +A4 = {3031, 558} +A5 = {3763, 558} +A6 = {4495, 558} +A7 = {5227, 558} +A8 = {5959, 558} +A9 = {6691, 558} -A2 = {1572, 568} -B2 = {1572, 1056} -C2 = {1572, 1544} -D2 = {1572, 2032} -E2 = {1572, 2520} -F2 = {1572, 3008} -G2 = {1572, 3496} -H2 = {1572, 3984} -I2 = {1572, 4472} +B1 = {835, 1046} +B2 = {1567, 1046} +B3 = {2299, 1046} +B4 = {3031, 1046} +B5 = {3763, 1046} +B6 = {4495, 1046} +B7 = {5227, 1046} +B8 = {5959, 1046} +B9 = {6691, 1046} -A3 = {2308, 568} -B3 = {2308, 1056} -C3 = {2308, 1544} -D3 = {2308, 2032} -E3 = {2308, 2520} -F3 = {2308, 3008} -G3 = {2308, 3496} -H3 = {2308, 3984} -I3 = {2308, 4472} +C1 = {835, 1534} +C2 = {1567, 1534} +C3 = {2299, 1534} +C4 = {3031, 1534} +C5 = {3763, 1534} +C6 = {4495, 1534} +C7 = {5227, 1534} +C8 = {5959, 1534} +C9 = {6691, 1534} -A4 = {3044, 568} -B4 = {3044, 1056} -C4 = {3044, 1544} -D4 = {3044, 2032} -E4 = {3044, 2520} -F4 = {3044, 3008} -G4 = {3044, 3496} -H4 = {3044, 3984} -I4 = {3044, 4472} +D1 = {835, 2022} +D2 = {1567, 2022} +D3 = {2299, 2022} +D4 = {3031, 2022} +D5 = {3763, 2022} +D6 = {4495, 2022} +D7 = {5227, 2022} +D8 = {5959, 2022} +D9 = {6691, 2022} -A5 = {3780, 568} -B5 = {3780, 1056} -C5 = {3780, 1544} -D5 = {3780, 2032} -E5 = {3780, 2520} -F5 = {3780, 3008} -G5 = {3780, 3496} -H5 = {3780, 3984} -I5 = {3780, 4472} +E1 = {835, 2510} +E2 = {1567, 2510} +E3 = {2299, 2510} +E4 = {3031, 2510} +E5 = {3763, 2510} +E6 = {4495, 2510} +E7 = {5227, 2510} +E8 = {5959, 2510} +E9 = {6691, 2510} -A6 = {4516, 568} -B6 = {4516, 1056} -C6 = {4516, 1544} -D6 = {4516, 2032} -E6 = {4516, 2520} -F6 = {4516, 3008} -G6 = {4516, 3496} -H6 = {4516, 3984} -I6 = {4516, 4472} +F1 = {835, 2998} +F2 = {1567, 2998} +F3 = {2299, 2998} +F4 = {3031, 2998} +F5 = {3763, 2998} +F6 = {4495, 2998} +F7 = {5227, 2998} +F8 = {5959, 2998} +F9 = {6691, 2998} -A7 = {5252, 568} -B7 = {5252, 1056} -C7 = {5252, 1544} -D7 = {5252, 2032} -E7 = {5252, 2520} -F7 = {5252, 3008} -G7 = {5252, 3496} -H7 = {5252, 3984} -I7 = {5252, 4472} +G1 = {835, 3486} +G2 = {1567, 3486} +G3 = {2299, 3486} +G4 = {3031, 3486} +G5 = {3763, 3486} +G6 = {4495, 3486} +G7 = {5227, 3486} +G8 = {5959, 3486} +G9 = {6691, 3486} -A8 = {5988, 568} -B8 = {5988, 1056} -C8 = {5988, 1544} -D8 = {5988, 2032} -E8 = {5988, 2520} -F8 = {5988, 3008} -G8 = {5988, 3496} -H8 = {5988, 3984} -I8 = {5988, 4472} +H1 = {835, 3974} +H2 = {1567, 3974} +H3 = {2299, 3974} +H4 = {3031, 3974} +H5 = {3763, 3974} +H6 = {4495, 3974} +H7 = {5227, 3974} +H8 = {5959, 3974} +H9 = {6691, 3974} -A9 = {6724, 568} -B9 = {6724, 1056} -C9 = {6724, 1544} -D9 = {6724, 2032} -E9 = {6724, 2520} -F9 = {6724, 3008} -G9 = {6724, 3496} -H9 = {6724, 3984} -I9 = {6724, 4472} +I1 = {835, 4462} +I2 = {1567, 4462} +I3 = {2299, 4462} +I4 = {3031, 4462} +I5 = {3763, 4462} +I6 = {4495, 4462} +I7 = {5227, 4462} +I8 = {5959, 4462} +I9 = {6691, 4462} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7_2.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7_2.txt index 0c59838..c74cf8d 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7_2.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 7_2.txt @@ -1,93 +1,93 @@ -- Focus points for Nikon Z 7_2 -focusPointDimens = {728, 480} +focusPointDimens = {728, 484} -A1 = {836, 568} -B1 = {836, 1056} -C1 = {836, 1544} -D1 = {836, 2032} -E1 = {836, 2520} -F1 = {836, 3008} -G1 = {836, 3496} -H1 = {836, 3984} -I1 = {836, 4472} +A1 = {835, 558} +A2 = {1567, 558} +A3 = {2299, 558} +A4 = {3031, 558} +A5 = {3763, 558} +A6 = {4495, 558} +A7 = {5227, 558} +A8 = {5959, 558} +A9 = {6691, 558} -A2 = {1572, 568} -B2 = {1572, 1056} -C2 = {1572, 1544} -D2 = {1572, 2032} -E2 = {1572, 2520} -F2 = {1572, 3008} -G2 = {1572, 3496} -H2 = {1572, 3984} -I2 = {1572, 4472} +B1 = {835, 1046} +B2 = {1567, 1046} +B3 = {2299, 1046} +B4 = {3031, 1046} +B5 = {3763, 1046} +B6 = {4495, 1046} +B7 = {5227, 1046} +B8 = {5959, 1046} +B9 = {6691, 1046} -A3 = {2308, 568} -B3 = {2308, 1056} -C3 = {2308, 1544} -D3 = {2308, 2032} -E3 = {2308, 2520} -F3 = {2308, 3008} -G3 = {2308, 3496} -H3 = {2308, 3984} -I3 = {2308, 4472} +C1 = {835, 1534} +C2 = {1567, 1534} +C3 = {2299, 1534} +C4 = {3031, 1534} +C5 = {3763, 1534} +C6 = {4495, 1534} +C7 = {5227, 1534} +C8 = {5959, 1534} +C9 = {6691, 1534} -A4 = {3044, 568} -B4 = {3044, 1056} -C4 = {3044, 1544} -D4 = {3044, 2032} -E4 = {3044, 2520} -F4 = {3044, 3008} -G4 = {3044, 3496} -H4 = {3044, 3984} -I4 = {3044, 4472} +D1 = {835, 2022} +D2 = {1567, 2022} +D3 = {2299, 2022} +D4 = {3031, 2022} +D5 = {3763, 2022} +D6 = {4495, 2022} +D7 = {5227, 2022} +D8 = {5959, 2022} +D9 = {6691, 2022} -A5 = {3780, 568} -B5 = {3780, 1056} -C5 = {3780, 1544} -D5 = {3780, 2032} -E5 = {3780, 2520} -F5 = {3780, 3008} -G5 = {3780, 3496} -H5 = {3780, 3984} -I5 = {3780, 4472} +E1 = {835, 2510} +E2 = {1567, 2510} +E3 = {2299, 2510} +E4 = {3031, 2510} +E5 = {3763, 2510} +E6 = {4495, 2510} +E7 = {5227, 2510} +E8 = {5959, 2510} +E9 = {6691, 2510} -A6 = {4516, 568} -B6 = {4516, 1056} -C6 = {4516, 1544} -D6 = {4516, 2032} -E6 = {4516, 2520} -F6 = {4516, 3008} -G6 = {4516, 3496} -H6 = {4516, 3984} -I6 = {4516, 4472} +F1 = {835, 2998} +F2 = {1567, 2998} +F3 = {2299, 2998} +F4 = {3031, 2998} +F5 = {3763, 2998} +F6 = {4495, 2998} +F7 = {5227, 2998} +F8 = {5959, 2998} +F9 = {6691, 2998} -A7 = {5252, 568} -B7 = {5252, 1056} -C7 = {5252, 1544} -D7 = {5252, 2032} -E7 = {5252, 2520} -F7 = {5252, 3008} -G7 = {5252, 3496} -H7 = {5252, 3984} -I7 = {5252, 4472} +G1 = {835, 3486} +G2 = {1567, 3486} +G3 = {2299, 3486} +G4 = {3031, 3486} +G5 = {3763, 3486} +G6 = {4495, 3486} +G7 = {5227, 3486} +G8 = {5959, 3486} +G9 = {6691, 3486} -A8 = {5988, 568} -B8 = {5988, 1056} -C8 = {5988, 1544} -D8 = {5988, 2032} -E8 = {5988, 2520} -F8 = {5988, 3008} -G8 = {5988, 3496} -H8 = {5988, 3984} -I8 = {5988, 4472} +H1 = {835, 3974} +H2 = {1567, 3974} +H3 = {2299, 3974} +H4 = {3031, 3974} +H5 = {3763, 3974} +H6 = {4495, 3974} +H7 = {5227, 3974} +H8 = {5959, 3974} +H9 = {6691, 3974} -A9 = {6724, 568} -B9 = {6724, 1056} -C9 = {6724, 1544} -D9 = {6724, 2032} -E9 = {6724, 2520} -F9 = {6724, 3008} -G9 = {6724, 3496} -H9 = {6724, 3984} -I9 = {6724, 4472} +I1 = {835, 4462} +I2 = {1567, 4462} +I3 = {2299, 4462} +I4 = {3031, 4462} +I5 = {3763, 4462} +I6 = {4495, 4462} +I7 = {5227, 4462} +I8 = {5959, 4462} +I9 = {6691, 4462} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 8.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 8.txt index 5ec6c7a..9c39e8c 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 8.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 8.txt @@ -1,93 +1,423 @@ --- Focus points for Nikon Z 8 - -focusPointDimens = {728, 480} - -A1 = {836, 568} -B1 = {836, 1056} -C1 = {836, 1544} -D1 = {836, 2032} -E1 = {836, 2520} -F1 = {836, 3008} -G1 = {836, 3496} -H1 = {836, 3984} -I1 = {836, 4472} - -A2 = {1572, 568} -B2 = {1572, 1056} -C2 = {1572, 1544} -D2 = {1572, 2032} -E2 = {1572, 2520} -F2 = {1572, 3008} -G2 = {1572, 3496} -H2 = {1572, 3984} -I2 = {1572, 4472} - -A3 = {2308, 568} -B3 = {2308, 1056} -C3 = {2308, 1544} -D3 = {2308, 2032} -E3 = {2308, 2520} -F3 = {2308, 3008} -G3 = {2308, 3496} -H3 = {2308, 3984} -I3 = {2308, 4472} - -A4 = {3044, 568} -B4 = {3044, 1056} -C4 = {3044, 1544} -D4 = {3044, 2032} -E4 = {3044, 2520} -F4 = {3044, 3008} -G4 = {3044, 3496} -H4 = {3044, 3984} -I4 = {3044, 4472} - -A5 = {3780, 568} -B5 = {3780, 1056} -C5 = {3780, 1544} -D5 = {3780, 2032} -E5 = {3780, 2520} -F5 = {3780, 3008} -G5 = {3780, 3496} -H5 = {3780, 3984} -I5 = {3780, 4472} - -A6 = {4516, 568} -B6 = {4516, 1056} -C6 = {4516, 1544} -D6 = {4516, 2032} -E6 = {4516, 2520} -F6 = {4516, 3008} -G6 = {4516, 3496} -H6 = {4516, 3984} -I6 = {4516, 4472} - -A7 = {5252, 568} -B7 = {5252, 1056} -C7 = {5252, 1544} -D7 = {5252, 2032} -E7 = {5252, 2520} -F7 = {5252, 3008} -G7 = {5252, 3496} -H7 = {5252, 3984} -I7 = {5252, 4472} - -A8 = {5988, 568} -B8 = {5988, 1056} -C8 = {5988, 1544} -D8 = {5988, 2032} -E8 = {5988, 2520} -F8 = {5988, 3008} -G8 = {5988, 3496} -H8 = {5988, 3984} -I8 = {5988, 4472} - -A9 = {6724, 568} -B9 = {6724, 1056} -C9 = {6724, 1544} -D9 = {6724, 2032} -E9 = {6724, 2520} -F9 = {6724, 3008} -G9 = {6724, 3496} -H9 = {6724, 3984} -I9 = {6724, 4472} +-- Focus points for Nikon Z8 + +focusPointDimens = {230, 263} + +A1 = {701, 604} +A2 = {957, 604} +A3 = {1213, 604} +A4 = {1469, 604} +A5 = {1725, 604} +A6 = {1981, 604} +A7 = {2237, 604} +A8 = {2493, 604} +A9 = {2749, 604} +A10 = {3005, 604} +A11 = {3261, 604} +A12 = {3517, 604} +A13 = {3773, 604} +A14 = {4029, 604} +A15 = {4285, 604} +A16 = {4541, 604} +A17 = {4797, 604} +A18 = {5053, 604} +A19 = {5309, 604} +A20 = {5565, 604} +A21 = {5821, 604} +A22 = {6077, 604} +A23 = {6333, 604} +A24 = {6589, 604} +A25 = {6845, 604} +A26 = {7101, 604} +A27 = {7357, 604} + +B1 = {701, 892} +B2 = {957, 892} +B3 = {1213, 892} +B4 = {1469, 892} +B5 = {1725, 892} +B6 = {1981, 892} +B7 = {2237, 892} +B8 = {2493, 892} +B9 = {2749, 892} +B10 = {3005, 892} +B11 = {3261, 892} +B12 = {3517, 892} +B13 = {3773, 892} +B14 = {4029, 892} +B15 = {4285, 892} +B16 = {4541, 892} +B17 = {4797, 892} +B18 = {5053, 892} +B19 = {5309, 892} +B20 = {5565, 892} +B21 = {5821, 892} +B22 = {6077, 892} +B23 = {6333, 892} +B24 = {6589, 892} +B25 = {6845, 892} +B26 = {7101, 892} +B27 = {7357, 892} + +C1 = {701, 1180} +C2 = {957, 1180} +C3 = {1213, 1180} +C4 = {1469, 1180} +C5 = {1725, 1180} +C6 = {1981, 1180} +C7 = {2237, 1180} +C8 = {2493, 1180} +C9 = {2749, 1180} +C10 = {3005, 1180} +C11 = {3261, 1180} +C12 = {3517, 1180} +C13 = {3773, 1180} +C14 = {4029, 1180} +C15 = {4285, 1180} +C16 = {4541, 1180} +C17 = {4797, 1180} +C18 = {5053, 1180} +C19 = {5309, 1180} +C20 = {5565, 1180} +C21 = {5821, 1180} +C22 = {6077, 1180} +C23 = {6333, 1180} +C24 = {6589, 1180} +C25 = {6845, 1180} +C26 = {7101, 1180} +C27 = {7357, 1180} + +D1 = {701, 1468} +D2 = {957, 1468} +D3 = {1213, 1468} +D4 = {1469, 1468} +D5 = {1725, 1468} +D6 = {1981, 1468} +D7 = {2237, 1468} +D8 = {2493, 1468} +D9 = {2749, 1468} +D10 = {3005, 1468} +D11 = {3261, 1468} +D12 = {3517, 1468} +D13 = {3773, 1468} +D14 = {4029, 1468} +D15 = {4285, 1468} +D16 = {4541, 1468} +D17 = {4797, 1468} +D18 = {5053, 1468} +D19 = {5309, 1468} +D20 = {5565, 1468} +D21 = {5821, 1468} +D22 = {6077, 1468} +D23 = {6333, 1468} +D24 = {6589, 1468} +D25 = {6845, 1468} +D26 = {7101, 1468} +D27 = {7357, 1468} + +E1 = {701, 1756} +E2 = {957, 1756} +E3 = {1213, 1756} +E4 = {1469, 1756} +E5 = {1725, 1756} +E6 = {1981, 1756} +E7 = {2237, 1756} +E8 = {2493, 1756} +E9 = {2749, 1756} +E10 = {3005, 1756} +E11 = {3261, 1756} +E12 = {3517, 1756} +E13 = {3773, 1756} +E14 = {4029, 1756} +E15 = {4285, 1756} +E16 = {4541, 1756} +E17 = {4797, 1756} +E18 = {5053, 1756} +E19 = {5309, 1756} +E20 = {5565, 1756} +E21 = {5821, 1756} +E22 = {6077, 1756} +E23 = {6333, 1756} +E24 = {6589, 1756} +E25 = {6845, 1756} +E26 = {7101, 1756} +E27 = {7357, 1756} + +F1 = {701, 2044} +F2 = {957, 2044} +F3 = {1213, 2044} +F4 = {1469, 2044} +F5 = {1725, 2044} +F6 = {1981, 2044} +F7 = {2237, 2044} +F8 = {2493, 2044} +F9 = {2749, 2044} +F10 = {3005, 2044} +F11 = {3261, 2044} +F12 = {3517, 2044} +F13 = {3773, 2044} +F14 = {4029, 2044} +F15 = {4285, 2044} +F16 = {4541, 2044} +F17 = {4797, 2044} +F18 = {5053, 2044} +F19 = {5309, 2044} +F20 = {5565, 2044} +F21 = {5821, 2044} +F22 = {6077, 2044} +F23 = {6333, 2044} +F24 = {6589, 2044} +F25 = {6845, 2044} +F26 = {7101, 2044} +F27 = {7357, 2044} + +G1 = {701, 2332} +G2 = {957, 2332} +G3 = {1213, 2332} +G4 = {1469, 2332} +G5 = {1725, 2332} +G6 = {1981, 2332} +G7 = {2237, 2332} +G8 = {2493, 2332} +G9 = {2749, 2332} +G10 = {3005, 2332} +G11 = {3261, 2332} +G12 = {3517, 2332} +G13 = {3773, 2332} +G14 = {4029, 2332} +G15 = {4285, 2332} +G16 = {4541, 2332} +G17 = {4797, 2332} +G18 = {5053, 2332} +G19 = {5309, 2332} +G20 = {5565, 2332} +G21 = {5821, 2332} +G22 = {6077, 2332} +G23 = {6333, 2332} +G24 = {6589, 2332} +G25 = {6845, 2332} +G26 = {7101, 2332} +G27 = {7357, 2332} + +H1 = {701, 2620} +H2 = {957, 2620} +H3 = {1213, 2620} +H4 = {1469, 2620} +H5 = {1725, 2620} +H6 = {1981, 2620} +H7 = {2237, 2620} +H8 = {2493, 2620} +H9 = {2749, 2620} +H10 = {3005, 2620} +H11 = {3261, 2620} +H12 = {3517, 2620} +H13 = {3773, 2620} +H14 = {4029, 2620} +H15 = {4285, 2620} +H16 = {4541, 2620} +H17 = {4797, 2620} +H18 = {5053, 2620} +H19 = {5309, 2620} +H20 = {5565, 2620} +H21 = {5821, 2620} +H22 = {6077, 2620} +H23 = {6333, 2620} +H24 = {6589, 2620} +H25 = {6845, 2620} +H26 = {7101, 2620} +H27 = {7357, 2620} + +I1 = {701, 2908} +I2 = {957, 2908} +I3 = {1213, 2908} +I4 = {1469, 2908} +I5 = {1725, 2908} +I6 = {1981, 2908} +I7 = {2237, 2908} +I8 = {2493, 2908} +I9 = {2749, 2908} +I10 = {3005, 2908} +I11 = {3261, 2908} +I12 = {3517, 2908} +I13 = {3773, 2908} +I14 = {4029, 2908} +I15 = {4285, 2908} +I16 = {4541, 2908} +I17 = {4797, 2908} +I18 = {5053, 2908} +I19 = {5309, 2908} +I20 = {5565, 2908} +I21 = {5821, 2908} +I22 = {6077, 2908} +I23 = {6333, 2908} +I24 = {6589, 2908} +I25 = {6845, 2908} +I26 = {7101, 2908} +I27 = {7357, 2908} + +J1 = {701, 3196} +J2 = {957, 3196} +J3 = {1213, 3196} +J4 = {1469, 3196} +J5 = {1725, 3196} +J6 = {1981, 3196} +J7 = {2237, 3196} +J8 = {2493, 3196} +J9 = {2749, 3196} +J10 = {3005, 3196} +J11 = {3261, 3196} +J12 = {3517, 3196} +J13 = {3773, 3196} +J14 = {4029, 3196} +J15 = {4285, 3196} +J16 = {4541, 3196} +J17 = {4797, 3196} +J18 = {5053, 3196} +J19 = {5309, 3196} +J20 = {5565, 3196} +J21 = {5821, 3196} +J22 = {6077, 3196} +J23 = {6333, 3196} +J24 = {6589, 3196} +J25 = {6845, 3196} +J26 = {7101, 3196} +J27 = {7357, 3196} + +K1 = {701, 3484} +K2 = {957, 3484} +K3 = {1213, 3484} +K4 = {1469, 3484} +K5 = {1725, 3484} +K6 = {1981, 3484} +K7 = {2237, 3484} +K8 = {2493, 3484} +K9 = {2749, 3484} +K10 = {3005, 3484} +K11 = {3261, 3484} +K12 = {3517, 3484} +K13 = {3773, 3484} +K14 = {4029, 3484} +K15 = {4285, 3484} +K16 = {4541, 3484} +K17 = {4797, 3484} +K18 = {5053, 3484} +K19 = {5309, 3484} +K20 = {5565, 3484} +K21 = {5821, 3484} +K22 = {6077, 3484} +K23 = {6333, 3484} +K24 = {6589, 3484} +K25 = {6845, 3484} +K26 = {7101, 3484} +K27 = {7357, 3484} + +L1 = {701, 3772} +L2 = {957, 3772} +L3 = {1213, 3772} +L4 = {1469, 3772} +L5 = {1725, 3772} +L6 = {1981, 3772} +L7 = {2237, 3772} +L8 = {2493, 3772} +L9 = {2749, 3772} +L10 = {3005, 3772} +L11 = {3261, 3772} +L12 = {3517, 3772} +L13 = {3773, 3772} +L14 = {4029, 3772} +L15 = {4285, 3772} +L16 = {4541, 3772} +L17 = {4797, 3772} +L18 = {5053, 3772} +L19 = {5309, 3772} +L20 = {5565, 3772} +L21 = {5821, 3772} +L22 = {6077, 3772} +L23 = {6333, 3772} +L24 = {6589, 3772} +L25 = {6845, 3772} +L26 = {7101, 3772} +L27 = {7357, 3772} + +M1 = {701, 4060} +M2 = {957, 4060} +M3 = {1213, 4060} +M4 = {1469, 4060} +M5 = {1725, 4060} +M6 = {1981, 4060} +M7 = {2237, 4060} +M8 = {2493, 4060} +M9 = {2749, 4060} +M10 = {3005, 4060} +M11 = {3261, 4060} +M12 = {3517, 4060} +M13 = {3773, 4060} +M14 = {4029, 4060} +M15 = {4285, 4060} +M16 = {4541, 4060} +M17 = {4797, 4060} +M18 = {5053, 4060} +M19 = {5309, 4060} +M20 = {5565, 4060} +M21 = {5821, 4060} +M22 = {6077, 4060} +M23 = {6333, 4060} +M24 = {6589, 4060} +M25 = {6845, 4060} +M26 = {7101, 4060} +M27 = {7357, 4060} + +N1 = {701, 4348} +N2 = {957, 4348} +N3 = {1213, 4348} +N4 = {1469, 4348} +N5 = {1725, 4348} +N6 = {1981, 4348} +N7 = {2237, 4348} +N8 = {2493, 4348} +N9 = {2749, 4348} +N10 = {3005, 4348} +N11 = {3261, 4348} +N12 = {3517, 4348} +N13 = {3773, 4348} +N14 = {4029, 4348} +N15 = {4285, 4348} +N16 = {4541, 4348} +N17 = {4797, 4348} +N18 = {5053, 4348} +N19 = {5309, 4348} +N20 = {5565, 4348} +N21 = {5821, 4348} +N22 = {6077, 4348} +N23 = {6333, 4348} +N24 = {6589, 4348} +N25 = {6845, 4348} +N26 = {7101, 4348} +N27 = {7357, 4348} + +O1 = {701, 4636} +O2 = {957, 4636} +O3 = {1213, 4636} +O4 = {1469, 4636} +O5 = {1725, 4636} +O6 = {1981, 4636} +O7 = {2237, 4636} +O8 = {2493, 4636} +O9 = {2749, 4636} +O10 = {3005, 4636} +O11 = {3261, 4636} +O12 = {3517, 4636} +O13 = {3773, 4636} +O14 = {4029, 4636} +O15 = {4285, 4636} +O16 = {4541, 4636} +O17 = {4797, 4636} +O18 = {5053, 4636} +O19 = {5309, 4636} +O20 = {5565, 4636} +O21 = {5821, 4636} +O22 = {6077, 4636} +O23 = {6333, 4636} +O24 = {6589, 4636} +O25 = {6845, 4636} +O26 = {7101, 4636} +O27 = {7357, 4636} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 9.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 9.txt index 5700280..193a80e 100644 --- a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 9.txt +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z 9.txt @@ -1,93 +1,423 @@ --- Focus points for Nikon Z 9 - -focusPointDimens = {728, 480} - -A1 = {836, 568} -B1 = {836, 1056} -C1 = {836, 1544} -D1 = {836, 2032} -E1 = {836, 2520} -F1 = {836, 3008} -G1 = {836, 3496} -H1 = {836, 3984} -I1 = {836, 4472} - -A2 = {1572, 568} -B2 = {1572, 1056} -C2 = {1572, 1544} -D2 = {1572, 2032} -E2 = {1572, 2520} -F2 = {1572, 3008} -G2 = {1572, 3496} -H2 = {1572, 3984} -I2 = {1572, 4472} - -A3 = {2308, 568} -B3 = {2308, 1056} -C3 = {2308, 1544} -D3 = {2308, 2032} -E3 = {2308, 2520} -F3 = {2308, 3008} -G3 = {2308, 3496} -H3 = {2308, 3984} -I3 = {2308, 4472} - -A4 = {3044, 568} -B4 = {3044, 1056} -C4 = {3044, 1544} -D4 = {3044, 2032} -E4 = {3044, 2520} -F4 = {3044, 3008} -G4 = {3044, 3496} -H4 = {3044, 3984} -I4 = {3044, 4472} - -A5 = {3780, 568} -B5 = {3780, 1056} -C5 = {3780, 1544} -D5 = {3780, 2032} -E5 = {3780, 2520} -F5 = {3780, 3008} -G5 = {3780, 3496} -H5 = {3780, 3984} -I5 = {3780, 4472} - -A6 = {4516, 568} -B6 = {4516, 1056} -C6 = {4516, 1544} -D6 = {4516, 2032} -E6 = {4516, 2520} -F6 = {4516, 3008} -G6 = {4516, 3496} -H6 = {4516, 3984} -I6 = {4516, 4472} - -A7 = {5252, 568} -B7 = {5252, 1056} -C7 = {5252, 1544} -D7 = {5252, 2032} -E7 = {5252, 2520} -F7 = {5252, 3008} -G7 = {5252, 3496} -H7 = {5252, 3984} -I7 = {5252, 4472} - -A8 = {5988, 568} -B8 = {5988, 1056} -C8 = {5988, 1544} -D8 = {5988, 2032} -E8 = {5988, 2520} -F8 = {5988, 3008} -G8 = {5988, 3496} -H8 = {5988, 3984} -I8 = {5988, 4472} - -A9 = {6724, 568} -B9 = {6724, 1056} -C9 = {6724, 1544} -D9 = {6724, 2032} -E9 = {6724, 2520} -F9 = {6724, 3008} -G9 = {6724, 3496} -H9 = {6724, 3984} -I9 = {6724, 4472} +-- Focus points for Nikon Z9 + +focusPointDimens = {230, 263} + +A1 = {701, 604} +A2 = {957, 604} +A3 = {1213, 604} +A4 = {1469, 604} +A5 = {1725, 604} +A6 = {1981, 604} +A7 = {2237, 604} +A8 = {2493, 604} +A9 = {2749, 604} +A10 = {3005, 604} +A11 = {3261, 604} +A12 = {3517, 604} +A13 = {3773, 604} +A14 = {4029, 604} +A15 = {4285, 604} +A16 = {4541, 604} +A17 = {4797, 604} +A18 = {5053, 604} +A19 = {5309, 604} +A20 = {5565, 604} +A21 = {5821, 604} +A22 = {6077, 604} +A23 = {6333, 604} +A24 = {6589, 604} +A25 = {6845, 604} +A26 = {7101, 604} +A27 = {7357, 604} + +B1 = {701, 892} +B2 = {957, 892} +B3 = {1213, 892} +B4 = {1469, 892} +B5 = {1725, 892} +B6 = {1981, 892} +B7 = {2237, 892} +B8 = {2493, 892} +B9 = {2749, 892} +B10 = {3005, 892} +B11 = {3261, 892} +B12 = {3517, 892} +B13 = {3773, 892} +B14 = {4029, 892} +B15 = {4285, 892} +B16 = {4541, 892} +B17 = {4797, 892} +B18 = {5053, 892} +B19 = {5309, 892} +B20 = {5565, 892} +B21 = {5821, 892} +B22 = {6077, 892} +B23 = {6333, 892} +B24 = {6589, 892} +B25 = {6845, 892} +B26 = {7101, 892} +B27 = {7357, 892} + +C1 = {701, 1180} +C2 = {957, 1180} +C3 = {1213, 1180} +C4 = {1469, 1180} +C5 = {1725, 1180} +C6 = {1981, 1180} +C7 = {2237, 1180} +C8 = {2493, 1180} +C9 = {2749, 1180} +C10 = {3005, 1180} +C11 = {3261, 1180} +C12 = {3517, 1180} +C13 = {3773, 1180} +C14 = {4029, 1180} +C15 = {4285, 1180} +C16 = {4541, 1180} +C17 = {4797, 1180} +C18 = {5053, 1180} +C19 = {5309, 1180} +C20 = {5565, 1180} +C21 = {5821, 1180} +C22 = {6077, 1180} +C23 = {6333, 1180} +C24 = {6589, 1180} +C25 = {6845, 1180} +C26 = {7101, 1180} +C27 = {7357, 1180} + +D1 = {701, 1468} +D2 = {957, 1468} +D3 = {1213, 1468} +D4 = {1469, 1468} +D5 = {1725, 1468} +D6 = {1981, 1468} +D7 = {2237, 1468} +D8 = {2493, 1468} +D9 = {2749, 1468} +D10 = {3005, 1468} +D11 = {3261, 1468} +D12 = {3517, 1468} +D13 = {3773, 1468} +D14 = {4029, 1468} +D15 = {4285, 1468} +D16 = {4541, 1468} +D17 = {4797, 1468} +D18 = {5053, 1468} +D19 = {5309, 1468} +D20 = {5565, 1468} +D21 = {5821, 1468} +D22 = {6077, 1468} +D23 = {6333, 1468} +D24 = {6589, 1468} +D25 = {6845, 1468} +D26 = {7101, 1468} +D27 = {7357, 1468} + +E1 = {701, 1756} +E2 = {957, 1756} +E3 = {1213, 1756} +E4 = {1469, 1756} +E5 = {1725, 1756} +E6 = {1981, 1756} +E7 = {2237, 1756} +E8 = {2493, 1756} +E9 = {2749, 1756} +E10 = {3005, 1756} +E11 = {3261, 1756} +E12 = {3517, 1756} +E13 = {3773, 1756} +E14 = {4029, 1756} +E15 = {4285, 1756} +E16 = {4541, 1756} +E17 = {4797, 1756} +E18 = {5053, 1756} +E19 = {5309, 1756} +E20 = {5565, 1756} +E21 = {5821, 1756} +E22 = {6077, 1756} +E23 = {6333, 1756} +E24 = {6589, 1756} +E25 = {6845, 1756} +E26 = {7101, 1756} +E27 = {7357, 1756} + +F1 = {701, 2044} +F2 = {957, 2044} +F3 = {1213, 2044} +F4 = {1469, 2044} +F5 = {1725, 2044} +F6 = {1981, 2044} +F7 = {2237, 2044} +F8 = {2493, 2044} +F9 = {2749, 2044} +F10 = {3005, 2044} +F11 = {3261, 2044} +F12 = {3517, 2044} +F13 = {3773, 2044} +F14 = {4029, 2044} +F15 = {4285, 2044} +F16 = {4541, 2044} +F17 = {4797, 2044} +F18 = {5053, 2044} +F19 = {5309, 2044} +F20 = {5565, 2044} +F21 = {5821, 2044} +F22 = {6077, 2044} +F23 = {6333, 2044} +F24 = {6589, 2044} +F25 = {6845, 2044} +F26 = {7101, 2044} +F27 = {7357, 2044} + +G1 = {701, 2332} +G2 = {957, 2332} +G3 = {1213, 2332} +G4 = {1469, 2332} +G5 = {1725, 2332} +G6 = {1981, 2332} +G7 = {2237, 2332} +G8 = {2493, 2332} +G9 = {2749, 2332} +G10 = {3005, 2332} +G11 = {3261, 2332} +G12 = {3517, 2332} +G13 = {3773, 2332} +G14 = {4029, 2332} +G15 = {4285, 2332} +G16 = {4541, 2332} +G17 = {4797, 2332} +G18 = {5053, 2332} +G19 = {5309, 2332} +G20 = {5565, 2332} +G21 = {5821, 2332} +G22 = {6077, 2332} +G23 = {6333, 2332} +G24 = {6589, 2332} +G25 = {6845, 2332} +G26 = {7101, 2332} +G27 = {7357, 2332} + +H1 = {701, 2620} +H2 = {957, 2620} +H3 = {1213, 2620} +H4 = {1469, 2620} +H5 = {1725, 2620} +H6 = {1981, 2620} +H7 = {2237, 2620} +H8 = {2493, 2620} +H9 = {2749, 2620} +H10 = {3005, 2620} +H11 = {3261, 2620} +H12 = {3517, 2620} +H13 = {3773, 2620} +H14 = {4029, 2620} +H15 = {4285, 2620} +H16 = {4541, 2620} +H17 = {4797, 2620} +H18 = {5053, 2620} +H19 = {5309, 2620} +H20 = {5565, 2620} +H21 = {5821, 2620} +H22 = {6077, 2620} +H23 = {6333, 2620} +H24 = {6589, 2620} +H25 = {6845, 2620} +H26 = {7101, 2620} +H27 = {7357, 2620} + +I1 = {701, 2908} +I2 = {957, 2908} +I3 = {1213, 2908} +I4 = {1469, 2908} +I5 = {1725, 2908} +I6 = {1981, 2908} +I7 = {2237, 2908} +I8 = {2493, 2908} +I9 = {2749, 2908} +I10 = {3005, 2908} +I11 = {3261, 2908} +I12 = {3517, 2908} +I13 = {3773, 2908} +I14 = {4029, 2908} +I15 = {4285, 2908} +I16 = {4541, 2908} +I17 = {4797, 2908} +I18 = {5053, 2908} +I19 = {5309, 2908} +I20 = {5565, 2908} +I21 = {5821, 2908} +I22 = {6077, 2908} +I23 = {6333, 2908} +I24 = {6589, 2908} +I25 = {6845, 2908} +I26 = {7101, 2908} +I27 = {7357, 2908} + +J1 = {701, 3196} +J2 = {957, 3196} +J3 = {1213, 3196} +J4 = {1469, 3196} +J5 = {1725, 3196} +J6 = {1981, 3196} +J7 = {2237, 3196} +J8 = {2493, 3196} +J9 = {2749, 3196} +J10 = {3005, 3196} +J11 = {3261, 3196} +J12 = {3517, 3196} +J13 = {3773, 3196} +J14 = {4029, 3196} +J15 = {4285, 3196} +J16 = {4541, 3196} +J17 = {4797, 3196} +J18 = {5053, 3196} +J19 = {5309, 3196} +J20 = {5565, 3196} +J21 = {5821, 3196} +J22 = {6077, 3196} +J23 = {6333, 3196} +J24 = {6589, 3196} +J25 = {6845, 3196} +J26 = {7101, 3196} +J27 = {7357, 3196} + +K1 = {701, 3484} +K2 = {957, 3484} +K3 = {1213, 3484} +K4 = {1469, 3484} +K5 = {1725, 3484} +K6 = {1981, 3484} +K7 = {2237, 3484} +K8 = {2493, 3484} +K9 = {2749, 3484} +K10 = {3005, 3484} +K11 = {3261, 3484} +K12 = {3517, 3484} +K13 = {3773, 3484} +K14 = {4029, 3484} +K15 = {4285, 3484} +K16 = {4541, 3484} +K17 = {4797, 3484} +K18 = {5053, 3484} +K19 = {5309, 3484} +K20 = {5565, 3484} +K21 = {5821, 3484} +K22 = {6077, 3484} +K23 = {6333, 3484} +K24 = {6589, 3484} +K25 = {6845, 3484} +K26 = {7101, 3484} +K27 = {7357, 3484} + +L1 = {701, 3772} +L2 = {957, 3772} +L3 = {1213, 3772} +L4 = {1469, 3772} +L5 = {1725, 3772} +L6 = {1981, 3772} +L7 = {2237, 3772} +L8 = {2493, 3772} +L9 = {2749, 3772} +L10 = {3005, 3772} +L11 = {3261, 3772} +L12 = {3517, 3772} +L13 = {3773, 3772} +L14 = {4029, 3772} +L15 = {4285, 3772} +L16 = {4541, 3772} +L17 = {4797, 3772} +L18 = {5053, 3772} +L19 = {5309, 3772} +L20 = {5565, 3772} +L21 = {5821, 3772} +L22 = {6077, 3772} +L23 = {6333, 3772} +L24 = {6589, 3772} +L25 = {6845, 3772} +L26 = {7101, 3772} +L27 = {7357, 3772} + +M1 = {701, 4060} +M2 = {957, 4060} +M3 = {1213, 4060} +M4 = {1469, 4060} +M5 = {1725, 4060} +M6 = {1981, 4060} +M7 = {2237, 4060} +M8 = {2493, 4060} +M9 = {2749, 4060} +M10 = {3005, 4060} +M11 = {3261, 4060} +M12 = {3517, 4060} +M13 = {3773, 4060} +M14 = {4029, 4060} +M15 = {4285, 4060} +M16 = {4541, 4060} +M17 = {4797, 4060} +M18 = {5053, 4060} +M19 = {5309, 4060} +M20 = {5565, 4060} +M21 = {5821, 4060} +M22 = {6077, 4060} +M23 = {6333, 4060} +M24 = {6589, 4060} +M25 = {6845, 4060} +M26 = {7101, 4060} +M27 = {7357, 4060} + +N1 = {701, 4348} +N2 = {957, 4348} +N3 = {1213, 4348} +N4 = {1469, 4348} +N5 = {1725, 4348} +N6 = {1981, 4348} +N7 = {2237, 4348} +N8 = {2493, 4348} +N9 = {2749, 4348} +N10 = {3005, 4348} +N11 = {3261, 4348} +N12 = {3517, 4348} +N13 = {3773, 4348} +N14 = {4029, 4348} +N15 = {4285, 4348} +N16 = {4541, 4348} +N17 = {4797, 4348} +N18 = {5053, 4348} +N19 = {5309, 4348} +N20 = {5565, 4348} +N21 = {5821, 4348} +N22 = {6077, 4348} +N23 = {6333, 4348} +N24 = {6589, 4348} +N25 = {6845, 4348} +N26 = {7101, 4348} +N27 = {7357, 4348} + +O1 = {701, 4636} +O2 = {957, 4636} +O3 = {1213, 4636} +O4 = {1469, 4636} +O5 = {1725, 4636} +O6 = {1981, 4636} +O7 = {2237, 4636} +O8 = {2493, 4636} +O9 = {2749, 4636} +O10 = {3005, 4636} +O11 = {3261, 4636} +O12 = {3517, 4636} +O13 = {3773, 4636} +O14 = {4029, 4636} +O15 = {4285, 4636} +O16 = {4541, 4636} +O17 = {4797, 4636} +O18 = {5053, 4636} +O19 = {5309, 4636} +O20 = {5565, 4636} +O21 = {5821, 4636} +O22 = {6077, 4636} +O23 = {6333, 4636} +O24 = {6589, 4636} +O25 = {6845, 4636} +O26 = {7101, 4636} +O27 = {7357, 4636} diff --git a/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z6_3.txt b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z6_3.txt new file mode 100644 index 0000000..f9f8d5b --- /dev/null +++ b/focuspoints.lrdevplugin/focus_points/nikon corporation/nikon z6_3.txt @@ -0,0 +1,315 @@ +-- Focus points for Nikon Z6_3 (note the difference in camera model compared to "Z 6_2"!!) + +focusPointDimens = {242, 272} + +A1 = {80, 140} +A2 = {336, 140} +A3 = {592, 140} +A4 = {848, 140} +A5 = {1104, 140} +A6 = {1360, 140} +A7 = {1616, 140} +A8 = {1872, 140} +A9 = {2128, 140} +A10 = {2384, 140} +A11 = {2640, 140} +A12 = {2896, 140} +A13 = {3152, 140} +A14 = {3408, 140} +A15 = {3664, 140} +A16 = {3920, 140} +A17 = {4176, 140} +A18 = {4432, 140} +A19 = {4688, 140} +A20 = {4944, 140} +A21 = {5200, 140} +A22 = {5456, 140} +A23 = {5712, 140} + +B1 = {80, 428} +B2 = {336, 428} +B3 = {592, 428} +B4 = {848, 428} +B5 = {1104, 428} +B6 = {1360, 428} +B7 = {1616, 428} +B8 = {1872, 428} +B9 = {2128, 428} +B10 = {2384, 428} +B11 = {2640, 428} +B12 = {2896, 428} +B13 = {3152, 428} +B14 = {3408, 428} +B15 = {3664, 428} +B16 = {3920, 428} +B17 = {4176, 428} +B18 = {4432, 428} +B19 = {4688, 428} +B20 = {4944, 428} +B21 = {5200, 428} +B22 = {5456, 428} +B23 = {5712, 428} + +C1 = {80, 716} +C2 = {336, 716} +C3 = {592, 716} +C4 = {848, 716} +C5 = {1104, 716} +C6 = {1360, 716} +C7 = {1616, 716} +C8 = {1872, 716} +C9 = {2128, 716} +C10 = {2384, 716} +C11 = {2640, 716} +C12 = {2896, 716} +C13 = {3152, 716} +C14 = {3408, 716} +C15 = {3664, 716} +C16 = {3920, 716} +C17 = {4176, 716} +C18 = {4432, 716} +C19 = {4688, 716} +C20 = {4944, 716} +C21 = {5200, 716} +C22 = {5456, 716} +C23 = {5712, 716} + +D1 = {80, 1004} +D2 = {336, 1004} +D3 = {592, 1004} +D4 = {848, 1004} +D5 = {1104, 1004} +D6 = {1360, 1004} +D7 = {1616, 1004} +D8 = {1872, 1004} +D9 = {2128, 1004} +D10 = {2384, 1004} +D11 = {2640, 1004} +D12 = {2896, 1004} +D13 = {3152, 1004} +D14 = {3408, 1004} +D15 = {3664, 1004} +D16 = {3920, 1004} +D17 = {4176, 1004} +D18 = {4432, 1004} +D19 = {4688, 1004} +D20 = {4944, 1004} +D21 = {5200, 1004} +D22 = {5456, 1004} +D23 = {5712, 1004} + +E1 = {80, 1292} +E2 = {336, 1292} +E3 = {592, 1292} +E4 = {848, 1292} +E5 = {1104, 1292} +E6 = {1360, 1292} +E7 = {1616, 1292} +E8 = {1872, 1292} +E9 = {2128, 1292} +E10 = {2384, 1292} +E11 = {2640, 1292} +E12 = {2896, 1292} +E13 = {3152, 1292} +E14 = {3408, 1292} +E15 = {3664, 1292} +E16 = {3920, 1292} +E17 = {4176, 1292} +E18 = {4432, 1292} +E19 = {4688, 1292} +E20 = {4944, 1292} +E21 = {5200, 1292} +E22 = {5456, 1292} +E23 = {5712, 1292} + +F1 = {80, 1580} +F2 = {336, 1580} +F3 = {592, 1580} +F4 = {848, 1580} +F5 = {1104, 1580} +F6 = {1360, 1580} +F7 = {1616, 1580} +F8 = {1872, 1580} +F9 = {2128, 1580} +F10 = {2384, 1580} +F11 = {2640, 1580} +F12 = {2896, 1580} +F13 = {3152, 1580} +F14 = {3408, 1580} +F15 = {3664, 1580} +F16 = {3920, 1580} +F17 = {4176, 1580} +F18 = {4432, 1580} +F19 = {4688, 1580} +F20 = {4944, 1580} +F21 = {5200, 1580} +F22 = {5456, 1580} +F23 = {5712, 1580} + +G1 = {80, 1868} +G2 = {336, 1868} +G3 = {592, 1868} +G4 = {848, 1868} +G5 = {1104, 1868} +G6 = {1360, 1868} +G7 = {1616, 1868} +G8 = {1872, 1868} +G9 = {2128, 1868} +G10 = {2384, 1868} +G11 = {2640, 1868} +G12 = {2896, 1868} +G13 = {3152, 1868} +G14 = {3408, 1868} +G15 = {3664, 1868} +G16 = {3920, 1868} +G17 = {4176, 1868} +G18 = {4432, 1868} +G19 = {4688, 1868} +G20 = {4944, 1868} +G21 = {5200, 1868} +G22 = {5456, 1868} +G23 = {5712, 1868} + +H1 = {80, 2156} +H2 = {336, 2156} +H3 = {592, 2156} +H4 = {848, 2156} +H5 = {1104, 2156} +H6 = {1360, 2156} +H7 = {1616, 2156} +H8 = {1872, 2156} +H9 = {2128, 2156} +H10 = {2384, 2156} +H11 = {2640, 2156} +H12 = {2896, 2156} +H13 = {3152, 2156} +H14 = {3408, 2156} +H15 = {3664, 2156} +H16 = {3920, 2156} +H17 = {4176, 2156} +H18 = {4432, 2156} +H19 = {4688, 2156} +H20 = {4944, 2156} +H21 = {5200, 2156} +H22 = {5456, 2156} +H23 = {5712, 2156} + +I1 = {80, 2444} +I2 = {336, 2444} +I3 = {592, 2444} +I4 = {848, 2444} +I5 = {1104, 2444} +I6 = {1360, 2444} +I7 = {1616, 2444} +I8 = {1872, 2444} +I9 = {2128, 2444} +I10 = {2384, 2444} +I11 = {2640, 2444} +I12 = {2896, 2444} +I13 = {3152, 2444} +I14 = {3408, 2444} +I15 = {3664, 2444} +I16 = {3920, 2444} +I17 = {4176, 2444} +I18 = {4432, 2444} +I19 = {4688, 2444} +I20 = {4944, 2444} +I21 = {5200, 2444} +I22 = {5456, 2444} +I23 = {5712, 2444} + +J1 = {80, 2732} +J2 = {336, 2732} +J3 = {592, 2732} +J4 = {848, 2732} +J5 = {1104, 2732} +J6 = {1360, 2732} +J7 = {1616, 2732} +J8 = {1872, 2732} +J9 = {2128, 2732} +J10 = {2384, 2732} +J11 = {2640, 2732} +J12 = {2896, 2732} +J13 = {3152, 2732} +J14 = {3408, 2732} +J15 = {3664, 2732} +J16 = {3920, 2732} +J17 = {4176, 2732} +J18 = {4432, 2732} +J19 = {4688, 2732} +J20 = {4944, 2732} +J21 = {5200, 2732} +J22 = {5456, 2732} +J23 = {5712, 2732} + +K1 = {80, 3020} +K2 = {336, 3020} +K3 = {592, 3020} +K4 = {848, 3020} +K5 = {1104, 3020} +K6 = {1360, 3020} +K7 = {1616, 3020} +K8 = {1872, 3020} +K9 = {2128, 3020} +K10 = {2384, 3020} +K11 = {2640, 3020} +K12 = {2896, 3020} +K13 = {3152, 3020} +K14 = {3408, 3020} +K15 = {3664, 3020} +K16 = {3920, 3020} +K17 = {4176, 3020} +K18 = {4432, 3020} +K19 = {4688, 3020} +K20 = {4944, 3020} +K21 = {5200, 3020} +K22 = {5456, 3020} +K23 = {5712, 3020} + +L1 = {80, 3308} +L2 = {336, 3308} +L3 = {592, 3308} +L4 = {848, 3308} +L5 = {1104, 3308} +L6 = {1360, 3308} +L7 = {1616, 3308} +L8 = {1872, 3308} +L9 = {2128, 3308} +L10 = {2384, 3308} +L11 = {2640, 3308} +L12 = {2896, 3308} +L13 = {3152, 3308} +L14 = {3408, 3308} +L15 = {3664, 3308} +L16 = {3920, 3308} +L17 = {4176, 3308} +L18 = {4432, 3308} +L19 = {4688, 3308} +L20 = {4944, 3308} +L21 = {5200, 3308} +L22 = {5456, 3308} +L23 = {5712, 3308} + +M1 = {80, 3596} +M2 = {336, 3596} +M3 = {592, 3596} +M4 = {848, 3596} +M5 = {1104, 3596} +M6 = {1360, 3596} +M7 = {1616, 3596} +M8 = {1872, 3596} +M9 = {2128, 3596} +M10 = {2384, 3596} +M11 = {2640, 3596} +M12 = {2896, 3596} +M13 = {3152, 3596} +M14 = {3408, 3596} +M15 = {3664, 3596} +M16 = {3920, 3596} +M17 = {4176, 3596} +M18 = {4432, 3596} +M19 = {4688, 3596} +M20 = {4944, 3596} +M21 = {5200, 3596} +M22 = {5456, 3596} +M23 = {5712, 3596}