diff --git a/internal/spdxlicense/generate/generate_license_list.go b/internal/spdxlicense/generate/generate_license_list.go index c1527d23a57..5c5bf26b760 100644 --- a/internal/spdxlicense/generate/generate_license_list.go +++ b/internal/spdxlicense/generate/generate_license_list.go @@ -11,8 +11,6 @@ import ( "strings" "text/template" "time" - - "github.com/scylladb/go-set/strset" ) // This program generates license_list.go. @@ -35,7 +33,7 @@ var licenseIDs = map[string]string{ } `)) -var versionMatch = regexp.MustCompile(`-([0-9]+)\.?([0-9]+)?\.?([0-9]+)?\.?`) +var versionMatch = regexp.MustCompile(`([0-9]+)\.?([0-9]+)?\.?([0-9]+)?\.?`) func main() { if err := run(); err != nil { @@ -49,7 +47,6 @@ func run() error { if err != nil { return fmt.Errorf("unable to get licenses list: %w", err) } - var result LicenseList if err = json.NewDecoder(resp.Body).Decode(&result); err != nil { return fmt.Errorf("unable to decode license list: %w", err) @@ -103,58 +100,59 @@ func run() error { // The third pass is for overwriting deprecated licenses with replacements, for example GPL-2.0+ is deprecated // and now maps to GPL-2.0-or-later. func processSPDXLicense(result LicenseList) map[string]string { - // first pass build map - var licenseIDs = make(map[string]string) - for _, l := range result.Licenses { - cleanID := strings.ToLower(l.ID) - if _, exists := licenseIDs[cleanID]; exists { - log.Fatalf("duplicate license ID found: %q", cleanID) - } - licenseIDs[cleanID] = l.ID - } - - // The order of variations/permutations of a license ID matters because of we how shuffle its digits, - // that is because the permutation code can generate the same value for two difference licenses, - // for example: The licenses `ABC-1.0` and `ABC-1.1` can both map to `ABC-1`, - // so we need to guarantee the order they are created to avoid mapping them wrongly. So we use a sorted list. - // To overwrite deprecated licenses during the first pass we would later on rely on map order, - // [which in go is not consistent by design](https://stackoverflow.com/a/55925880). + // The order of variations/permutations of a license ID matter. + // The permutation code can generate the same value for two difference licenses, + // for example: The licenses `ABC-1.0` and `ABC-1.1` can both map to `ABC1`, + // we need to guarantee the order they are created to avoid mapping them incorrectly. + // To do this we use a sorted list. sort.Slice(result.Licenses, func(i, j int) bool { return result.Licenses[i].ID < result.Licenses[j].ID }) - // second pass to build exceptions and replacements - replaced := strset.New() + // keys are simplified by removing dashes and lowercasing ID + // this is so license declarations in the wild like: LGPL3 LGPL-3 lgpl3 and lgpl-3 can all match + licenseIDs := make(map[string]string) for _, l := range result.Licenses { - var multipleID []string - cleanID := strings.ToLower(l.ID) + // licensePerms includes the cleanID in return slice + cleanID := cleanLicenseID(l.ID) + licensePerms := buildLicenseIDPermutations(cleanID) - var replacement *License + // if license is deprecated, find its replacement and add to licenseIDs if l.Deprecated { - replacement = result.findReplacementLicense(l) + idToMap := l.ID + replacement := result.findReplacementLicense(l) if replacement != nil { - licenseIDs[cleanID] = replacement.ID + idToMap = replacement.ID } - } - - multipleID = append(multipleID, buildLicensePermutations(cleanID)...) - for _, id := range multipleID { - // don't make replacements for IDs that have already been replaced. Since we have a sorted license list - // the earliest replacement is correct (any future replacements are not. - // e.g. replace lgpl-2 with LGPL-2.1-only is wrong, but with LGPL-2.0-only is correct) - if replacement == nil || replaced.Has(id) { - if _, exists := licenseIDs[id]; !exists { - licenseIDs[id] = l.ID + // it's important to use the original licensePerms here so that the deprecated license + // can now point to the new correct license + for _, id := range licensePerms { + if _, exists := licenseIDs[id]; exists { + // can be used to debug duplicate license permutations and confirm that examples like GPL1 + // do not point to GPL-1.1 + // log.Println("duplicate license list permutation found when mapping deprecated license to replacement") + // log.Printf("already have key: %q for SPDX ID: %q; attempted to map replacement ID: %q for deprecated ID: %q\n", id, value, replacement.ID, l.ID) + continue } - } else { - // a useful debugging line during builds - log.Printf("replacing %s with %s\n", id, replacement.ID) + licenseIDs[id] = idToMap + } + } - licenseIDs[id] = replacement.ID - replaced.Add(id) + // if license is not deprecated, add all permutations to licenseIDs + for _, id := range licensePerms { + if _, exists := licenseIDs[id]; exists { + // log.Println("found duplicate license permutation key for non deprecated license") + // log.Printf("already have key: %q for SPDX ID: %q; tried to insert as SPDX ID:%q\n", id, value, l.ID) + continue } + licenseIDs[id] = l.ID } } return licenseIDs } + +func cleanLicenseID(id string) string { + cleanID := strings.ToLower(id) + return strings.ReplaceAll(cleanID, "-", "") +} diff --git a/internal/spdxlicense/generate/generate_license_list_test.go b/internal/spdxlicense/generate/generate_license_list_test.go index 7963d09a714..92ded1d48df 100644 --- a/internal/spdxlicense/generate/generate_license_list_test.go +++ b/internal/spdxlicense/generate/generate_license_list_test.go @@ -22,24 +22,24 @@ func TestReplaceDeprecatedLicenses(t *testing.T) { } expected := map[string]string{ - "abc-1": "ABC-1.0-only", - "abc-1-only": "ABC-1.0-only", - "abc-1.0": "ABC-1.0-only", - "abc-1.0.0": "ABC-1.0-only", - "abc-1.0-only": "ABC-1.0-only", - "abc-1.0.0-only": "ABC-1.0-only", - "abc-1+": "ABC-1.0-or-later", - "abc-1.0+": "ABC-1.0-or-later", - "abc-1.0.0+": "ABC-1.0-or-later", - "abc-1-or-later": "ABC-1.0-or-later", - "abc-1.0-or-later": "ABC-1.0-or-later", - "abc-1.0.0-or-later": "ABC-1.0-or-later", - "duh-1": "Duh-1.0", - "duh-1.0": "Duh-1.0", - "duh-1.0.0": "Duh-1.0", - "duh-1-duh": "Duh-1.0-duh", - "duh-1.0-duh": "Duh-1.0-duh", - "duh-1.0.0-duh": "Duh-1.0-duh", + "abc1": "ABC-1.0-only", + "abc1only": "ABC-1.0-only", + "abc1.0": "ABC-1.0-only", + "abc1.0.0": "ABC-1.0-only", + "abc1.0only": "ABC-1.0-only", + "abc1.0.0only": "ABC-1.0-only", + "abc1+": "ABC-1.0-or-later", + "abc1.0+": "ABC-1.0-or-later", + "abc1.0.0+": "ABC-1.0-or-later", + "abc1orlater": "ABC-1.0-or-later", + "abc1.0orlater": "ABC-1.0-or-later", + "abc1.0.0orlater": "ABC-1.0-or-later", + "duh1": "Duh-1.0", + "duh1.0": "Duh-1.0", + "duh1.0.0": "Duh-1.0", + "duh1duh": "Duh-1.0-duh", + "duh1.0duh": "Duh-1.0-duh", + "duh1.0.0duh": "Duh-1.0-duh", } licenses := processSPDXLicense(results) @@ -57,1127 +57,1145 @@ func Test_processSPDXLicense(t *testing.T) { { fixture: "test-fixtures/licenses.json", want: map[string]string{ - "0bsd": "0BSD", - "aal": "AAL", - "abstyles": "Abstyles", - "adacore-doc": "AdaCore-doc", - "adobe-2006": "Adobe-2006", - "adobe-2006.0": "Adobe-2006", - "adobe-2006.0.0": "Adobe-2006", - "adobe-glyph": "Adobe-Glyph", - "adsl": "ADSL", - "afl-1": "AFL-1.1", - "afl-1.1": "AFL-1.1", - "afl-1.1.0": "AFL-1.1", - "afl-1.2": "AFL-1.2", - "afl-1.2.0": "AFL-1.2", - "afl-2": "AFL-2.0", - "afl-2.0": "AFL-2.0", - "afl-2.0.0": "AFL-2.0", - "afl-2.1": "AFL-2.1", - "afl-2.1.0": "AFL-2.1", - "afl-3": "AFL-3.0", - "afl-3.0": "AFL-3.0", - "afl-3.0.0": "AFL-3.0", - "afmparse": "Afmparse", - "agpl-1": "AGPL-1.0-only", - "agpl-1-only": "AGPL-1.0-only", - "agpl-1-or-later": "AGPL-1.0-or-later", - "agpl-1.0": "AGPL-1.0-only", - "agpl-1.0-only": "AGPL-1.0-only", - "agpl-1.0-or-later": "AGPL-1.0-or-later", - "agpl-1.0.0": "AGPL-1.0-only", - "agpl-1.0.0-only": "AGPL-1.0-only", - "agpl-1.0.0-or-later": "AGPL-1.0-or-later", - "agpl-3": "AGPL-3.0-only", - "agpl-3-only": "AGPL-3.0-only", - "agpl-3-or-later": "AGPL-3.0-or-later", - "agpl-3.0": "AGPL-3.0-only", - "agpl-3.0-only": "AGPL-3.0-only", - "agpl-3.0-or-later": "AGPL-3.0-or-later", - "agpl-3.0.0": "AGPL-3.0-only", - "agpl-3.0.0-only": "AGPL-3.0-only", - "agpl-3.0.0-or-later": "AGPL-3.0-or-later", - "aladdin": "Aladdin", - "amdplpa": "AMDPLPA", - "aml": "AML", - "ampas": "AMPAS", - "antlr-pd": "ANTLR-PD", - "antlr-pd-fallback": "ANTLR-PD-fallback", - "apache-1": "Apache-1.0", - "apache-1.0": "Apache-1.0", - "apache-1.0.0": "Apache-1.0", - "apache-1.1": "Apache-1.1", - "apache-1.1.0": "Apache-1.1", - "apache-2": "Apache-2.0", - "apache-2.0": "Apache-2.0", - "apache-2.0.0": "Apache-2.0", - "apafml": "APAFML", - "apl-1": "APL-1.0", - "apl-1.0": "APL-1.0", - "apl-1.0.0": "APL-1.0", - "app-s2p": "App-s2p", - "apsl-1": "APSL-1.0", - "apsl-1.0": "APSL-1.0", - "apsl-1.0.0": "APSL-1.0", - "apsl-1.1": "APSL-1.1", - "apsl-1.1.0": "APSL-1.1", - "apsl-1.2": "APSL-1.2", - "apsl-1.2.0": "APSL-1.2", - "apsl-2": "APSL-2.0", - "apsl-2.0": "APSL-2.0", - "apsl-2.0.0": "APSL-2.0", - "arphic-1999": "Arphic-1999", - "arphic-1999.0": "Arphic-1999", - "arphic-1999.0.0": "Arphic-1999", - "artistic-1": "Artistic-1.0", - "artistic-1-cl8": "Artistic-1.0-cl8", - "artistic-1-perl": "Artistic-1.0-Perl", - "artistic-1.0": "Artistic-1.0", - "artistic-1.0-cl8": "Artistic-1.0-cl8", - "artistic-1.0-perl": "Artistic-1.0-Perl", - "artistic-1.0.0": "Artistic-1.0", - "artistic-1.0.0-cl8": "Artistic-1.0-cl8", - "artistic-1.0.0-perl": "Artistic-1.0-Perl", - "artistic-2": "Artistic-2.0", - "artistic-2.0": "Artistic-2.0", - "artistic-2.0.0": "Artistic-2.0", - "baekmuk": "Baekmuk", - "bahyph": "Bahyph", - "barr": "Barr", - "beerware": "Beerware", - "bitstream-charter": "Bitstream-Charter", - "bitstream-vera": "Bitstream-Vera", - "bittorrent-1": "BitTorrent-1.0", - "bittorrent-1.0": "BitTorrent-1.0", - "bittorrent-1.0.0": "BitTorrent-1.0", - "bittorrent-1.1": "BitTorrent-1.1", - "bittorrent-1.1.0": "BitTorrent-1.1", - "blessing": "blessing", - "blueoak-1": "BlueOak-1.0.0", - "blueoak-1.0": "BlueOak-1.0.0", - "blueoak-1.0.0": "BlueOak-1.0.0", - "borceux": "Borceux", - "brian-gladman-3-clause": "Brian-Gladman-3-Clause", - "brian-gladman-3.0-clause": "Brian-Gladman-3-Clause", - "brian-gladman-3.0.0-clause": "Brian-Gladman-3-Clause", - "bsd-1-clause": "BSD-1-Clause", - "bsd-1.0-clause": "BSD-1-Clause", - "bsd-1.0.0-clause": "BSD-1-Clause", - "bsd-2-clause": "BSD-2-Clause", - "bsd-2-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2-clause-netbsd": "BSD-2-Clause", - "bsd-2-clause-patent": "BSD-2-Clause-Patent", - "bsd-2-clause-views": "BSD-2-Clause-Views", - "bsd-2.0-clause": "BSD-2-Clause", - "bsd-2.0-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2.0-clause-netbsd": "BSD-2-Clause", - "bsd-2.0-clause-patent": "BSD-2-Clause-Patent", - "bsd-2.0-clause-views": "BSD-2-Clause-Views", - "bsd-2.0.0-clause": "BSD-2-Clause", - "bsd-2.0.0-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2.0.0-clause-netbsd": "BSD-2-Clause", - "bsd-2.0.0-clause-patent": "BSD-2-Clause-Patent", - "bsd-2.0.0-clause-views": "BSD-2-Clause-Views", - "bsd-3-clause": "BSD-3-Clause", - "bsd-3-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3-clause-clear": "BSD-3-Clause-Clear", - "bsd-3-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3-clause-modification": "BSD-3-Clause-Modification", - "bsd-3-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-3.0-clause": "BSD-3-Clause", - "bsd-3.0-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3.0-clause-clear": "BSD-3-Clause-Clear", - "bsd-3.0-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3.0-clause-modification": "BSD-3-Clause-Modification", - "bsd-3.0-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3.0-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3.0-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3.0-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3.0-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-3.0.0-clause": "BSD-3-Clause", - "bsd-3.0.0-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3.0.0-clause-clear": "BSD-3-Clause-Clear", - "bsd-3.0.0-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3.0.0-clause-modification": "BSD-3-Clause-Modification", - "bsd-3.0.0-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3.0.0-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3.0.0-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3.0.0-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3.0.0-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-4-clause": "BSD-4-Clause", - "bsd-4-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4-clause-uc": "BSD-4-Clause-UC", - "bsd-4.0-clause": "BSD-4-Clause", - "bsd-4.0-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4.0-clause-uc": "BSD-4-Clause-UC", - "bsd-4.0.0-clause": "BSD-4-Clause", - "bsd-4.0.0-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4.0.0-clause-uc": "BSD-4-Clause-UC", - "bsd-4.3.0reno": "BSD-4.3RENO", - "bsd-4.3.0tahoe": "BSD-4.3TAHOE", - "bsd-4.3reno": "BSD-4.3RENO", - "bsd-4.3tahoe": "BSD-4.3TAHOE", - "bsd-4reno": "BSD-4.3RENO", - "bsd-4tahoe": "BSD-4.3TAHOE", - "bsd-advertising-acknowledgement": "BSD-Advertising-Acknowledgement", - "bsd-attribution-hpnd-disclaimer": "BSD-Attribution-HPND-disclaimer", - "bsd-protection": "BSD-Protection", - "bsd-source-code": "BSD-Source-Code", - "bsl-1": "BSL-1.0", - "bsl-1.0": "BSL-1.0", - "bsl-1.0.0": "BSL-1.0", - "busl-1": "BUSL-1.1", - "busl-1.1": "BUSL-1.1", - "busl-1.1.0": "BUSL-1.1", - "bzip2-1": "bzip2-1.0.6", - "bzip2-1.0": "bzip2-1.0.6", - "bzip2-1.0.5": "bzip2-1.0.6", - "bzip2-1.0.6": "bzip2-1.0.6", - "c-uda-1": "C-UDA-1.0", - "c-uda-1.0": "C-UDA-1.0", - "c-uda-1.0.0": "C-UDA-1.0", - "cal-1": "CAL-1.0", - "cal-1-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "cal-1.0": "CAL-1.0", - "cal-1.0-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "cal-1.0.0": "CAL-1.0", - "cal-1.0.0-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "caldera": "Caldera", - "catosl-1": "CATOSL-1.1", - "catosl-1.1": "CATOSL-1.1", - "catosl-1.1.0": "CATOSL-1.1", - "cc-by-1": "CC-BY-1.0", - "cc-by-1.0": "CC-BY-1.0", - "cc-by-1.0.0": "CC-BY-1.0", - "cc-by-2": "CC-BY-2.0", - "cc-by-2-au": "CC-BY-2.5-AU", - "cc-by-2.0": "CC-BY-2.0", - "cc-by-2.0.0": "CC-BY-2.0", - "cc-by-2.5": "CC-BY-2.5", - "cc-by-2.5-au": "CC-BY-2.5-AU", - "cc-by-2.5.0": "CC-BY-2.5", - "cc-by-2.5.0-au": "CC-BY-2.5-AU", - "cc-by-3": "CC-BY-3.0", - "cc-by-3-at": "CC-BY-3.0-AT", - "cc-by-3-de": "CC-BY-3.0-DE", - "cc-by-3-igo": "CC-BY-3.0-IGO", - "cc-by-3-nl": "CC-BY-3.0-NL", - "cc-by-3-us": "CC-BY-3.0-US", - "cc-by-3.0": "CC-BY-3.0", - "cc-by-3.0-at": "CC-BY-3.0-AT", - "cc-by-3.0-de": "CC-BY-3.0-DE", - "cc-by-3.0-igo": "CC-BY-3.0-IGO", - "cc-by-3.0-nl": "CC-BY-3.0-NL", - "cc-by-3.0-us": "CC-BY-3.0-US", - "cc-by-3.0.0": "CC-BY-3.0", - "cc-by-3.0.0-at": "CC-BY-3.0-AT", - "cc-by-3.0.0-de": "CC-BY-3.0-DE", - "cc-by-3.0.0-igo": "CC-BY-3.0-IGO", - "cc-by-3.0.0-nl": "CC-BY-3.0-NL", - "cc-by-3.0.0-us": "CC-BY-3.0-US", - "cc-by-4": "CC-BY-4.0", - "cc-by-4.0": "CC-BY-4.0", - "cc-by-4.0.0": "CC-BY-4.0", - "cc-by-nc-1": "CC-BY-NC-1.0", - "cc-by-nc-1.0": "CC-BY-NC-1.0", - "cc-by-nc-1.0.0": "CC-BY-NC-1.0", - "cc-by-nc-2": "CC-BY-NC-2.0", - "cc-by-nc-2.0": "CC-BY-NC-2.0", - "cc-by-nc-2.0.0": "CC-BY-NC-2.0", - "cc-by-nc-2.5": "CC-BY-NC-2.5", - "cc-by-nc-2.5.0": "CC-BY-NC-2.5", - "cc-by-nc-3": "CC-BY-NC-3.0", - "cc-by-nc-3-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-3.0": "CC-BY-NC-3.0", - "cc-by-nc-3.0-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-3.0.0": "CC-BY-NC-3.0", - "cc-by-nc-3.0.0-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-4": "CC-BY-NC-4.0", - "cc-by-nc-4.0": "CC-BY-NC-4.0", - "cc-by-nc-4.0.0": "CC-BY-NC-4.0", - "cc-by-nc-nd-1": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-1.0": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-1.0.0": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-2": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.0": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.0.0": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.5": "CC-BY-NC-ND-2.5", - "cc-by-nc-nd-2.5.0": "CC-BY-NC-ND-2.5", - "cc-by-nc-nd-3": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-3.0": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3.0-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3.0-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-3.0.0": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3.0.0-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3.0.0-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-4": "CC-BY-NC-ND-4.0", - "cc-by-nc-nd-4.0": "CC-BY-NC-ND-4.0", - "cc-by-nc-nd-4.0.0": "CC-BY-NC-ND-4.0", - "cc-by-nc-sa-1": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-1.0": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-1.0.0": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-2": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.0": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2.0-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2.0-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2.0-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.0.0": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2.0.0-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2.0.0-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2.0.0-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.5": "CC-BY-NC-SA-2.5", - "cc-by-nc-sa-2.5.0": "CC-BY-NC-SA-2.5", - "cc-by-nc-sa-3": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-3.0": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3.0-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3.0-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-3.0.0": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3.0.0-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3.0.0-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-4": "CC-BY-NC-SA-4.0", - "cc-by-nc-sa-4.0": "CC-BY-NC-SA-4.0", - "cc-by-nc-sa-4.0.0": "CC-BY-NC-SA-4.0", - "cc-by-nd-1": "CC-BY-ND-1.0", - "cc-by-nd-1.0": "CC-BY-ND-1.0", - "cc-by-nd-1.0.0": "CC-BY-ND-1.0", - "cc-by-nd-2": "CC-BY-ND-2.0", - "cc-by-nd-2.0": "CC-BY-ND-2.0", - "cc-by-nd-2.0.0": "CC-BY-ND-2.0", - "cc-by-nd-2.5": "CC-BY-ND-2.5", - "cc-by-nd-2.5.0": "CC-BY-ND-2.5", - "cc-by-nd-3": "CC-BY-ND-3.0", - "cc-by-nd-3-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-3.0": "CC-BY-ND-3.0", - "cc-by-nd-3.0-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-3.0.0": "CC-BY-ND-3.0", - "cc-by-nd-3.0.0-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-4": "CC-BY-ND-4.0", - "cc-by-nd-4.0": "CC-BY-ND-4.0", - "cc-by-nd-4.0.0": "CC-BY-ND-4.0", - "cc-by-sa-1": "CC-BY-SA-1.0", - "cc-by-sa-1.0": "CC-BY-SA-1.0", - "cc-by-sa-1.0.0": "CC-BY-SA-1.0", - "cc-by-sa-2": "CC-BY-SA-2.0", - "cc-by-sa-2-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.0": "CC-BY-SA-2.0", - "cc-by-sa-2.0-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.0.0": "CC-BY-SA-2.0", - "cc-by-sa-2.0.0-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.1-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2.1.0-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2.5": "CC-BY-SA-2.5", - "cc-by-sa-2.5.0": "CC-BY-SA-2.5", - "cc-by-sa-3": "CC-BY-SA-3.0", - "cc-by-sa-3-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-3.0": "CC-BY-SA-3.0", - "cc-by-sa-3.0-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3.0-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-3.0.0": "CC-BY-SA-3.0", - "cc-by-sa-3.0.0-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3.0.0-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-4": "CC-BY-SA-4.0", - "cc-by-sa-4.0": "CC-BY-SA-4.0", - "cc-by-sa-4.0.0": "CC-BY-SA-4.0", - "cc-pddc": "CC-PDDC", - "cc0-1": "CC0-1.0", - "cc0-1.0": "CC0-1.0", - "cc0-1.0.0": "CC0-1.0", - "cddl-1": "CDDL-1.0", - "cddl-1.0": "CDDL-1.0", - "cddl-1.0.0": "CDDL-1.0", - "cddl-1.1": "CDDL-1.1", - "cddl-1.1.0": "CDDL-1.1", - "cdl-1": "CDL-1.0", - "cdl-1.0": "CDL-1.0", - "cdl-1.0.0": "CDL-1.0", - "cdla-permissive-1": "CDLA-Permissive-1.0", - "cdla-permissive-1.0": "CDLA-Permissive-1.0", - "cdla-permissive-1.0.0": "CDLA-Permissive-1.0", - "cdla-permissive-2": "CDLA-Permissive-2.0", - "cdla-permissive-2.0": "CDLA-Permissive-2.0", - "cdla-permissive-2.0.0": "CDLA-Permissive-2.0", - "cdla-sharing-1": "CDLA-Sharing-1.0", - "cdla-sharing-1.0": "CDLA-Sharing-1.0", - "cdla-sharing-1.0.0": "CDLA-Sharing-1.0", - "cecill-1": "CECILL-1.0", - "cecill-1.0": "CECILL-1.0", - "cecill-1.0.0": "CECILL-1.0", - "cecill-1.1": "CECILL-1.1", - "cecill-1.1.0": "CECILL-1.1", - "cecill-2": "CECILL-2.0", - "cecill-2.0": "CECILL-2.0", - "cecill-2.0.0": "CECILL-2.0", - "cecill-2.1": "CECILL-2.1", - "cecill-2.1.0": "CECILL-2.1", - "cecill-b": "CECILL-B", - "cecill-c": "CECILL-C", - "cern-ohl-1": "CERN-OHL-1.1", - "cern-ohl-1.1": "CERN-OHL-1.1", - "cern-ohl-1.1.0": "CERN-OHL-1.1", - "cern-ohl-1.2": "CERN-OHL-1.2", - "cern-ohl-1.2.0": "CERN-OHL-1.2", - "cern-ohl-p-2": "CERN-OHL-P-2.0", - "cern-ohl-p-2.0": "CERN-OHL-P-2.0", - "cern-ohl-p-2.0.0": "CERN-OHL-P-2.0", - "cern-ohl-s-2": "CERN-OHL-S-2.0", - "cern-ohl-s-2.0": "CERN-OHL-S-2.0", - "cern-ohl-s-2.0.0": "CERN-OHL-S-2.0", - "cern-ohl-w-2": "CERN-OHL-W-2.0", - "cern-ohl-w-2.0": "CERN-OHL-W-2.0", - "cern-ohl-w-2.0.0": "CERN-OHL-W-2.0", - "cfitsio": "CFITSIO", - "checkmk": "checkmk", - "clartistic": "ClArtistic", - "clips": "Clips", - "cmu-mach": "CMU-Mach", - "cnri-jython": "CNRI-Jython", - "cnri-python": "CNRI-Python", - "cnri-python-gpl-compatible": "CNRI-Python-GPL-Compatible", - "coil-1": "COIL-1.0", - "coil-1.0": "COIL-1.0", - "coil-1.0.0": "COIL-1.0", - "community-spec-1": "Community-Spec-1.0", - "community-spec-1.0": "Community-Spec-1.0", - "community-spec-1.0.0": "Community-Spec-1.0", - "condor-1": "Condor-1.1", - "condor-1.1": "Condor-1.1", - "condor-1.1.0": "Condor-1.1", - "copyleft-next-0.3": "copyleft-next-0.3.0", - "copyleft-next-0.3.0": "copyleft-next-0.3.0", - "copyleft-next-0.3.1": "copyleft-next-0.3.1", - "cornell-lossless-jpeg": "Cornell-Lossless-JPEG", - "cpal-1": "CPAL-1.0", - "cpal-1.0": "CPAL-1.0", - "cpal-1.0.0": "CPAL-1.0", - "cpl-1": "CPL-1.0", - "cpl-1.0": "CPL-1.0", - "cpl-1.0.0": "CPL-1.0", - "cpol-1": "CPOL-1.02", - "cpol-1.02": "CPOL-1.02", - "cpol-1.02.0": "CPOL-1.02", - "crossword": "Crossword", - "crystalstacker": "CrystalStacker", - "cua-opl-1": "CUA-OPL-1.0", - "cua-opl-1.0": "CUA-OPL-1.0", - "cua-opl-1.0.0": "CUA-OPL-1.0", - "cube": "Cube", - "curl": "curl", - "d-fsl-1": "D-FSL-1.0", - "d-fsl-1.0": "D-FSL-1.0", - "d-fsl-1.0.0": "D-FSL-1.0", - "diffmark": "diffmark", - "dl-de-by-2": "DL-DE-BY-2.0", - "dl-de-by-2.0": "DL-DE-BY-2.0", - "dl-de-by-2.0.0": "DL-DE-BY-2.0", - "doc": "DOC", - "dotseqn": "Dotseqn", - "drl-1": "DRL-1.0", - "drl-1.0": "DRL-1.0", - "drl-1.0.0": "DRL-1.0", - "dsdp": "DSDP", - "dvipdfm": "dvipdfm", - "ecl-1": "ECL-1.0", - "ecl-1.0": "ECL-1.0", - "ecl-1.0.0": "ECL-1.0", - "ecl-2": "ECL-2.0", - "ecl-2.0": "ECL-2.0", - "ecl-2.0.0": "ECL-2.0", - "ecos-2": "eCos-2.0", - "ecos-2.0": "eCos-2.0", - "ecos-2.0.0": "eCos-2.0", - "efl-1": "EFL-1.0", - "efl-1.0": "EFL-1.0", - "efl-1.0.0": "EFL-1.0", - "efl-2": "EFL-2.0", - "efl-2.0": "EFL-2.0", - "efl-2.0.0": "EFL-2.0", - "egenix": "eGenix", - "elastic-2": "Elastic-2.0", - "elastic-2.0": "Elastic-2.0", - "elastic-2.0.0": "Elastic-2.0", - "entessa": "Entessa", - "epics": "EPICS", - "epl-1": "EPL-1.0", - "epl-1.0": "EPL-1.0", - "epl-1.0.0": "EPL-1.0", - "epl-2": "EPL-2.0", - "epl-2.0": "EPL-2.0", - "epl-2.0.0": "EPL-2.0", - "erlpl-1": "ErlPL-1.1", - "erlpl-1.1": "ErlPL-1.1", - "erlpl-1.1.0": "ErlPL-1.1", - "etalab-2": "etalab-2.0", - "etalab-2.0": "etalab-2.0", - "etalab-2.0.0": "etalab-2.0", - "eudatagrid": "EUDatagrid", - "eupl-1": "EUPL-1.0", - "eupl-1.0": "EUPL-1.0", - "eupl-1.0.0": "EUPL-1.0", - "eupl-1.1": "EUPL-1.1", - "eupl-1.1.0": "EUPL-1.1", - "eupl-1.2": "EUPL-1.2", - "eupl-1.2.0": "EUPL-1.2", - "eurosym": "Eurosym", - "fair": "Fair", - "fdk-aac": "FDK-AAC", - "frameworx-1": "Frameworx-1.0", - "frameworx-1.0": "Frameworx-1.0", - "frameworx-1.0.0": "Frameworx-1.0", - "freebsd-doc": "FreeBSD-DOC", - "freeimage": "FreeImage", - "fsfap": "FSFAP", - "fsful": "FSFUL", - "fsfullr": "FSFULLR", - "fsfullrwd": "FSFULLRWD", - "ftl": "FTL", - "gd": "GD", - "gfdl-1": "GFDL-1.1-only", - "gfdl-1-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1-only": "GFDL-1.1-only", - "gfdl-1-or-later": "GFDL-1.1-or-later", - "gfdl-1.1": "GFDL-1.1-only", - "gfdl-1.1-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1.1-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1.1-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1.1-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1.1-only": "GFDL-1.1-only", - "gfdl-1.1-or-later": "GFDL-1.1-or-later", - "gfdl-1.1.0": "GFDL-1.1-only", - "gfdl-1.1.0-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1.1.0-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1.1.0-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1.1.0-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1.1.0-only": "GFDL-1.1-only", - "gfdl-1.1.0-or-later": "GFDL-1.1-or-later", - "gfdl-1.2": "GFDL-1.2-only", - "gfdl-1.2-invariants-only": "GFDL-1.2-invariants-only", - "gfdl-1.2-invariants-or-later": "GFDL-1.2-invariants-or-later", - "gfdl-1.2-no-invariants-only": "GFDL-1.2-no-invariants-only", - "gfdl-1.2-no-invariants-or-later": "GFDL-1.2-no-invariants-or-later", - "gfdl-1.2-only": "GFDL-1.2-only", - "gfdl-1.2-or-later": "GFDL-1.2-or-later", - "gfdl-1.2.0": "GFDL-1.2-only", - "gfdl-1.2.0-invariants-only": "GFDL-1.2-invariants-only", - "gfdl-1.2.0-invariants-or-later": "GFDL-1.2-invariants-or-later", - "gfdl-1.2.0-no-invariants-only": "GFDL-1.2-no-invariants-only", - "gfdl-1.2.0-no-invariants-or-later": "GFDL-1.2-no-invariants-or-later", - "gfdl-1.2.0-only": "GFDL-1.2-only", - "gfdl-1.2.0-or-later": "GFDL-1.2-or-later", - "gfdl-1.3": "GFDL-1.3-only", - "gfdl-1.3-invariants-only": "GFDL-1.3-invariants-only", - "gfdl-1.3-invariants-or-later": "GFDL-1.3-invariants-or-later", - "gfdl-1.3-no-invariants-only": "GFDL-1.3-no-invariants-only", - "gfdl-1.3-no-invariants-or-later": "GFDL-1.3-no-invariants-or-later", - "gfdl-1.3-only": "GFDL-1.3-only", - "gfdl-1.3-or-later": "GFDL-1.3-or-later", - "gfdl-1.3.0": "GFDL-1.3-only", - "gfdl-1.3.0-invariants-only": "GFDL-1.3-invariants-only", - "gfdl-1.3.0-invariants-or-later": "GFDL-1.3-invariants-or-later", - "gfdl-1.3.0-no-invariants-only": "GFDL-1.3-no-invariants-only", - "gfdl-1.3.0-no-invariants-or-later": "GFDL-1.3-no-invariants-or-later", - "gfdl-1.3.0-only": "GFDL-1.3-only", - "gfdl-1.3.0-or-later": "GFDL-1.3-or-later", - "giftware": "Giftware", - "gl2ps": "GL2PS", - "glide": "Glide", - "glulxe": "Glulxe", - "glwtpl": "GLWTPL", - "gnuplot": "gnuplot", - "gpl-1": "GPL-1.0-only", - "gpl-1+": "GPL-1.0-or-later", - "gpl-1-only": "GPL-1.0-only", - "gpl-1-or-later": "GPL-1.0-or-later", - "gpl-1.0": "GPL-1.0-only", - "gpl-1.0+": "GPL-1.0-or-later", - "gpl-1.0-only": "GPL-1.0-only", - "gpl-1.0-or-later": "GPL-1.0-or-later", - "gpl-1.0.0": "GPL-1.0-only", - "gpl-1.0.0+": "GPL-1.0-or-later", - "gpl-1.0.0-only": "GPL-1.0-only", - "gpl-1.0.0-or-later": "GPL-1.0-or-later", - "gpl-2": "GPL-2.0-only", - "gpl-2+": "GPL-2.0-or-later", - "gpl-2-only": "GPL-2.0-only", - "gpl-2-or-later": "GPL-2.0-or-later", - "gpl-2-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-2.0": "GPL-2.0-only", - "gpl-2.0+": "GPL-2.0-or-later", - "gpl-2.0-only": "GPL-2.0-only", - "gpl-2.0-or-later": "GPL-2.0-or-later", - "gpl-2.0-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2.0-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2.0-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2.0-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2.0-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-2.0.0": "GPL-2.0-only", - "gpl-2.0.0+": "GPL-2.0-or-later", - "gpl-2.0.0-only": "GPL-2.0-only", - "gpl-2.0.0-or-later": "GPL-2.0-or-later", - "gpl-2.0.0-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2.0.0-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2.0.0-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2.0.0-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2.0.0-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-3": "GPL-3.0-only", - "gpl-3+": "GPL-3.0-or-later", - "gpl-3-only": "GPL-3.0-only", - "gpl-3-or-later": "GPL-3.0-or-later", - "gpl-3-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "gpl-3.0": "GPL-3.0-only", - "gpl-3.0+": "GPL-3.0-or-later", - "gpl-3.0-only": "GPL-3.0-only", - "gpl-3.0-or-later": "GPL-3.0-or-later", - "gpl-3.0-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3.0-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "gpl-3.0.0": "GPL-3.0-only", - "gpl-3.0.0+": "GPL-3.0-or-later", - "gpl-3.0.0-only": "GPL-3.0-only", - "gpl-3.0.0-or-later": "GPL-3.0-or-later", - "gpl-3.0.0-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3.0.0-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "graphics-gems": "Graphics-Gems", - "gsoap-1.3.0b": "gSOAP-1.3b", - "gsoap-1.3b": "gSOAP-1.3b", - "gsoap-1b": "gSOAP-1.3b", - "haskellreport": "HaskellReport", - "hippocratic-2": "Hippocratic-2.1", - "hippocratic-2.1": "Hippocratic-2.1", - "hippocratic-2.1.0": "Hippocratic-2.1", - "hp-1986": "HP-1986", - "hp-1986.0": "HP-1986", - "hp-1986.0.0": "HP-1986", - "hpnd": "HPND", - "hpnd-export-us": "HPND-export-US", - "hpnd-markus-kuhn": "HPND-Markus-Kuhn", - "hpnd-sell-variant": "HPND-sell-variant", - "hpnd-sell-variant-mit-disclaimer": "HPND-sell-variant-MIT-disclaimer", - "htmltidy": "HTMLTIDY", - "ibm-pibs": "IBM-pibs", - "icu": "ICU", - "iec-code-components-eula": "IEC-Code-Components-EULA", - "ijg": "IJG", - "ijg-short": "IJG-short", - "imagemagick": "ImageMagick", - "imatix": "iMatix", - "imlib2": "Imlib2", - "info-zip": "Info-ZIP", - "intel": "Intel", - "intel-acpi": "Intel-ACPI", - "interbase-1": "Interbase-1.0", - "interbase-1.0": "Interbase-1.0", - "interbase-1.0.0": "Interbase-1.0", - "ipa": "IPA", - "ipl-1": "IPL-1.0", - "ipl-1.0": "IPL-1.0", - "ipl-1.0.0": "IPL-1.0", - "isc": "ISC", - "jam": "Jam", - "jasper-2": "JasPer-2.0", - "jasper-2.0": "JasPer-2.0", - "jasper-2.0.0": "JasPer-2.0", - "jpl-image": "JPL-image", - "jpnic": "JPNIC", - "json": "JSON", - "kazlib": "Kazlib", - "knuth-ctan": "Knuth-CTAN", - "lal-1": "LAL-1.2", - "lal-1.2": "LAL-1.2", - "lal-1.2.0": "LAL-1.2", - "lal-1.3": "LAL-1.3", - "lal-1.3.0": "LAL-1.3", - "latex2e": "Latex2e", - "leptonica": "Leptonica", - "lgpl-2": "LGPL-2.0-only", // This is an important line in testing! lgpl-2.1 would typically override this. - "lgpl-2+": "LGPL-2.0-or-later", - "lgpl-2-only": "LGPL-2.0-only", - "lgpl-2-or-later": "LGPL-2.0-or-later", - "lgpl-2.0": "LGPL-2.0-only", - "lgpl-2.0+": "LGPL-2.0-or-later", - "lgpl-2.0-only": "LGPL-2.0-only", - "lgpl-2.0-or-later": "LGPL-2.0-or-later", - "lgpl-2.0.0": "LGPL-2.0-only", - "lgpl-2.0.0+": "LGPL-2.0-or-later", - "lgpl-2.0.0-only": "LGPL-2.0-only", - "lgpl-2.0.0-or-later": "LGPL-2.0-or-later", - "lgpl-2.1": "LGPL-2.1-only", - "lgpl-2.1+": "LGPL-2.1-or-later", - "lgpl-2.1-only": "LGPL-2.1-only", - "lgpl-2.1-or-later": "LGPL-2.1-or-later", - "lgpl-2.1.0": "LGPL-2.1-only", - "lgpl-2.1.0+": "LGPL-2.1-or-later", - "lgpl-2.1.0-only": "LGPL-2.1-only", - "lgpl-2.1.0-or-later": "LGPL-2.1-or-later", - "lgpl-3": "LGPL-3.0-only", - "lgpl-3+": "LGPL-3.0-or-later", - "lgpl-3-only": "LGPL-3.0-only", - "lgpl-3-or-later": "LGPL-3.0-or-later", - "lgpl-3.0": "LGPL-3.0-only", - "lgpl-3.0+": "LGPL-3.0-or-later", - "lgpl-3.0-only": "LGPL-3.0-only", - "lgpl-3.0-or-later": "LGPL-3.0-or-later", - "lgpl-3.0.0": "LGPL-3.0-only", - "lgpl-3.0.0+": "LGPL-3.0-or-later", - "lgpl-3.0.0-only": "LGPL-3.0-only", - "lgpl-3.0.0-or-later": "LGPL-3.0-or-later", - "lgpllr": "LGPLLR", - "libpng": "Libpng", - "libpng-2": "libpng-2.0", - "libpng-2.0": "libpng-2.0", - "libpng-2.0.0": "libpng-2.0", - "libselinux-1": "libselinux-1.0", - "libselinux-1.0": "libselinux-1.0", - "libselinux-1.0.0": "libselinux-1.0", - "libtiff": "libtiff", - "libutil-david-nugent": "libutil-David-Nugent", - "liliq-p-1": "LiLiQ-P-1.1", - "liliq-p-1.1": "LiLiQ-P-1.1", - "liliq-p-1.1.0": "LiLiQ-P-1.1", - "liliq-r-1": "LiLiQ-R-1.1", - "liliq-r-1.1": "LiLiQ-R-1.1", - "liliq-r-1.1.0": "LiLiQ-R-1.1", - "liliq-rplus-1": "LiLiQ-Rplus-1.1", - "liliq-rplus-1.1": "LiLiQ-Rplus-1.1", - "liliq-rplus-1.1.0": "LiLiQ-Rplus-1.1", - "linux-man-pages-copyleft": "Linux-man-pages-copyleft", - "linux-openib": "Linux-OpenIB", - "loop": "LOOP", - "lpl-1": "LPL-1.0", - "lpl-1.0": "LPL-1.0", - "lpl-1.0.0": "LPL-1.0", - "lpl-1.02": "LPL-1.02", - "lpl-1.02.0": "LPL-1.02", - "lppl-1": "LPPL-1.0", - "lppl-1.0": "LPPL-1.0", - "lppl-1.0.0": "LPPL-1.0", - "lppl-1.1": "LPPL-1.1", - "lppl-1.1.0": "LPPL-1.1", - "lppl-1.2": "LPPL-1.2", - "lppl-1.2.0": "LPPL-1.2", - "lppl-1.3.0a": "LPPL-1.3a", - "lppl-1.3.0c": "LPPL-1.3c", - "lppl-1.3a": "LPPL-1.3a", - "lppl-1.3c": "LPPL-1.3c", - "lppl-1a": "LPPL-1.3a", - "lppl-1c": "LPPL-1.3c", - "lzma-sdk-9": "LZMA-SDK-9.22", - "lzma-sdk-9-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.11-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.11.0-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.22": "LZMA-SDK-9.22", - "lzma-sdk-9.22.0": "LZMA-SDK-9.22", - "makeindex": "MakeIndex", - "martin-birgmeier": "Martin-Birgmeier", - "minpack": "Minpack", - "miros": "MirOS", - "mit": "MIT", - "mit-0": "MIT-0", - "mit-advertising": "MIT-advertising", - "mit-cmu": "MIT-CMU", - "mit-enna": "MIT-enna", - "mit-feh": "MIT-feh", - "mit-modern-variant": "MIT-Modern-Variant", - "mit-open-group": "MIT-open-group", - "mit-wu": "MIT-Wu", - "mitnfa": "MITNFA", - "motosoto": "Motosoto", - "mpi-permissive": "mpi-permissive", - "mpich2": "mpich2", - "mpl-1": "MPL-1.0", - "mpl-1.0": "MPL-1.0", - "mpl-1.0.0": "MPL-1.0", - "mpl-1.1": "MPL-1.1", - "mpl-1.1.0": "MPL-1.1", - "mpl-2": "MPL-2.0", - "mpl-2-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mpl-2.0": "MPL-2.0", - "mpl-2.0-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mpl-2.0.0": "MPL-2.0", - "mpl-2.0.0-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mplus": "mplus", - "ms-lpl": "MS-LPL", - "ms-pl": "MS-PL", - "ms-rl": "MS-RL", - "mtll": "MTLL", - "mulanpsl-1": "MulanPSL-1.0", - "mulanpsl-1.0": "MulanPSL-1.0", - "mulanpsl-1.0.0": "MulanPSL-1.0", - "mulanpsl-2": "MulanPSL-2.0", - "mulanpsl-2.0": "MulanPSL-2.0", - "mulanpsl-2.0.0": "MulanPSL-2.0", - "multics": "Multics", - "mup": "Mup", - "naist-2003": "NAIST-2003", - "naist-2003.0": "NAIST-2003", - "naist-2003.0.0": "NAIST-2003", - "nasa-1": "NASA-1.3", - "nasa-1.3": "NASA-1.3", - "nasa-1.3.0": "NASA-1.3", - "naumen": "Naumen", - "nbpl-1": "NBPL-1.0", - "nbpl-1.0": "NBPL-1.0", - "nbpl-1.0.0": "NBPL-1.0", - "ncgl-uk-2": "NCGL-UK-2.0", - "ncgl-uk-2.0": "NCGL-UK-2.0", - "ncgl-uk-2.0.0": "NCGL-UK-2.0", - "ncsa": "NCSA", - "net-snmp": "Net-SNMP", - "netcdf": "NetCDF", - "newsletr": "Newsletr", - "ngpl": "NGPL", - "nicta-1": "NICTA-1.0", - "nicta-1.0": "NICTA-1.0", - "nicta-1.0.0": "NICTA-1.0", - "nist-pd": "NIST-PD", - "nist-pd-fallback": "NIST-PD-fallback", - "nlod-1": "NLOD-1.0", - "nlod-1.0": "NLOD-1.0", - "nlod-1.0.0": "NLOD-1.0", - "nlod-2": "NLOD-2.0", - "nlod-2.0": "NLOD-2.0", - "nlod-2.0.0": "NLOD-2.0", - "nlpl": "NLPL", - "nokia": "Nokia", - "nosl": "NOSL", - "noweb": "Noweb", - "npl-1": "NPL-1.0", - "npl-1.0": "NPL-1.0", - "npl-1.0.0": "NPL-1.0", - "npl-1.1": "NPL-1.1", - "npl-1.1.0": "NPL-1.1", - "nposl-3": "NPOSL-3.0", - "nposl-3.0": "NPOSL-3.0", - "nposl-3.0.0": "NPOSL-3.0", - "nrl": "NRL", - "ntp": "NTP", - "ntp-0": "NTP-0", - "nunit": "Nunit", - "o-uda-1": "O-UDA-1.0", - "o-uda-1.0": "O-UDA-1.0", - "o-uda-1.0.0": "O-UDA-1.0", - "occt-pl": "OCCT-PL", - "oclc-2": "OCLC-2.0", - "oclc-2.0": "OCLC-2.0", - "oclc-2.0.0": "OCLC-2.0", - "odbl-1": "ODbL-1.0", - "odbl-1.0": "ODbL-1.0", - "odbl-1.0.0": "ODbL-1.0", - "odc-by-1": "ODC-By-1.0", - "odc-by-1.0": "ODC-By-1.0", - "odc-by-1.0.0": "ODC-By-1.0", - "offis": "OFFIS", - "ofl-1": "OFL-1.0", - "ofl-1-no-rfn": "OFL-1.0-no-RFN", - "ofl-1-rfn": "OFL-1.0-RFN", - "ofl-1.0": "OFL-1.0", - "ofl-1.0-no-rfn": "OFL-1.0-no-RFN", - "ofl-1.0-rfn": "OFL-1.0-RFN", - "ofl-1.0.0": "OFL-1.0", - "ofl-1.0.0-no-rfn": "OFL-1.0-no-RFN", - "ofl-1.0.0-rfn": "OFL-1.0-RFN", - "ofl-1.1": "OFL-1.1", - "ofl-1.1-no-rfn": "OFL-1.1-no-RFN", - "ofl-1.1-rfn": "OFL-1.1-RFN", - "ofl-1.1.0": "OFL-1.1", - "ofl-1.1.0-no-rfn": "OFL-1.1-no-RFN", - "ofl-1.1.0-rfn": "OFL-1.1-RFN", - "ogc-1": "OGC-1.0", - "ogc-1.0": "OGC-1.0", - "ogc-1.0.0": "OGC-1.0", - "ogdl-taiwan-1": "OGDL-Taiwan-1.0", - "ogdl-taiwan-1.0": "OGDL-Taiwan-1.0", - "ogdl-taiwan-1.0.0": "OGDL-Taiwan-1.0", - "ogl-canada-2": "OGL-Canada-2.0", - "ogl-canada-2.0": "OGL-Canada-2.0", - "ogl-canada-2.0.0": "OGL-Canada-2.0", - "ogl-uk-1": "OGL-UK-1.0", - "ogl-uk-1.0": "OGL-UK-1.0", - "ogl-uk-1.0.0": "OGL-UK-1.0", - "ogl-uk-2": "OGL-UK-2.0", - "ogl-uk-2.0": "OGL-UK-2.0", - "ogl-uk-2.0.0": "OGL-UK-2.0", - "ogl-uk-3": "OGL-UK-3.0", - "ogl-uk-3.0": "OGL-UK-3.0", - "ogl-uk-3.0.0": "OGL-UK-3.0", - "ogtsl": "OGTSL", - "oldap-1": "OLDAP-1.1", - "oldap-1.1": "OLDAP-1.1", - "oldap-1.1.0": "OLDAP-1.1", - "oldap-1.2": "OLDAP-1.2", - "oldap-1.2.0": "OLDAP-1.2", - "oldap-1.3": "OLDAP-1.3", - "oldap-1.3.0": "OLDAP-1.3", - "oldap-1.4": "OLDAP-1.4", - "oldap-1.4.0": "OLDAP-1.4", - "oldap-2": "OLDAP-2.0", - "oldap-2.0": "OLDAP-2.0", - "oldap-2.0.0": "OLDAP-2.0", - "oldap-2.0.1": "OLDAP-2.0.1", - "oldap-2.1": "OLDAP-2.1", - "oldap-2.1.0": "OLDAP-2.1", - "oldap-2.2": "OLDAP-2.2", - "oldap-2.2.0": "OLDAP-2.2", - "oldap-2.2.1": "OLDAP-2.2.1", - "oldap-2.2.2": "OLDAP-2.2.2", - "oldap-2.3": "OLDAP-2.3", - "oldap-2.3.0": "OLDAP-2.3", - "oldap-2.4": "OLDAP-2.4", - "oldap-2.4.0": "OLDAP-2.4", - "oldap-2.5": "OLDAP-2.5", - "oldap-2.5.0": "OLDAP-2.5", - "oldap-2.6": "OLDAP-2.6", - "oldap-2.6.0": "OLDAP-2.6", - "oldap-2.7": "OLDAP-2.7", - "oldap-2.7.0": "OLDAP-2.7", - "oldap-2.8": "OLDAP-2.8", - "oldap-2.8.0": "OLDAP-2.8", - "oml": "OML", - "openpbs-2": "OpenPBS-2.3", - "openpbs-2.3": "OpenPBS-2.3", - "openpbs-2.3.0": "OpenPBS-2.3", - "openssl": "OpenSSL", - "opl-1": "OPL-1.0", - "opl-1.0": "OPL-1.0", - "opl-1.0.0": "OPL-1.0", - "opubl-1": "OPUBL-1.0", - "opubl-1.0": "OPUBL-1.0", - "opubl-1.0.0": "OPUBL-1.0", - "oset-pl-2": "OSET-PL-2.1", - "oset-pl-2.1": "OSET-PL-2.1", - "oset-pl-2.1.0": "OSET-PL-2.1", - "osl-1": "OSL-1.0", - "osl-1.0": "OSL-1.0", - "osl-1.0.0": "OSL-1.0", - "osl-1.1": "OSL-1.1", - "osl-1.1.0": "OSL-1.1", - "osl-2": "OSL-2.0", - "osl-2.0": "OSL-2.0", - "osl-2.0.0": "OSL-2.0", - "osl-2.1": "OSL-2.1", - "osl-2.1.0": "OSL-2.1", - "osl-3": "OSL-3.0", - "osl-3.0": "OSL-3.0", - "osl-3.0.0": "OSL-3.0", - "parity-6": "Parity-6.0.0", - "parity-6.0": "Parity-6.0.0", - "parity-6.0.0": "Parity-6.0.0", - "parity-7": "Parity-7.0.0", - "parity-7.0": "Parity-7.0.0", - "parity-7.0.0": "Parity-7.0.0", - "pddl-1": "PDDL-1.0", - "pddl-1.0": "PDDL-1.0", - "pddl-1.0.0": "PDDL-1.0", - "php-3": "PHP-3.0", - "php-3.0": "PHP-3.0", - "php-3.0.0": "PHP-3.0", - "php-3.01": "PHP-3.01", - "php-3.01.0": "PHP-3.01", - "plexus": "Plexus", - "polyform-noncommercial-1": "PolyForm-Noncommercial-1.0.0", - "polyform-noncommercial-1.0": "PolyForm-Noncommercial-1.0.0", - "polyform-noncommercial-1.0.0": "PolyForm-Noncommercial-1.0.0", - "polyform-small-business-1": "PolyForm-Small-Business-1.0.0", - "polyform-small-business-1.0": "PolyForm-Small-Business-1.0.0", - "polyform-small-business-1.0.0": "PolyForm-Small-Business-1.0.0", - "postgresql": "PostgreSQL", - "psf-2": "PSF-2.0", - "psf-2.0": "PSF-2.0", - "psf-2.0.0": "PSF-2.0", - "psfrag": "psfrag", - "psutils": "psutils", - "python-2": "Python-2.0", - "python-2.0": "Python-2.0", - "python-2.0.0": "Python-2.0", - "python-2.0.1": "Python-2.0.1", - "qhull": "Qhull", - "qpl-1": "QPL-1.0", - "qpl-1-inria-2004": "QPL-1.0-INRIA-2004", - "qpl-1.0": "QPL-1.0", - "qpl-1.0-inria-2004": "QPL-1.0-INRIA-2004", - "qpl-1.0.0": "QPL-1.0", - "qpl-1.0.0-inria-2004": "QPL-1.0-INRIA-2004", - "rdisc": "Rdisc", - "rhecos-1": "RHeCos-1.1", - "rhecos-1.1": "RHeCos-1.1", - "rhecos-1.1.0": "RHeCos-1.1", - "rpl-1": "RPL-1.1", - "rpl-1.1": "RPL-1.1", - "rpl-1.1.0": "RPL-1.1", - "rpl-1.5": "RPL-1.5", - "rpl-1.5.0": "RPL-1.5", - "rpsl-1": "RPSL-1.0", - "rpsl-1.0": "RPSL-1.0", - "rpsl-1.0.0": "RPSL-1.0", - "rsa-md": "RSA-MD", - "rscpl": "RSCPL", - "ruby": "Ruby", - "sax-pd": "SAX-PD", - "saxpath": "Saxpath", - "scea": "SCEA", - "schemereport": "SchemeReport", - "sendmail": "Sendmail", - "sendmail-8": "Sendmail-8.23", - "sendmail-8.23": "Sendmail-8.23", - "sendmail-8.23.0": "Sendmail-8.23", - "sgi-b-1": "SGI-B-1.0", - "sgi-b-1.0": "SGI-B-1.0", - "sgi-b-1.0.0": "SGI-B-1.0", - "sgi-b-1.1": "SGI-B-1.1", - "sgi-b-1.1.0": "SGI-B-1.1", - "sgi-b-2": "SGI-B-2.0", - "sgi-b-2.0": "SGI-B-2.0", - "sgi-b-2.0.0": "SGI-B-2.0", - "shl-0.5": "SHL-0.5", - "shl-0.5.0": "SHL-0.5", - "shl-0.51": "SHL-0.51", - "shl-0.51.0": "SHL-0.51", - "simpl-2": "SimPL-2.0", - "simpl-2.0": "SimPL-2.0", - "simpl-2.0.0": "SimPL-2.0", - "sissl": "SISSL", - "sissl-1": "SISSL-1.2", - "sissl-1.2": "SISSL-1.2", - "sissl-1.2.0": "SISSL-1.2", - "sleepycat": "Sleepycat", - "smlnj": "SMLNJ", - "smppl": "SMPPL", - "snia": "SNIA", - "snprintf": "snprintf", - "spencer-86": "Spencer-86", - "spencer-86.0": "Spencer-86", - "spencer-86.0.0": "Spencer-86", - "spencer-94": "Spencer-94", - "spencer-94.0": "Spencer-94", - "spencer-94.0.0": "Spencer-94", - "spencer-99": "Spencer-99", - "spencer-99.0": "Spencer-99", - "spencer-99.0.0": "Spencer-99", - "spl-1": "SPL-1.0", - "spl-1.0": "SPL-1.0", - "spl-1.0.0": "SPL-1.0", - "ssh-openssh": "SSH-OpenSSH", - "ssh-short": "SSH-short", - "sspl-1": "SSPL-1.0", - "sspl-1.0": "SSPL-1.0", - "sspl-1.0.0": "SSPL-1.0", - "standardml-nj": "SMLNJ", - "sugarcrm-1": "SugarCRM-1.1.3", - "sugarcrm-1.1": "SugarCRM-1.1.3", - "sugarcrm-1.1.3": "SugarCRM-1.1.3", - "sunpro": "SunPro", - "swl": "SWL", - "symlinks": "Symlinks", - "tapr-ohl-1": "TAPR-OHL-1.0", - "tapr-ohl-1.0": "TAPR-OHL-1.0", - "tapr-ohl-1.0.0": "TAPR-OHL-1.0", - "tcl": "TCL", - "tcp-wrappers": "TCP-wrappers", - "tmate": "TMate", - "torque-1": "TORQUE-1.1", - "torque-1.1": "TORQUE-1.1", - "torque-1.1.0": "TORQUE-1.1", - "tosl": "TOSL", - "tpdl": "TPDL", - "tpl-1": "TPL-1.0", - "tpl-1.0": "TPL-1.0", - "tpl-1.0.0": "TPL-1.0", - "ttwl": "TTWL", - "tu-berlin-1": "TU-Berlin-1.0", - "tu-berlin-1.0": "TU-Berlin-1.0", - "tu-berlin-1.0.0": "TU-Berlin-1.0", - "tu-berlin-2": "TU-Berlin-2.0", - "tu-berlin-2.0": "TU-Berlin-2.0", - "tu-berlin-2.0.0": "TU-Berlin-2.0", - "ucar": "UCAR", - "ucl-1": "UCL-1.0", - "ucl-1.0": "UCL-1.0", - "ucl-1.0.0": "UCL-1.0", - "unicode-dfs-2015": "Unicode-DFS-2015", - "unicode-dfs-2015.0": "Unicode-DFS-2015", - "unicode-dfs-2015.0.0": "Unicode-DFS-2015", - "unicode-dfs-2016": "Unicode-DFS-2016", - "unicode-dfs-2016.0": "Unicode-DFS-2016", - "unicode-dfs-2016.0.0": "Unicode-DFS-2016", - "unicode-tou": "Unicode-TOU", - "unlicense": "Unlicense", - "upl-1": "UPL-1.0", - "upl-1.0": "UPL-1.0", - "upl-1.0.0": "UPL-1.0", - "vim": "Vim", - "vostrom": "VOSTROM", - "vsl-1": "VSL-1.0", - "vsl-1.0": "VSL-1.0", - "vsl-1.0.0": "VSL-1.0", - "w3c": "W3C", - "w3c-19980720": "W3C-19980720", - "w3c-19980720.0": "W3C-19980720", - "w3c-19980720.0.0": "W3C-19980720", - "w3c-20150513": "W3C-20150513", - "w3c-20150513.0": "W3C-20150513", - "w3c-20150513.0.0": "W3C-20150513", - "w3m": "w3m", - "watcom-1": "Watcom-1.0", - "watcom-1.0": "Watcom-1.0", - "watcom-1.0.0": "Watcom-1.0", - "wsuipa": "Wsuipa", - "wtfpl": "WTFPL", - "wxwindows": "wxWindows", - "x11": "X11", - "x11-distribute-modifications-variant": "X11-distribute-modifications-variant", - "xerox": "Xerox", - "xfree86-1": "XFree86-1.1", - "xfree86-1.1": "XFree86-1.1", - "xfree86-1.1.0": "XFree86-1.1", - "xinetd": "xinetd", - "xlock": "xlock", - "xnet": "Xnet", - "xpp": "xpp", - "xskat": "XSkat", - "ypl-1": "YPL-1.0", - "ypl-1.0": "YPL-1.0", - "ypl-1.0.0": "YPL-1.0", - "ypl-1.1": "YPL-1.1", - "ypl-1.1.0": "YPL-1.1", - "zed": "Zed", - "zend-2": "Zend-2.0", - "zend-2.0": "Zend-2.0", - "zend-2.0.0": "Zend-2.0", - "zimbra-1": "Zimbra-1.3", - "zimbra-1.3": "Zimbra-1.3", - "zimbra-1.3.0": "Zimbra-1.3", - "zimbra-1.4": "Zimbra-1.4", - "zimbra-1.4.0": "Zimbra-1.4", - "zlib": "Zlib", - "zlib-acknowledgement": "zlib-acknowledgement", - "zpl-1": "ZPL-1.1", - "zpl-1.1": "ZPL-1.1", - "zpl-1.1.0": "ZPL-1.1", - "zpl-2": "ZPL-2.0", - "zpl-2.0": "ZPL-2.0", - "zpl-2.0.0": "ZPL-2.0", - "zpl-2.1": "ZPL-2.1", - "zpl-2.1.0": "ZPL-2.1", + "0bsd": "0BSD", + "aal": "AAL", + "abstyles": "Abstyles", + "adacoredoc": "AdaCore-doc", + "adobe2006": "Adobe-2006", + "adobe2006.0": "Adobe-2006", + "adobe2006.0.0": "Adobe-2006", + "adobeglyph": "Adobe-Glyph", + "adsl": "ADSL", + "afl1": "AFL-1.1", + "afl1.1": "AFL-1.1", + "afl1.1.0": "AFL-1.1", + "afl1.2": "AFL-1.2", + "afl1.2.0": "AFL-1.2", + "afl2": "AFL-2.0", + "afl2.0": "AFL-2.0", + "afl2.0.0": "AFL-2.0", + "afl2.1": "AFL-2.1", + "afl2.1.0": "AFL-2.1", + "afl3": "AFL-3.0", + "afl3.0": "AFL-3.0", + "afl3.0.0": "AFL-3.0", + "afmparse": "Afmparse", + "agpl1": "AGPL-1.0-only", + "agpl1.0": "AGPL-1.0-only", + "agpl1.0.0": "AGPL-1.0-only", + "agpl1.0.0only": "AGPL-1.0-only", + "agpl1.0.0orlater": "AGPL-1.0-or-later", + "agpl1.0only": "AGPL-1.0-only", + "agpl1.0orlater": "AGPL-1.0-or-later", + "agpl1only": "AGPL-1.0-only", + "agpl1orlater": "AGPL-1.0-or-later", + "agpl3": "AGPL-3.0-only", + "agpl3.0": "AGPL-3.0-only", + "agpl3.0.0": "AGPL-3.0-only", + "agpl3.0.0only": "AGPL-3.0-only", + "agpl3.0.0orlater": "AGPL-3.0-or-later", + "agpl3.0only": "AGPL-3.0-only", + "agpl3.0orlater": "AGPL-3.0-or-later", + "agpl3only": "AGPL-3.0-only", + "agpl3orlater": "AGPL-3.0-or-later", + "aladdin": "Aladdin", + "amdplpa": "AMDPLPA", + "aml": "AML", + "ampas": "AMPAS", + "antlrpd": "ANTLR-PD", + "antlrpdfallback": "ANTLR-PD-fallback", + "apache1": "Apache-1.0", + "apache1.0": "Apache-1.0", + "apache1.0.0": "Apache-1.0", + "apache1.1": "Apache-1.1", + "apache1.1.0": "Apache-1.1", + "apache2": "Apache-2.0", + "apache2.0": "Apache-2.0", + "apache2.0.0": "Apache-2.0", + "apafml": "APAFML", + "apl1": "APL-1.0", + "apl1.0": "APL-1.0", + "apl1.0.0": "APL-1.0", + "apps2.0.0p": "App-s2p", + "apps2.0p": "App-s2p", + "apps2p": "App-s2p", + "apsl1": "APSL-1.0", + "apsl1.0": "APSL-1.0", + "apsl1.0.0": "APSL-1.0", + "apsl1.1": "APSL-1.1", + "apsl1.1.0": "APSL-1.1", + "apsl1.2": "APSL-1.2", + "apsl1.2.0": "APSL-1.2", + "apsl2": "APSL-2.0", + "apsl2.0": "APSL-2.0", + "apsl2.0.0": "APSL-2.0", + "arphic1999": "Arphic-1999", + "arphic1999.0": "Arphic-1999", + "arphic1999.0.0": "Arphic-1999", + "artistic1": "Artistic-1.0", + "artistic1.0": "Artistic-1.0", + "artistic1.0.0": "Artistic-1.0", + "artistic1.0.0cl8": "Artistic-1.0-cl8", + "artistic1.0.0perl": "Artistic-1.0-Perl", + "artistic1.0cl8": "Artistic-1.0-cl8", + "artistic1.0perl": "Artistic-1.0-Perl", + "artistic1cl8": "Artistic-1.0-cl8", + "artistic1perl": "Artistic-1.0-Perl", + "artistic2": "Artistic-2.0", + "artistic2.0": "Artistic-2.0", + "artistic2.0.0": "Artistic-2.0", + "baekmuk": "Baekmuk", + "bahyph": "Bahyph", + "barr": "Barr", + "beerware": "Beerware", + "bitstreamcharter": "Bitstream-Charter", + "bitstreamvera": "Bitstream-Vera", + "bittorrent1": "BitTorrent-1.0", + "bittorrent1.0": "BitTorrent-1.0", + "bittorrent1.0.0": "BitTorrent-1.0", + "bittorrent1.1": "BitTorrent-1.1", + "bittorrent1.1.0": "BitTorrent-1.1", + "blessing": "blessing", + "blueoak1": "BlueOak-1.0.0", + "blueoak1.0": "BlueOak-1.0.0", + "blueoak1.0.0": "BlueOak-1.0.0", + "borceux": "Borceux", + "briangladman3.0.0clause": "Brian-Gladman-3-Clause", + "briangladman3.0clause": "Brian-Gladman-3-Clause", + "briangladman3clause": "Brian-Gladman-3-Clause", + "bsd1.0.0clause": "BSD-1-Clause", + "bsd1.0clause": "BSD-1-Clause", + "bsd1clause": "BSD-1-Clause", + "bsd2.0.0clause": "BSD-2-Clause", + "bsd2.0.0clausefreebsd": "BSD-2-Clause-Views", + "bsd2.0.0clausenetbsd": "BSD-2-Clause", + "bsd2.0.0clausepatent": "BSD-2-Clause-Patent", + "bsd2.0.0clauseviews": "BSD-2-Clause-Views", + "bsd2.0clause": "BSD-2-Clause", + "bsd2.0clausefreebsd": "BSD-2-Clause-Views", + "bsd2.0clausenetbsd": "BSD-2-Clause", + "bsd2.0clausepatent": "BSD-2-Clause-Patent", + "bsd2.0clauseviews": "BSD-2-Clause-Views", + "bsd2clause": "BSD-2-Clause", + "bsd2clausefreebsd": "BSD-2-Clause-Views", + "bsd2clausenetbsd": "BSD-2-Clause", + "bsd2clausepatent": "BSD-2-Clause-Patent", + "bsd2clauseviews": "BSD-2-Clause-Views", + "bsd3.0.0clause": "BSD-3-Clause", + "bsd3.0.0clauseattribution": "BSD-3-Clause-Attribution", + "bsd3.0.0clauseclear": "BSD-3-Clause-Clear", + "bsd3.0.0clauselbnl": "BSD-3-Clause-LBNL", + "bsd3.0.0clausemodification": "BSD-3-Clause-Modification", + "bsd3.0.0clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3.0.0clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3.0.0clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3.0.0clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3.0.0clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd3.0clause": "BSD-3-Clause", + "bsd3.0clauseattribution": "BSD-3-Clause-Attribution", + "bsd3.0clauseclear": "BSD-3-Clause-Clear", + "bsd3.0clauselbnl": "BSD-3-Clause-LBNL", + "bsd3.0clausemodification": "BSD-3-Clause-Modification", + "bsd3.0clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3.0clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3.0clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3.0clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3.0clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd3clause": "BSD-3-Clause", + "bsd3clauseattribution": "BSD-3-Clause-Attribution", + "bsd3clauseclear": "BSD-3-Clause-Clear", + "bsd3clauselbnl": "BSD-3-Clause-LBNL", + "bsd3clausemodification": "BSD-3-Clause-Modification", + "bsd3clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd4.0.0clause": "BSD-4-Clause", + "bsd4.0.0clauseshortened": "BSD-4-Clause-Shortened", + "bsd4.0.0clauseuc": "BSD-4-Clause-UC", + "bsd4.0clause": "BSD-4-Clause", + "bsd4.0clauseshortened": "BSD-4-Clause-Shortened", + "bsd4.0clauseuc": "BSD-4-Clause-UC", + "bsd4.3.0reno": "BSD-4.3RENO", + "bsd4.3.0tahoe": "BSD-4.3TAHOE", + "bsd4.3reno": "BSD-4.3RENO", + "bsd4.3tahoe": "BSD-4.3TAHOE", + "bsd4clause": "BSD-4-Clause", + "bsd4clauseshortened": "BSD-4-Clause-Shortened", + "bsd4clauseuc": "BSD-4-Clause-UC", + "bsd4reno": "BSD-4.3RENO", + "bsd4tahoe": "BSD-4.3TAHOE", + "bsdadvertisingacknowledgement": "BSD-Advertising-Acknowledgement", + "bsdattributionhpnddisclaimer": "BSD-Attribution-HPND-disclaimer", + "bsdprotection": "BSD-Protection", + "bsdsourcecode": "BSD-Source-Code", + "bsl1": "BSL-1.0", + "bsl1.0": "BSL-1.0", + "bsl1.0.0": "BSL-1.0", + "busl1": "BUSL-1.1", + "busl1.1": "BUSL-1.1", + "busl1.1.0": "BUSL-1.1", + "bzip21": "bzip2-1.0.6", + "bzip21.0": "bzip2-1.0.6", + "bzip21.0.5": "bzip2-1.0.6", + "bzip21.0.6": "bzip2-1.0.6", + "cal1": "CAL-1.0", + "cal1.0": "CAL-1.0", + "cal1.0.0": "CAL-1.0", + "cal1.0.0combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "cal1.0combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "cal1combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "caldera": "Caldera", + "catosl1": "CATOSL-1.1", + "catosl1.1": "CATOSL-1.1", + "catosl1.1.0": "CATOSL-1.1", + "cc01": "CC0-1.0", + "cc01.0": "CC0-1.0", + "cc01.0.0": "CC0-1.0", + "ccby1": "CC-BY-1.0", + "ccby1.0": "CC-BY-1.0", + "ccby1.0.0": "CC-BY-1.0", + "ccby2": "CC-BY-2.0", + "ccby2.0": "CC-BY-2.0", + "ccby2.0.0": "CC-BY-2.0", + "ccby2.5": "CC-BY-2.5", + "ccby2.5.0": "CC-BY-2.5", + "ccby2.5.0au": "CC-BY-2.5-AU", + "ccby2.5au": "CC-BY-2.5-AU", + "ccby2au": "CC-BY-2.5-AU", + "ccby3": "CC-BY-3.0", + "ccby3.0": "CC-BY-3.0", + "ccby3.0.0": "CC-BY-3.0", + "ccby3.0.0at": "CC-BY-3.0-AT", + "ccby3.0.0de": "CC-BY-3.0-DE", + "ccby3.0.0igo": "CC-BY-3.0-IGO", + "ccby3.0.0nl": "CC-BY-3.0-NL", + "ccby3.0.0us": "CC-BY-3.0-US", + "ccby3.0at": "CC-BY-3.0-AT", + "ccby3.0de": "CC-BY-3.0-DE", + "ccby3.0igo": "CC-BY-3.0-IGO", + "ccby3.0nl": "CC-BY-3.0-NL", + "ccby3.0us": "CC-BY-3.0-US", + "ccby3at": "CC-BY-3.0-AT", + "ccby3de": "CC-BY-3.0-DE", + "ccby3igo": "CC-BY-3.0-IGO", + "ccby3nl": "CC-BY-3.0-NL", + "ccby3us": "CC-BY-3.0-US", + "ccby4": "CC-BY-4.0", + "ccby4.0": "CC-BY-4.0", + "ccby4.0.0": "CC-BY-4.0", + "ccbync1": "CC-BY-NC-1.0", + "ccbync1.0": "CC-BY-NC-1.0", + "ccbync1.0.0": "CC-BY-NC-1.0", + "ccbync2": "CC-BY-NC-2.0", + "ccbync2.0": "CC-BY-NC-2.0", + "ccbync2.0.0": "CC-BY-NC-2.0", + "ccbync2.5": "CC-BY-NC-2.5", + "ccbync2.5.0": "CC-BY-NC-2.5", + "ccbync3": "CC-BY-NC-3.0", + "ccbync3.0": "CC-BY-NC-3.0", + "ccbync3.0.0": "CC-BY-NC-3.0", + "ccbync3.0.0de": "CC-BY-NC-3.0-DE", + "ccbync3.0de": "CC-BY-NC-3.0-DE", + "ccbync3de": "CC-BY-NC-3.0-DE", + "ccbync4": "CC-BY-NC-4.0", + "ccbync4.0": "CC-BY-NC-4.0", + "ccbync4.0.0": "CC-BY-NC-4.0", + "ccbyncnd1": "CC-BY-NC-ND-1.0", + "ccbyncnd1.0": "CC-BY-NC-ND-1.0", + "ccbyncnd1.0.0": "CC-BY-NC-ND-1.0", + "ccbyncnd2": "CC-BY-NC-ND-2.0", + "ccbyncnd2.0": "CC-BY-NC-ND-2.0", + "ccbyncnd2.0.0": "CC-BY-NC-ND-2.0", + "ccbyncnd2.5": "CC-BY-NC-ND-2.5", + "ccbyncnd2.5.0": "CC-BY-NC-ND-2.5", + "ccbyncnd3": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0.0": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0.0de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3.0.0igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd3.0de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3.0igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd3de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd4": "CC-BY-NC-ND-4.0", + "ccbyncnd4.0": "CC-BY-NC-ND-4.0", + "ccbyncnd4.0.0": "CC-BY-NC-ND-4.0", + "ccbyncsa1": "CC-BY-NC-SA-1.0", + "ccbyncsa1.0": "CC-BY-NC-SA-1.0", + "ccbyncsa1.0.0": "CC-BY-NC-SA-1.0", + "ccbyncsa2": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0.0": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0.0de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2.0.0fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2.0.0uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa2.0de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2.0fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2.0uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa2.5": "CC-BY-NC-SA-2.5", + "ccbyncsa2.5.0": "CC-BY-NC-SA-2.5", + "ccbyncsa2de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa3": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0.0": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0.0de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3.0.0igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa3.0de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3.0igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa3de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa4": "CC-BY-NC-SA-4.0", + "ccbyncsa4.0": "CC-BY-NC-SA-4.0", + "ccbyncsa4.0.0": "CC-BY-NC-SA-4.0", + "ccbynd1": "CC-BY-ND-1.0", + "ccbynd1.0": "CC-BY-ND-1.0", + "ccbynd1.0.0": "CC-BY-ND-1.0", + "ccbynd2": "CC-BY-ND-2.0", + "ccbynd2.0": "CC-BY-ND-2.0", + "ccbynd2.0.0": "CC-BY-ND-2.0", + "ccbynd2.5": "CC-BY-ND-2.5", + "ccbynd2.5.0": "CC-BY-ND-2.5", + "ccbynd3": "CC-BY-ND-3.0", + "ccbynd3.0": "CC-BY-ND-3.0", + "ccbynd3.0.0": "CC-BY-ND-3.0", + "ccbynd3.0.0de": "CC-BY-ND-3.0-DE", + "ccbynd3.0de": "CC-BY-ND-3.0-DE", + "ccbynd3de": "CC-BY-ND-3.0-DE", + "ccbynd4": "CC-BY-ND-4.0", + "ccbynd4.0": "CC-BY-ND-4.0", + "ccbynd4.0.0": "CC-BY-ND-4.0", + "ccbysa1": "CC-BY-SA-1.0", + "ccbysa1.0": "CC-BY-SA-1.0", + "ccbysa1.0.0": "CC-BY-SA-1.0", + "ccbysa2": "CC-BY-SA-2.0", + "ccbysa2.0": "CC-BY-SA-2.0", + "ccbysa2.0.0": "CC-BY-SA-2.0", + "ccbysa2.0.0uk": "CC-BY-SA-2.0-UK", + "ccbysa2.0uk": "CC-BY-SA-2.0-UK", + "ccbysa2.1.0jp": "CC-BY-SA-2.1-JP", + "ccbysa2.1jp": "CC-BY-SA-2.1-JP", + "ccbysa2.5": "CC-BY-SA-2.5", + "ccbysa2.5.0": "CC-BY-SA-2.5", + "ccbysa2jp": "CC-BY-SA-2.1-JP", + "ccbysa2uk": "CC-BY-SA-2.0-UK", + "ccbysa3": "CC-BY-SA-3.0", + "ccbysa3.0": "CC-BY-SA-3.0", + "ccbysa3.0.0": "CC-BY-SA-3.0", + "ccbysa3.0.0at": "CC-BY-SA-3.0-AT", + "ccbysa3.0.0de": "CC-BY-SA-3.0-DE", + "ccbysa3.0at": "CC-BY-SA-3.0-AT", + "ccbysa3.0de": "CC-BY-SA-3.0-DE", + "ccbysa3at": "CC-BY-SA-3.0-AT", + "ccbysa3de": "CC-BY-SA-3.0-DE", + "ccbysa4": "CC-BY-SA-4.0", + "ccbysa4.0": "CC-BY-SA-4.0", + "ccbysa4.0.0": "CC-BY-SA-4.0", + "ccpddc": "CC-PDDC", + "cddl1": "CDDL-1.0", + "cddl1.0": "CDDL-1.0", + "cddl1.0.0": "CDDL-1.0", + "cddl1.1": "CDDL-1.1", + "cddl1.1.0": "CDDL-1.1", + "cdl1": "CDL-1.0", + "cdl1.0": "CDL-1.0", + "cdl1.0.0": "CDL-1.0", + "cdlapermissive1": "CDLA-Permissive-1.0", + "cdlapermissive1.0": "CDLA-Permissive-1.0", + "cdlapermissive1.0.0": "CDLA-Permissive-1.0", + "cdlapermissive2": "CDLA-Permissive-2.0", + "cdlapermissive2.0": "CDLA-Permissive-2.0", + "cdlapermissive2.0.0": "CDLA-Permissive-2.0", + "cdlasharing1": "CDLA-Sharing-1.0", + "cdlasharing1.0": "CDLA-Sharing-1.0", + "cdlasharing1.0.0": "CDLA-Sharing-1.0", + "cecill1": "CECILL-1.0", + "cecill1.0": "CECILL-1.0", + "cecill1.0.0": "CECILL-1.0", + "cecill1.1": "CECILL-1.1", + "cecill1.1.0": "CECILL-1.1", + "cecill2": "CECILL-2.0", + "cecill2.0": "CECILL-2.0", + "cecill2.0.0": "CECILL-2.0", + "cecill2.1": "CECILL-2.1", + "cecill2.1.0": "CECILL-2.1", + "cecillb": "CECILL-B", + "cecillc": "CECILL-C", + "cernohl1": "CERN-OHL-1.1", + "cernohl1.1": "CERN-OHL-1.1", + "cernohl1.1.0": "CERN-OHL-1.1", + "cernohl1.2": "CERN-OHL-1.2", + "cernohl1.2.0": "CERN-OHL-1.2", + "cernohlp2": "CERN-OHL-P-2.0", + "cernohlp2.0": "CERN-OHL-P-2.0", + "cernohlp2.0.0": "CERN-OHL-P-2.0", + "cernohls2": "CERN-OHL-S-2.0", + "cernohls2.0": "CERN-OHL-S-2.0", + "cernohls2.0.0": "CERN-OHL-S-2.0", + "cernohlw2": "CERN-OHL-W-2.0", + "cernohlw2.0": "CERN-OHL-W-2.0", + "cernohlw2.0.0": "CERN-OHL-W-2.0", + "cfitsio": "CFITSIO", + "checkmk": "checkmk", + "clartistic": "ClArtistic", + "clips": "Clips", + "cmumach": "CMU-Mach", + "cnrijython": "CNRI-Jython", + "cnripython": "CNRI-Python", + "cnripythongplcompatible": "CNRI-Python-GPL-Compatible", + "coil1": "COIL-1.0", + "coil1.0": "COIL-1.0", + "coil1.0.0": "COIL-1.0", + "communityspec1": "Community-Spec-1.0", + "communityspec1.0": "Community-Spec-1.0", + "communityspec1.0.0": "Community-Spec-1.0", + "condor1": "Condor-1.1", + "condor1.1": "Condor-1.1", + "condor1.1.0": "Condor-1.1", + "copyleftnext0.3": "copyleft-next-0.3.0", + "copyleftnext0.3.0": "copyleft-next-0.3.0", + "copyleftnext0.3.1": "copyleft-next-0.3.1", + "cornelllosslessjpeg": "Cornell-Lossless-JPEG", + "cpal1": "CPAL-1.0", + "cpal1.0": "CPAL-1.0", + "cpal1.0.0": "CPAL-1.0", + "cpl1": "CPL-1.0", + "cpl1.0": "CPL-1.0", + "cpl1.0.0": "CPL-1.0", + "cpol1": "CPOL-1.02", + "cpol1.02": "CPOL-1.02", + "cpol1.02.0": "CPOL-1.02", + "crossword": "Crossword", + "crystalstacker": "CrystalStacker", + "cuaopl1": "CUA-OPL-1.0", + "cuaopl1.0": "CUA-OPL-1.0", + "cuaopl1.0.0": "CUA-OPL-1.0", + "cube": "Cube", + "cuda1": "C-UDA-1.0", + "cuda1.0": "C-UDA-1.0", + "cuda1.0.0": "C-UDA-1.0", + "curl": "curl", + "dfsl1": "D-FSL-1.0", + "dfsl1.0": "D-FSL-1.0", + "dfsl1.0.0": "D-FSL-1.0", + "diffmark": "diffmark", + "dldeby2": "DL-DE-BY-2.0", + "dldeby2.0": "DL-DE-BY-2.0", + "dldeby2.0.0": "DL-DE-BY-2.0", + "doc": "DOC", + "dotseqn": "Dotseqn", + "drl1": "DRL-1.0", + "drl1.0": "DRL-1.0", + "drl1.0.0": "DRL-1.0", + "dsdp": "DSDP", + "dvipdfm": "dvipdfm", + "ecl1": "ECL-1.0", + "ecl1.0": "ECL-1.0", + "ecl1.0.0": "ECL-1.0", + "ecl2": "ECL-2.0", + "ecl2.0": "ECL-2.0", + "ecl2.0.0": "ECL-2.0", + "ecos2": "eCos-2.0", + "ecos2.0": "eCos-2.0", + "ecos2.0.0": "eCos-2.0", + "efl1": "EFL-1.0", + "efl1.0": "EFL-1.0", + "efl1.0.0": "EFL-1.0", + "efl2": "EFL-2.0", + "efl2.0": "EFL-2.0", + "efl2.0.0": "EFL-2.0", + "egenix": "eGenix", + "elastic2": "Elastic-2.0", + "elastic2.0": "Elastic-2.0", + "elastic2.0.0": "Elastic-2.0", + "entessa": "Entessa", + "epics": "EPICS", + "epl1": "EPL-1.0", + "epl1.0": "EPL-1.0", + "epl1.0.0": "EPL-1.0", + "epl2": "EPL-2.0", + "epl2.0": "EPL-2.0", + "epl2.0.0": "EPL-2.0", + "erlpl1": "ErlPL-1.1", + "erlpl1.1": "ErlPL-1.1", + "erlpl1.1.0": "ErlPL-1.1", + "etalab2": "etalab-2.0", + "etalab2.0": "etalab-2.0", + "etalab2.0.0": "etalab-2.0", + "eudatagrid": "EUDatagrid", + "eupl1": "EUPL-1.0", + "eupl1.0": "EUPL-1.0", + "eupl1.0.0": "EUPL-1.0", + "eupl1.1": "EUPL-1.1", + "eupl1.1.0": "EUPL-1.1", + "eupl1.2": "EUPL-1.2", + "eupl1.2.0": "EUPL-1.2", + "eurosym": "Eurosym", + "fair": "Fair", + "fdkaac": "FDK-AAC", + "frameworx1": "Frameworx-1.0", + "frameworx1.0": "Frameworx-1.0", + "frameworx1.0.0": "Frameworx-1.0", + "freebsddoc": "FreeBSD-DOC", + "freeimage": "FreeImage", + "fsfap": "FSFAP", + "fsful": "FSFUL", + "fsfullr": "FSFULLR", + "fsfullrwd": "FSFULLRWD", + "ftl": "FTL", + "gd": "GD", + "gfdl1": "GFDL-1.1-only", + "gfdl1.1": "GFDL-1.1-only", + "gfdl1.1.0": "GFDL-1.1-only", + "gfdl1.1.0invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1.1.0invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1.1.0noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1.1.0noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1.1.0only": "GFDL-1.1-only", + "gfdl1.1.0orlater": "GFDL-1.1-or-later", + "gfdl1.1invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1.1invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1.1noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1.1noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1.1only": "GFDL-1.1-only", + "gfdl1.1orlater": "GFDL-1.1-or-later", + "gfdl1.2": "GFDL-1.2-only", + "gfdl1.2.0": "GFDL-1.2-only", + "gfdl1.2.0invariantsonly": "GFDL-1.2-invariants-only", + "gfdl1.2.0invariantsorlater": "GFDL-1.2-invariants-or-later", + "gfdl1.2.0noinvariantsonly": "GFDL-1.2-no-invariants-only", + "gfdl1.2.0noinvariantsorlater": "GFDL-1.2-no-invariants-or-later", + "gfdl1.2.0only": "GFDL-1.2-only", + "gfdl1.2.0orlater": "GFDL-1.2-or-later", + "gfdl1.2invariantsonly": "GFDL-1.2-invariants-only", + "gfdl1.2invariantsorlater": "GFDL-1.2-invariants-or-later", + "gfdl1.2noinvariantsonly": "GFDL-1.2-no-invariants-only", + "gfdl1.2noinvariantsorlater": "GFDL-1.2-no-invariants-or-later", + "gfdl1.2only": "GFDL-1.2-only", + "gfdl1.2orlater": "GFDL-1.2-or-later", + "gfdl1.3": "GFDL-1.3-only", + "gfdl1.3.0": "GFDL-1.3-only", + "gfdl1.3.0invariantsonly": "GFDL-1.3-invariants-only", + "gfdl1.3.0invariantsorlater": "GFDL-1.3-invariants-or-later", + "gfdl1.3.0noinvariantsonly": "GFDL-1.3-no-invariants-only", + "gfdl1.3.0noinvariantsorlater": "GFDL-1.3-no-invariants-or-later", + "gfdl1.3.0only": "GFDL-1.3-only", + "gfdl1.3.0orlater": "GFDL-1.3-or-later", + "gfdl1.3invariantsonly": "GFDL-1.3-invariants-only", + "gfdl1.3invariantsorlater": "GFDL-1.3-invariants-or-later", + "gfdl1.3noinvariantsonly": "GFDL-1.3-no-invariants-only", + "gfdl1.3noinvariantsorlater": "GFDL-1.3-no-invariants-or-later", + "gfdl1.3only": "GFDL-1.3-only", + "gfdl1.3orlater": "GFDL-1.3-or-later", + "gfdl1invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1only": "GFDL-1.1-only", + "gfdl1orlater": "GFDL-1.1-or-later", + "giftware": "Giftware", + "gl2.0.0ps": "GL2PS", + "gl2.0ps": "GL2PS", + "gl2ps": "GL2PS", + "glide": "Glide", + "glulxe": "Glulxe", + "glwtpl": "GLWTPL", + "gnuplot": "gnuplot", + "gpl1": "GPL-1.0-only", + "gpl1+": "GPL-1.0-or-later", + "gpl1.0": "GPL-1.0-only", + "gpl1.0+": "GPL-1.0-or-later", + "gpl1.0.0": "GPL-1.0-only", + "gpl1.0.0+": "GPL-1.0-or-later", + "gpl1.0.0only": "GPL-1.0-only", + "gpl1.0.0orlater": "GPL-1.0-or-later", + "gpl1.0only": "GPL-1.0-only", + "gpl1.0orlater": "GPL-1.0-or-later", + "gpl1only": "GPL-1.0-only", + "gpl1orlater": "GPL-1.0-or-later", + "gpl2": "GPL-2.0-only", + "gpl2+": "GPL-2.0-or-later", + "gpl2.0": "GPL-2.0-only", + "gpl2.0+": "GPL-2.0-or-later", + "gpl2.0.0": "GPL-2.0-only", + "gpl2.0.0+": "GPL-2.0-or-later", + "gpl2.0.0only": "GPL-2.0-only", + "gpl2.0.0orlater": "GPL-2.0-or-later", + "gpl2.0.0withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2.0.0withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2.0.0withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2.0.0withfontexception": "GPL-2.0-with-font-exception", + "gpl2.0.0withgccexception": "GPL-2.0-with-GCC-exception", + "gpl2.0only": "GPL-2.0-only", + "gpl2.0orlater": "GPL-2.0-or-later", + "gpl2.0withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2.0withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2.0withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2.0withfontexception": "GPL-2.0-with-font-exception", + "gpl2.0withgccexception": "GPL-2.0-with-GCC-exception", + "gpl2only": "GPL-2.0-only", + "gpl2orlater": "GPL-2.0-or-later", + "gpl2withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2withfontexception": "GPL-2.0-with-font-exception", + "gpl2withgccexception": "GPL-2.0-with-GCC-exception", + "gpl3": "GPL-3.0-only", + "gpl3+": "GPL-3.0-or-later", + "gpl3.0": "GPL-3.0-only", + "gpl3.0+": "GPL-3.0-or-later", + "gpl3.0.0": "GPL-3.0-only", + "gpl3.0.0+": "GPL-3.0-or-later", + "gpl3.0.0only": "GPL-3.0-only", + "gpl3.0.0orlater": "GPL-3.0-or-later", + "gpl3.0.0withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3.0.0withgccexception": "GPL-3.0-with-GCC-exception", + "gpl3.0only": "GPL-3.0-only", + "gpl3.0orlater": "GPL-3.0-or-later", + "gpl3.0withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3.0withgccexception": "GPL-3.0-with-GCC-exception", + "gpl3only": "GPL-3.0-only", + "gpl3orlater": "GPL-3.0-or-later", + "gpl3withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3withgccexception": "GPL-3.0-with-GCC-exception", + "graphicsgems": "Graphics-Gems", + "gsoap1.3.0b": "gSOAP-1.3b", + "gsoap1.3b": "gSOAP-1.3b", + "gsoap1b": "gSOAP-1.3b", + "haskellreport": "HaskellReport", + "hippocratic2": "Hippocratic-2.1", + "hippocratic2.1": "Hippocratic-2.1", + "hippocratic2.1.0": "Hippocratic-2.1", + "hp1986": "HP-1986", + "hp1986.0": "HP-1986", + "hp1986.0.0": "HP-1986", + "hpnd": "HPND", + "hpndexportus": "HPND-export-US", + "hpndmarkuskuhn": "HPND-Markus-Kuhn", + "hpndsellvariant": "HPND-sell-variant", + "hpndsellvariantmitdisclaimer": "HPND-sell-variant-MIT-disclaimer", + "htmltidy": "HTMLTIDY", + "ibmpibs": "IBM-pibs", + "icu": "ICU", + "ieccodecomponentseula": "IEC-Code-Components-EULA", + "ijg": "IJG", + "ijgshort": "IJG-short", + "imagemagick": "ImageMagick", + "imatix": "iMatix", + "imlib2": "Imlib2", + "imlib2.0": "Imlib2", + "imlib2.0.0": "Imlib2", + "infozip": "Info-ZIP", + "intel": "Intel", + "intelacpi": "Intel-ACPI", + "interbase1": "Interbase-1.0", + "interbase1.0": "Interbase-1.0", + "interbase1.0.0": "Interbase-1.0", + "ipa": "IPA", + "ipl1": "IPL-1.0", + "ipl1.0": "IPL-1.0", + "ipl1.0.0": "IPL-1.0", + "isc": "ISC", + "jam": "Jam", + "jasper2": "JasPer-2.0", + "jasper2.0": "JasPer-2.0", + "jasper2.0.0": "JasPer-2.0", + "jplimage": "JPL-image", + "jpnic": "JPNIC", + "json": "JSON", + "kazlib": "Kazlib", + "knuthctan": "Knuth-CTAN", + "lal1": "LAL-1.2", + "lal1.2": "LAL-1.2", + "lal1.2.0": "LAL-1.2", + "lal1.3": "LAL-1.3", + "lal1.3.0": "LAL-1.3", + "latex2.0.0e": "Latex2e", + "latex2.0e": "Latex2e", + "latex2e": "Latex2e", + "leptonica": "Leptonica", + "lgpl2": "LGPL-2.0-only", + "lgpl2+": "LGPL-2.0-or-later", + "lgpl2.0": "LGPL-2.0-only", + "lgpl2.0+": "LGPL-2.0-or-later", + "lgpl2.0.0": "LGPL-2.0-only", + "lgpl2.0.0+": "LGPL-2.0-or-later", + "lgpl2.0.0only": "LGPL-2.0-only", + "lgpl2.0.0orlater": "LGPL-2.0-or-later", + "lgpl2.0only": "LGPL-2.0-only", + "lgpl2.0orlater": "LGPL-2.0-or-later", + "lgpl2.1": "LGPL-2.1-only", + "lgpl2.1+": "LGPL-2.1-or-later", + "lgpl2.1.0": "LGPL-2.1-only", + "lgpl2.1.0+": "LGPL-2.1-or-later", + "lgpl2.1.0only": "LGPL-2.1-only", + "lgpl2.1.0orlater": "LGPL-2.1-or-later", + "lgpl2.1only": "LGPL-2.1-only", + "lgpl2.1orlater": "LGPL-2.1-or-later", + "lgpl2only": "LGPL-2.0-only", + "lgpl2orlater": "LGPL-2.0-or-later", + "lgpl3": "LGPL-3.0-only", + "lgpl3+": "LGPL-3.0-or-later", + "lgpl3.0": "LGPL-3.0-only", + "lgpl3.0+": "LGPL-3.0-or-later", + "lgpl3.0.0": "LGPL-3.0-only", + "lgpl3.0.0+": "LGPL-3.0-or-later", + "lgpl3.0.0only": "LGPL-3.0-only", + "lgpl3.0.0orlater": "LGPL-3.0-or-later", + "lgpl3.0only": "LGPL-3.0-only", + "lgpl3.0orlater": "LGPL-3.0-or-later", + "lgpl3only": "LGPL-3.0-only", + "lgpl3orlater": "LGPL-3.0-or-later", + "lgpllr": "LGPLLR", + "libpng": "Libpng", + "libpng2": "libpng-2.0", + "libpng2.0": "libpng-2.0", + "libpng2.0.0": "libpng-2.0", + "libselinux1": "libselinux-1.0", + "libselinux1.0": "libselinux-1.0", + "libselinux1.0.0": "libselinux-1.0", + "libtiff": "libtiff", + "libutildavidnugent": "libutil-David-Nugent", + "liliqp1": "LiLiQ-P-1.1", + "liliqp1.1": "LiLiQ-P-1.1", + "liliqp1.1.0": "LiLiQ-P-1.1", + "liliqr1": "LiLiQ-R-1.1", + "liliqr1.1": "LiLiQ-R-1.1", + "liliqr1.1.0": "LiLiQ-R-1.1", + "liliqrplus1": "LiLiQ-Rplus-1.1", + "liliqrplus1.1": "LiLiQ-Rplus-1.1", + "liliqrplus1.1.0": "LiLiQ-Rplus-1.1", + "linuxmanpagescopyleft": "Linux-man-pages-copyleft", + "linuxopenib": "Linux-OpenIB", + "loop": "LOOP", + "lpl1": "LPL-1.0", + "lpl1.0": "LPL-1.0", + "lpl1.0.0": "LPL-1.0", + "lpl1.02": "LPL-1.02", + "lpl1.02.0": "LPL-1.02", + "lppl1": "LPPL-1.0", + "lppl1.0": "LPPL-1.0", + "lppl1.0.0": "LPPL-1.0", + "lppl1.1": "LPPL-1.1", + "lppl1.1.0": "LPPL-1.1", + "lppl1.2": "LPPL-1.2", + "lppl1.2.0": "LPPL-1.2", + "lppl1.3.0a": "LPPL-1.3a", + "lppl1.3.0c": "LPPL-1.3c", + "lppl1.3a": "LPPL-1.3a", + "lppl1.3c": "LPPL-1.3c", + "lppl1a": "LPPL-1.3a", + "lppl1c": "LPPL-1.3c", + "lzmasdk9": "LZMA-SDK-9.22", + "lzmasdk9.11.0to9.20": "LZMA-SDK-9.11-to-9.20", + "lzmasdk9.11to9.20": "LZMA-SDK-9.11-to-9.20", + "lzmasdk9.22": "LZMA-SDK-9.22", + "lzmasdk9.22.0": "LZMA-SDK-9.22", + "lzmasdk9to9.20": "LZMA-SDK-9.11-to-9.20", + "makeindex": "MakeIndex", + "martinbirgmeier": "Martin-Birgmeier", + "minpack": "Minpack", + "miros": "MirOS", + "mit": "MIT", + "mit0": "MIT-0", + "mitadvertising": "MIT-advertising", + "mitcmu": "MIT-CMU", + "mitenna": "MIT-enna", + "mitfeh": "MIT-feh", + "mitmodernvariant": "MIT-Modern-Variant", + "mitnfa": "MITNFA", + "mitopengroup": "MIT-open-group", + "mitwu": "MIT-Wu", + "motosoto": "Motosoto", + "mpich2": "mpich2", + "mpich2.0": "mpich2", + "mpich2.0.0": "mpich2", + "mpipermissive": "mpi-permissive", + "mpl1": "MPL-1.0", + "mpl1.0": "MPL-1.0", + "mpl1.0.0": "MPL-1.0", + "mpl1.1": "MPL-1.1", + "mpl1.1.0": "MPL-1.1", + "mpl2": "MPL-2.0", + "mpl2.0": "MPL-2.0", + "mpl2.0.0": "MPL-2.0", + "mpl2.0.0nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mpl2.0nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mpl2nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mplus": "mplus", + "mslpl": "MS-LPL", + "mspl": "MS-PL", + "msrl": "MS-RL", + "mtll": "MTLL", + "mulanpsl1": "MulanPSL-1.0", + "mulanpsl1.0": "MulanPSL-1.0", + "mulanpsl1.0.0": "MulanPSL-1.0", + "mulanpsl2": "MulanPSL-2.0", + "mulanpsl2.0": "MulanPSL-2.0", + "mulanpsl2.0.0": "MulanPSL-2.0", + "multics": "Multics", + "mup": "Mup", + "naist2003": "NAIST-2003", + "naist2003.0": "NAIST-2003", + "naist2003.0.0": "NAIST-2003", + "nasa1": "NASA-1.3", + "nasa1.3": "NASA-1.3", + "nasa1.3.0": "NASA-1.3", + "naumen": "Naumen", + "nbpl1": "NBPL-1.0", + "nbpl1.0": "NBPL-1.0", + "nbpl1.0.0": "NBPL-1.0", + "ncgluk2": "NCGL-UK-2.0", + "ncgluk2.0": "NCGL-UK-2.0", + "ncgluk2.0.0": "NCGL-UK-2.0", + "ncsa": "NCSA", + "netcdf": "NetCDF", + "netsnmp": "Net-SNMP", + "newsletr": "Newsletr", + "ngpl": "NGPL", + "nicta1": "NICTA-1.0", + "nicta1.0": "NICTA-1.0", + "nicta1.0.0": "NICTA-1.0", + "nistpd": "NIST-PD", + "nistpdfallback": "NIST-PD-fallback", + "nlod1": "NLOD-1.0", + "nlod1.0": "NLOD-1.0", + "nlod1.0.0": "NLOD-1.0", + "nlod2": "NLOD-2.0", + "nlod2.0": "NLOD-2.0", + "nlod2.0.0": "NLOD-2.0", + "nlpl": "NLPL", + "nokia": "Nokia", + "nosl": "NOSL", + "noweb": "Noweb", + "npl1": "NPL-1.0", + "npl1.0": "NPL-1.0", + "npl1.0.0": "NPL-1.0", + "npl1.1": "NPL-1.1", + "npl1.1.0": "NPL-1.1", + "nposl3": "NPOSL-3.0", + "nposl3.0": "NPOSL-3.0", + "nposl3.0.0": "NPOSL-3.0", + "nrl": "NRL", + "ntp": "NTP", + "ntp0": "NTP-0", + "nunit": "Nunit", + "occtpl": "OCCT-PL", + "oclc2": "OCLC-2.0", + "oclc2.0": "OCLC-2.0", + "oclc2.0.0": "OCLC-2.0", + "odbl1": "ODbL-1.0", + "odbl1.0": "ODbL-1.0", + "odbl1.0.0": "ODbL-1.0", + "odcby1": "ODC-By-1.0", + "odcby1.0": "ODC-By-1.0", + "odcby1.0.0": "ODC-By-1.0", + "offis": "OFFIS", + "ofl1": "OFL-1.0", + "ofl1.0": "OFL-1.0", + "ofl1.0.0": "OFL-1.0", + "ofl1.0.0norfn": "OFL-1.0-no-RFN", + "ofl1.0.0rfn": "OFL-1.0-RFN", + "ofl1.0norfn": "OFL-1.0-no-RFN", + "ofl1.0rfn": "OFL-1.0-RFN", + "ofl1.1": "OFL-1.1", + "ofl1.1.0": "OFL-1.1", + "ofl1.1.0norfn": "OFL-1.1-no-RFN", + "ofl1.1.0rfn": "OFL-1.1-RFN", + "ofl1.1norfn": "OFL-1.1-no-RFN", + "ofl1.1rfn": "OFL-1.1-RFN", + "ofl1norfn": "OFL-1.0-no-RFN", + "ofl1rfn": "OFL-1.0-RFN", + "ogc1": "OGC-1.0", + "ogc1.0": "OGC-1.0", + "ogc1.0.0": "OGC-1.0", + "ogdltaiwan1": "OGDL-Taiwan-1.0", + "ogdltaiwan1.0": "OGDL-Taiwan-1.0", + "ogdltaiwan1.0.0": "OGDL-Taiwan-1.0", + "oglcanada2": "OGL-Canada-2.0", + "oglcanada2.0": "OGL-Canada-2.0", + "oglcanada2.0.0": "OGL-Canada-2.0", + "ogluk1": "OGL-UK-1.0", + "ogluk1.0": "OGL-UK-1.0", + "ogluk1.0.0": "OGL-UK-1.0", + "ogluk2": "OGL-UK-2.0", + "ogluk2.0": "OGL-UK-2.0", + "ogluk2.0.0": "OGL-UK-2.0", + "ogluk3": "OGL-UK-3.0", + "ogluk3.0": "OGL-UK-3.0", + "ogluk3.0.0": "OGL-UK-3.0", + "ogtsl": "OGTSL", + "oldap1": "OLDAP-1.1", + "oldap1.1": "OLDAP-1.1", + "oldap1.1.0": "OLDAP-1.1", + "oldap1.2": "OLDAP-1.2", + "oldap1.2.0": "OLDAP-1.2", + "oldap1.3": "OLDAP-1.3", + "oldap1.3.0": "OLDAP-1.3", + "oldap1.4": "OLDAP-1.4", + "oldap1.4.0": "OLDAP-1.4", + "oldap2": "OLDAP-2.0", + "oldap2.0": "OLDAP-2.0", + "oldap2.0.0": "OLDAP-2.0", + "oldap2.0.1": "OLDAP-2.0.1", + "oldap2.1": "OLDAP-2.1", + "oldap2.1.0": "OLDAP-2.1", + "oldap2.2": "OLDAP-2.2", + "oldap2.2.0": "OLDAP-2.2", + "oldap2.2.1": "OLDAP-2.2.1", + "oldap2.2.2": "OLDAP-2.2.2", + "oldap2.3": "OLDAP-2.3", + "oldap2.3.0": "OLDAP-2.3", + "oldap2.4": "OLDAP-2.4", + "oldap2.4.0": "OLDAP-2.4", + "oldap2.5": "OLDAP-2.5", + "oldap2.5.0": "OLDAP-2.5", + "oldap2.6": "OLDAP-2.6", + "oldap2.6.0": "OLDAP-2.6", + "oldap2.7": "OLDAP-2.7", + "oldap2.7.0": "OLDAP-2.7", + "oldap2.8": "OLDAP-2.8", + "oldap2.8.0": "OLDAP-2.8", + "oml": "OML", + "openpbs2": "OpenPBS-2.3", + "openpbs2.3": "OpenPBS-2.3", + "openpbs2.3.0": "OpenPBS-2.3", + "openssl": "OpenSSL", + "opl1": "OPL-1.0", + "opl1.0": "OPL-1.0", + "opl1.0.0": "OPL-1.0", + "opubl1": "OPUBL-1.0", + "opubl1.0": "OPUBL-1.0", + "opubl1.0.0": "OPUBL-1.0", + "osetpl2": "OSET-PL-2.1", + "osetpl2.1": "OSET-PL-2.1", + "osetpl2.1.0": "OSET-PL-2.1", + "osl1": "OSL-1.0", + "osl1.0": "OSL-1.0", + "osl1.0.0": "OSL-1.0", + "osl1.1": "OSL-1.1", + "osl1.1.0": "OSL-1.1", + "osl2": "OSL-2.0", + "osl2.0": "OSL-2.0", + "osl2.0.0": "OSL-2.0", + "osl2.1": "OSL-2.1", + "osl2.1.0": "OSL-2.1", + "osl3": "OSL-3.0", + "osl3.0": "OSL-3.0", + "osl3.0.0": "OSL-3.0", + "ouda1": "O-UDA-1.0", + "ouda1.0": "O-UDA-1.0", + "ouda1.0.0": "O-UDA-1.0", + "parity6": "Parity-6.0.0", + "parity6.0": "Parity-6.0.0", + "parity6.0.0": "Parity-6.0.0", + "parity7": "Parity-7.0.0", + "parity7.0": "Parity-7.0.0", + "parity7.0.0": "Parity-7.0.0", + "pddl1": "PDDL-1.0", + "pddl1.0": "PDDL-1.0", + "pddl1.0.0": "PDDL-1.0", + "php3": "PHP-3.0", + "php3.0": "PHP-3.0", + "php3.0.0": "PHP-3.0", + "php3.01": "PHP-3.01", + "php3.01.0": "PHP-3.01", + "plexus": "Plexus", + "polyformnoncommercial1": "PolyForm-Noncommercial-1.0.0", + "polyformnoncommercial1.0": "PolyForm-Noncommercial-1.0.0", + "polyformnoncommercial1.0.0": "PolyForm-Noncommercial-1.0.0", + "polyformsmallbusiness1": "PolyForm-Small-Business-1.0.0", + "polyformsmallbusiness1.0": "PolyForm-Small-Business-1.0.0", + "polyformsmallbusiness1.0.0": "PolyForm-Small-Business-1.0.0", + "postgresql": "PostgreSQL", + "psf2": "PSF-2.0", + "psf2.0": "PSF-2.0", + "psf2.0.0": "PSF-2.0", + "psfrag": "psfrag", + "psutils": "psutils", + "python2": "Python-2.0", + "python2.0": "Python-2.0", + "python2.0.0": "Python-2.0", + "python2.0.1": "Python-2.0.1", + "qhull": "Qhull", + "qpl1": "QPL-1.0", + "qpl1.0": "QPL-1.0", + "qpl1.0.0": "QPL-1.0", + "qpl1.0.0inria2004": "QPL-1.0-INRIA-2004", + "qpl1.0inria2004": "QPL-1.0-INRIA-2004", + "qpl1inria2004": "QPL-1.0-INRIA-2004", + "rdisc": "Rdisc", + "rhecos1": "RHeCos-1.1", + "rhecos1.1": "RHeCos-1.1", + "rhecos1.1.0": "RHeCos-1.1", + "rpl1": "RPL-1.1", + "rpl1.1": "RPL-1.1", + "rpl1.1.0": "RPL-1.1", + "rpl1.5": "RPL-1.5", + "rpl1.5.0": "RPL-1.5", + "rpsl1": "RPSL-1.0", + "rpsl1.0": "RPSL-1.0", + "rpsl1.0.0": "RPSL-1.0", + "rsamd": "RSA-MD", + "rscpl": "RSCPL", + "ruby": "Ruby", + "saxpath": "Saxpath", + "saxpd": "SAX-PD", + "scea": "SCEA", + "schemereport": "SchemeReport", + "sendmail": "Sendmail", + "sendmail8": "Sendmail-8.23", + "sendmail8.23": "Sendmail-8.23", + "sendmail8.23.0": "Sendmail-8.23", + "sgib1": "SGI-B-1.0", + "sgib1.0": "SGI-B-1.0", + "sgib1.0.0": "SGI-B-1.0", + "sgib1.1": "SGI-B-1.1", + "sgib1.1.0": "SGI-B-1.1", + "sgib2": "SGI-B-2.0", + "sgib2.0": "SGI-B-2.0", + "sgib2.0.0": "SGI-B-2.0", + "shl0.5": "SHL-0.5", + "shl0.5.0": "SHL-0.5", + "shl0.51": "SHL-0.51", + "shl0.51.0": "SHL-0.51", + "simpl2": "SimPL-2.0", + "simpl2.0": "SimPL-2.0", + "simpl2.0.0": "SimPL-2.0", + "sissl": "SISSL", + "sissl1": "SISSL-1.2", + "sissl1.2": "SISSL-1.2", + "sissl1.2.0": "SISSL-1.2", + "sleepycat": "Sleepycat", + "smlnj": "SMLNJ", + "smppl": "SMPPL", + "snia": "SNIA", + "snprintf": "snprintf", + "spencer86": "Spencer-86", + "spencer86.0": "Spencer-86", + "spencer86.0.0": "Spencer-86", + "spencer94": "Spencer-94", + "spencer94.0": "Spencer-94", + "spencer94.0.0": "Spencer-94", + "spencer99": "Spencer-99", + "spencer99.0": "Spencer-99", + "spencer99.0.0": "Spencer-99", + "spl1": "SPL-1.0", + "spl1.0": "SPL-1.0", + "spl1.0.0": "SPL-1.0", + "sshopenssh": "SSH-OpenSSH", + "sshshort": "SSH-short", + "sspl1": "SSPL-1.0", + "sspl1.0": "SSPL-1.0", + "sspl1.0.0": "SSPL-1.0", + "standardmlnj": "SMLNJ", + "sugarcrm1": "SugarCRM-1.1.3", + "sugarcrm1.1": "SugarCRM-1.1.3", + "sugarcrm1.1.3": "SugarCRM-1.1.3", + "sunpro": "SunPro", + "swl": "SWL", + "symlinks": "Symlinks", + "taprohl1": "TAPR-OHL-1.0", + "taprohl1.0": "TAPR-OHL-1.0", + "taprohl1.0.0": "TAPR-OHL-1.0", + "tcl": "TCL", + "tcpwrappers": "TCP-wrappers", + "tmate": "TMate", + "torque1": "TORQUE-1.1", + "torque1.1": "TORQUE-1.1", + "torque1.1.0": "TORQUE-1.1", + "tosl": "TOSL", + "tpdl": "TPDL", + "tpl1": "TPL-1.0", + "tpl1.0": "TPL-1.0", + "tpl1.0.0": "TPL-1.0", + "ttwl": "TTWL", + "tuberlin1": "TU-Berlin-1.0", + "tuberlin1.0": "TU-Berlin-1.0", + "tuberlin1.0.0": "TU-Berlin-1.0", + "tuberlin2": "TU-Berlin-2.0", + "tuberlin2.0": "TU-Berlin-2.0", + "tuberlin2.0.0": "TU-Berlin-2.0", + "ucar": "UCAR", + "ucl1": "UCL-1.0", + "ucl1.0": "UCL-1.0", + "ucl1.0.0": "UCL-1.0", + "unicodedfs2015": "Unicode-DFS-2015", + "unicodedfs2015.0": "Unicode-DFS-2015", + "unicodedfs2015.0.0": "Unicode-DFS-2015", + "unicodedfs2016": "Unicode-DFS-2016", + "unicodedfs2016.0": "Unicode-DFS-2016", + "unicodedfs2016.0.0": "Unicode-DFS-2016", + "unicodetou": "Unicode-TOU", + "unlicense": "Unlicense", + "upl1": "UPL-1.0", + "upl1.0": "UPL-1.0", + "upl1.0.0": "UPL-1.0", + "vim": "Vim", + "vostrom": "VOSTROM", + "vsl1": "VSL-1.0", + "vsl1.0": "VSL-1.0", + "vsl1.0.0": "VSL-1.0", + "w3.0.0c": "W3C", + "w3.0.0c19980720": "W3C-19980720", + "w3.0.0c20150513": "W3C-20150513", + "w3.0.0m": "w3m", + "w3.0c": "W3C", + "w3.0c19980720": "W3C-19980720", + "w3.0c20150513": "W3C-20150513", + "w3.0m": "w3m", + "w3c": "W3C", + "w3c19980720": "W3C-19980720", + "w3c20150513": "W3C-20150513", + "w3m": "w3m", + "watcom1": "Watcom-1.0", + "watcom1.0": "Watcom-1.0", + "watcom1.0.0": "Watcom-1.0", + "wsuipa": "Wsuipa", + "wtfpl": "WTFPL", + "wxwindows": "wxWindows", + "x11": "X11", + "x11.0": "X11", + "x11.0.0": "X11", + "x11.0.0distributemodificationsvariant": "X11-distribute-modifications-variant", + "x11.0distributemodificationsvariant": "X11-distribute-modifications-variant", + "x11distributemodificationsvariant": "X11-distribute-modifications-variant", + "xerox": "Xerox", + "xfree861": "XFree86-1.1", + "xfree861.1": "XFree86-1.1", + "xfree861.1.0": "XFree86-1.1", + "xinetd": "xinetd", + "xlock": "xlock", + "xnet": "Xnet", + "xpp": "xpp", + "xskat": "XSkat", + "ypl1": "YPL-1.0", + "ypl1.0": "YPL-1.0", + "ypl1.0.0": "YPL-1.0", + "ypl1.1": "YPL-1.1", + "ypl1.1.0": "YPL-1.1", + "zed": "Zed", + "zend2": "Zend-2.0", + "zend2.0": "Zend-2.0", + "zend2.0.0": "Zend-2.0", + "zimbra1": "Zimbra-1.3", + "zimbra1.3": "Zimbra-1.3", + "zimbra1.3.0": "Zimbra-1.3", + "zimbra1.4": "Zimbra-1.4", + "zimbra1.4.0": "Zimbra-1.4", + "zlib": "Zlib", + "zlibacknowledgement": "zlib-acknowledgement", + "zpl1": "ZPL-1.1", + "zpl1.1": "ZPL-1.1", + "zpl1.1.0": "ZPL-1.1", + "zpl2": "ZPL-2.0", + "zpl2.0": "ZPL-2.0", + "zpl2.0.0": "ZPL-2.0", + "zpl2.1": "ZPL-2.1", + "zpl2.1.0": "ZPL-2.1", }, }, } diff --git a/internal/spdxlicense/generate/license.go b/internal/spdxlicense/generate/license.go index e81fadbcf59..d61b1a6906b 100644 --- a/internal/spdxlicense/generate/license.go +++ b/internal/spdxlicense/generate/license.go @@ -20,71 +20,73 @@ type License struct { SeeAlso []string `json:"seeAlso"` } -func (l License) canReplace(other License) bool { +// findReplacementLicense returns a replacement license for a deprecated license +func (ll LicenseList) findReplacementLicense(deprecated License) *License { + for _, l := range ll.Licenses { + if l.canReplace(deprecated) { + return &l + } + } + + return nil +} + +func (l License) canReplace(deprecated License) bool { + // don't replace a license with a deprecated license if l.Deprecated { return false } // We want to replace deprecated licenses with non-deprecated counterparts // For more information, see: https://github.com/spdx/license-list-XML/issues/1676 - if other.Deprecated { - switch { - case strings.ReplaceAll(l.ID, "-only", "") == other.ID: - return true - case strings.ReplaceAll(l.ID, "-or-later", "+") == other.ID: - return true - case l.ID == "BSD-2-Clause" && other.ID == "BSD-2-Clause-NetBSD": - return true - case l.ID == "BSD-2-Clause-Views" && other.ID == "BSD-2-Clause-FreeBSD": - return true - case l.ID == "bzip2-1.0.6" && other.ID == "bzip2-1.0.5": - return true - case l.ID == "SMLNJ" && other.ID == "StandardML-NJ": - return true - } + switch { + case strings.ReplaceAll(l.ID, "-only", "") == deprecated.ID: + return true + case strings.ReplaceAll(l.ID, "-or-later", "+") == deprecated.ID: + return true + case l.ID == "BSD-2-Clause" && deprecated.ID == "BSD-2-Clause-NetBSD": + return true + case l.ID == "BSD-2-Clause-Views" && deprecated.ID == "BSD-2-Clause-FreeBSD": + return true + case l.ID == "bzip2-1.0.6" && deprecated.ID == "bzip2-1.0.5": + return true + case l.ID == "SMLNJ" && deprecated.ID == "StandardML-NJ": + return true } - if l.Name != other.Name { + if l.Name != deprecated.Name { return false } - if l.OSIApproved != other.OSIApproved { + if l.OSIApproved != deprecated.OSIApproved { return false } - if len(l.SeeAlso) != len(other.SeeAlso) { + if len(l.SeeAlso) != len(deprecated.SeeAlso) { return false } for i, sa := range l.SeeAlso { - if sa != other.SeeAlso[i] { + if sa != deprecated.SeeAlso[i] { return false } } - return l.ID == other.ID -} - -func (ll LicenseList) findReplacementLicense(deprecated License) *License { - for _, l := range ll.Licenses { - if l.canReplace(deprecated) { - return &l - } - } - - return nil + return l.ID == deprecated.ID } -func buildLicensePermutations(license string) (perms []string) { - lv := findLicenseVersion(license) +func buildLicenseIDPermutations(cleanID string) (perms []string) { + lv := findLicenseVersion(cleanID) vp := versionPermutations(lv) + permSet := strset.New() version := strings.Join(lv, ".") for _, p := range vp { - perms = append(perms, strings.Replace(license, version, p, 1)) + permSet.Add(strings.Replace(cleanID, version, p, 1)) } - return perms + permSet.Add(cleanID) + return permSet.List() } func findLicenseVersion(license string) (version []string) { diff --git a/internal/spdxlicense/generate/license_test.go b/internal/spdxlicense/generate/license_test.go index 02754630bbe..50a4dbacfcb 100644 --- a/internal/spdxlicense/generate/license_test.go +++ b/internal/spdxlicense/generate/license_test.go @@ -67,56 +67,57 @@ func TestLicensePermutations(t *testing.T) { { "GPL-1-only", []string{ - "GPL-1-only", - "GPL-1.0-only", - "GPL-1.0.0-only", + "gpl1only", + "gpl1.0only", + "gpl1.0.0only", }, }, { "GPL-2", []string{ - "GPL-2", - "GPL-2.0", - "GPL-2.0.0", + "gpl2", + "gpl2.0", + "gpl2.0.0", }, }, { "GPL-2.0+", []string{ - "GPL-2+", - "GPL-2.0+", - "GPL-2.0.0+", + "gpl2+", + "gpl2.0+", + "gpl2.0.0+", }, }, { "GPL-3.0.0-or-later", []string{ - "GPL-3-or-later", - "GPL-3.0-or-later", - "GPL-3.0.0-or-later", + "gpl3orlater", + "gpl3.0orlater", + "gpl3.0.0orlater", }, }, { "abc-1.1", []string{ - "abc-1", - "abc-1.1", - "abc-1.1.0", + "abc1", + "abc1.1", + "abc1.1.0", }, }, { "oldap-2.0", []string{ - "oldap-2", - "oldap-2.0", - "oldap-2.0.0", + "oldap2", + "oldap2.0", + "oldap2.0.0", }, }, } for _, test := range tests { t.Run(test.shortName, func(t *testing.T) { - perms := buildLicensePermutations(test.shortName) + cleanID := cleanLicenseID(test.shortName) + perms := buildLicenseIDPermutations(cleanID) assert.ElementsMatch(t, test.permutations, perms) }) } @@ -183,10 +184,6 @@ func TestFindLicenseVersion(t *testing.T) { "GPL-2", []string{"2"}, }, - { - "bzip2-1", - []string{"1"}, - }, { "php-3.01", []string{"3", "01"}, diff --git a/internal/spdxlicense/license.go b/internal/spdxlicense/license.go index 1f83034df41..d57f9ebe5e8 100644 --- a/internal/spdxlicense/license.go +++ b/internal/spdxlicense/license.go @@ -18,16 +18,20 @@ const ( //go:generate go run ./generate -func ID(id string) (value, other string, exists bool) { - id = strings.TrimSpace(id) - // ignore blank strings or the joiner - if id == "" || id == "AND" { - return "", "", false - } +// ID returns the canonical license ID for the given license ID +// Note: this function is only concerned with returning a best match of an SPDX license ID +// SPDX Expressions will be handled by a parent package which will call this function +func ID(id string) (value string, exists bool) { // first look for a canonical license - if value, exists := licenseIDs[strings.ToLower(id)]; exists { - return value, "", exists + if value, exists := licenseIDs[cleanLicenseID(id)]; exists { + return value, exists } // we did not find, so treat it as a separate license - return "", id, true + return "", false +} + +func cleanLicenseID(id string) string { + id = strings.TrimSpace(id) + id = strings.ToLower(id) + return strings.ReplaceAll(id, "-", "") } diff --git a/internal/spdxlicense/license_list.go b/internal/spdxlicense/license_list.go index 659e4587b7f..01513793762 100644 --- a/internal/spdxlicense/license_list.go +++ b/internal/spdxlicense/license_list.go @@ -1,1130 +1,1148 @@ // Code generated by go generate; DO NOT EDIT. -// This file was generated by robots at 2023-02-21 18:58:18.115328967 +0100 CET m=+0.216357753 +// This file was generated by robots at 2023-03-22 18:00:44.589388 -0400 EDT m=+0.160679640 // using data from https://spdx.org/licenses/licenses.json package spdxlicense const Version = "3.20" var licenseIDs = map[string]string{ - "0bsd": "0BSD", - "aal": "AAL", - "abstyles": "Abstyles", - "adacore-doc": "AdaCore-doc", - "adobe-2006": "Adobe-2006", - "adobe-2006.0": "Adobe-2006", - "adobe-2006.0.0": "Adobe-2006", - "adobe-glyph": "Adobe-Glyph", - "adsl": "ADSL", - "afl-1": "AFL-1.1", - "afl-1.1": "AFL-1.1", - "afl-1.1.0": "AFL-1.1", - "afl-1.2": "AFL-1.2", - "afl-1.2.0": "AFL-1.2", - "afl-2": "AFL-2.0", - "afl-2.0": "AFL-2.0", - "afl-2.0.0": "AFL-2.0", - "afl-2.1": "AFL-2.1", - "afl-2.1.0": "AFL-2.1", - "afl-3": "AFL-3.0", - "afl-3.0": "AFL-3.0", - "afl-3.0.0": "AFL-3.0", - "afmparse": "Afmparse", - "agpl-1": "AGPL-1.0-only", - "agpl-1-only": "AGPL-1.0-only", - "agpl-1-or-later": "AGPL-1.0-or-later", - "agpl-1.0": "AGPL-1.0-only", - "agpl-1.0-only": "AGPL-1.0-only", - "agpl-1.0-or-later": "AGPL-1.0-or-later", - "agpl-1.0.0": "AGPL-1.0-only", - "agpl-1.0.0-only": "AGPL-1.0-only", - "agpl-1.0.0-or-later": "AGPL-1.0-or-later", - "agpl-3": "AGPL-3.0-only", - "agpl-3-only": "AGPL-3.0-only", - "agpl-3-or-later": "AGPL-3.0-or-later", - "agpl-3.0": "AGPL-3.0-only", - "agpl-3.0-only": "AGPL-3.0-only", - "agpl-3.0-or-later": "AGPL-3.0-or-later", - "agpl-3.0.0": "AGPL-3.0-only", - "agpl-3.0.0-only": "AGPL-3.0-only", - "agpl-3.0.0-or-later": "AGPL-3.0-or-later", - "aladdin": "Aladdin", - "amdplpa": "AMDPLPA", - "aml": "AML", - "ampas": "AMPAS", - "antlr-pd": "ANTLR-PD", - "antlr-pd-fallback": "ANTLR-PD-fallback", - "apache-1": "Apache-1.0", - "apache-1.0": "Apache-1.0", - "apache-1.0.0": "Apache-1.0", - "apache-1.1": "Apache-1.1", - "apache-1.1.0": "Apache-1.1", - "apache-2": "Apache-2.0", - "apache-2.0": "Apache-2.0", - "apache-2.0.0": "Apache-2.0", - "apafml": "APAFML", - "apl-1": "APL-1.0", - "apl-1.0": "APL-1.0", - "apl-1.0.0": "APL-1.0", - "app-s2p": "App-s2p", - "apsl-1": "APSL-1.0", - "apsl-1.0": "APSL-1.0", - "apsl-1.0.0": "APSL-1.0", - "apsl-1.1": "APSL-1.1", - "apsl-1.1.0": "APSL-1.1", - "apsl-1.2": "APSL-1.2", - "apsl-1.2.0": "APSL-1.2", - "apsl-2": "APSL-2.0", - "apsl-2.0": "APSL-2.0", - "apsl-2.0.0": "APSL-2.0", - "arphic-1999": "Arphic-1999", - "arphic-1999.0": "Arphic-1999", - "arphic-1999.0.0": "Arphic-1999", - "artistic-1": "Artistic-1.0", - "artistic-1-cl8": "Artistic-1.0-cl8", - "artistic-1-perl": "Artistic-1.0-Perl", - "artistic-1.0": "Artistic-1.0", - "artistic-1.0-cl8": "Artistic-1.0-cl8", - "artistic-1.0-perl": "Artistic-1.0-Perl", - "artistic-1.0.0": "Artistic-1.0", - "artistic-1.0.0-cl8": "Artistic-1.0-cl8", - "artistic-1.0.0-perl": "Artistic-1.0-Perl", - "artistic-2": "Artistic-2.0", - "artistic-2.0": "Artistic-2.0", - "artistic-2.0.0": "Artistic-2.0", - "baekmuk": "Baekmuk", - "bahyph": "Bahyph", - "barr": "Barr", - "beerware": "Beerware", - "bitstream-charter": "Bitstream-Charter", - "bitstream-vera": "Bitstream-Vera", - "bittorrent-1": "BitTorrent-1.0", - "bittorrent-1.0": "BitTorrent-1.0", - "bittorrent-1.0.0": "BitTorrent-1.0", - "bittorrent-1.1": "BitTorrent-1.1", - "bittorrent-1.1.0": "BitTorrent-1.1", - "blessing": "blessing", - "blueoak-1": "BlueOak-1.0.0", - "blueoak-1.0": "BlueOak-1.0.0", - "blueoak-1.0.0": "BlueOak-1.0.0", - "borceux": "Borceux", - "brian-gladman-3-clause": "Brian-Gladman-3-Clause", - "brian-gladman-3.0-clause": "Brian-Gladman-3-Clause", - "brian-gladman-3.0.0-clause": "Brian-Gladman-3-Clause", - "bsd-1-clause": "BSD-1-Clause", - "bsd-1.0-clause": "BSD-1-Clause", - "bsd-1.0.0-clause": "BSD-1-Clause", - "bsd-2-clause": "BSD-2-Clause", - "bsd-2-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2-clause-netbsd": "BSD-2-Clause", - "bsd-2-clause-patent": "BSD-2-Clause-Patent", - "bsd-2-clause-views": "BSD-2-Clause-Views", - "bsd-2.0-clause": "BSD-2-Clause", - "bsd-2.0-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2.0-clause-netbsd": "BSD-2-Clause", - "bsd-2.0-clause-patent": "BSD-2-Clause-Patent", - "bsd-2.0-clause-views": "BSD-2-Clause-Views", - "bsd-2.0.0-clause": "BSD-2-Clause", - "bsd-2.0.0-clause-freebsd": "BSD-2-Clause-Views", - "bsd-2.0.0-clause-netbsd": "BSD-2-Clause", - "bsd-2.0.0-clause-patent": "BSD-2-Clause-Patent", - "bsd-2.0.0-clause-views": "BSD-2-Clause-Views", - "bsd-3-clause": "BSD-3-Clause", - "bsd-3-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3-clause-clear": "BSD-3-Clause-Clear", - "bsd-3-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3-clause-modification": "BSD-3-Clause-Modification", - "bsd-3-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-3.0-clause": "BSD-3-Clause", - "bsd-3.0-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3.0-clause-clear": "BSD-3-Clause-Clear", - "bsd-3.0-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3.0-clause-modification": "BSD-3-Clause-Modification", - "bsd-3.0-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3.0-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3.0-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3.0-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3.0-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-3.0.0-clause": "BSD-3-Clause", - "bsd-3.0.0-clause-attribution": "BSD-3-Clause-Attribution", - "bsd-3.0.0-clause-clear": "BSD-3-Clause-Clear", - "bsd-3.0.0-clause-lbnl": "BSD-3-Clause-LBNL", - "bsd-3.0.0-clause-modification": "BSD-3-Clause-Modification", - "bsd-3.0.0-clause-no-military-license": "BSD-3-Clause-No-Military-License", - "bsd-3.0.0-clause-no-nuclear-license": "BSD-3-Clause-No-Nuclear-License", - "bsd-3.0.0-clause-no-nuclear-license-2014": "BSD-3-Clause-No-Nuclear-License-2014", - "bsd-3.0.0-clause-no-nuclear-warranty": "BSD-3-Clause-No-Nuclear-Warranty", - "bsd-3.0.0-clause-open-mpi": "BSD-3-Clause-Open-MPI", - "bsd-4-clause": "BSD-4-Clause", - "bsd-4-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4-clause-uc": "BSD-4-Clause-UC", - "bsd-4.0-clause": "BSD-4-Clause", - "bsd-4.0-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4.0-clause-uc": "BSD-4-Clause-UC", - "bsd-4.0.0-clause": "BSD-4-Clause", - "bsd-4.0.0-clause-shortened": "BSD-4-Clause-Shortened", - "bsd-4.0.0-clause-uc": "BSD-4-Clause-UC", - "bsd-4.3.0reno": "BSD-4.3RENO", - "bsd-4.3.0tahoe": "BSD-4.3TAHOE", - "bsd-4.3reno": "BSD-4.3RENO", - "bsd-4.3tahoe": "BSD-4.3TAHOE", - "bsd-4reno": "BSD-4.3RENO", - "bsd-4tahoe": "BSD-4.3TAHOE", - "bsd-advertising-acknowledgement": "BSD-Advertising-Acknowledgement", - "bsd-attribution-hpnd-disclaimer": "BSD-Attribution-HPND-disclaimer", - "bsd-protection": "BSD-Protection", - "bsd-source-code": "BSD-Source-Code", - "bsl-1": "BSL-1.0", - "bsl-1.0": "BSL-1.0", - "bsl-1.0.0": "BSL-1.0", - "busl-1": "BUSL-1.1", - "busl-1.1": "BUSL-1.1", - "busl-1.1.0": "BUSL-1.1", - "bzip2-1": "bzip2-1.0.6", - "bzip2-1.0": "bzip2-1.0.6", - "bzip2-1.0.5": "bzip2-1.0.6", - "bzip2-1.0.6": "bzip2-1.0.6", - "c-uda-1": "C-UDA-1.0", - "c-uda-1.0": "C-UDA-1.0", - "c-uda-1.0.0": "C-UDA-1.0", - "cal-1": "CAL-1.0", - "cal-1-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "cal-1.0": "CAL-1.0", - "cal-1.0-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "cal-1.0.0": "CAL-1.0", - "cal-1.0.0-combined-work-exception": "CAL-1.0-Combined-Work-Exception", - "caldera": "Caldera", - "catosl-1": "CATOSL-1.1", - "catosl-1.1": "CATOSL-1.1", - "catosl-1.1.0": "CATOSL-1.1", - "cc-by-1": "CC-BY-1.0", - "cc-by-1.0": "CC-BY-1.0", - "cc-by-1.0.0": "CC-BY-1.0", - "cc-by-2": "CC-BY-2.0", - "cc-by-2-au": "CC-BY-2.5-AU", - "cc-by-2.0": "CC-BY-2.0", - "cc-by-2.0.0": "CC-BY-2.0", - "cc-by-2.5": "CC-BY-2.5", - "cc-by-2.5-au": "CC-BY-2.5-AU", - "cc-by-2.5.0": "CC-BY-2.5", - "cc-by-2.5.0-au": "CC-BY-2.5-AU", - "cc-by-3": "CC-BY-3.0", - "cc-by-3-at": "CC-BY-3.0-AT", - "cc-by-3-de": "CC-BY-3.0-DE", - "cc-by-3-igo": "CC-BY-3.0-IGO", - "cc-by-3-nl": "CC-BY-3.0-NL", - "cc-by-3-us": "CC-BY-3.0-US", - "cc-by-3.0": "CC-BY-3.0", - "cc-by-3.0-at": "CC-BY-3.0-AT", - "cc-by-3.0-de": "CC-BY-3.0-DE", - "cc-by-3.0-igo": "CC-BY-3.0-IGO", - "cc-by-3.0-nl": "CC-BY-3.0-NL", - "cc-by-3.0-us": "CC-BY-3.0-US", - "cc-by-3.0.0": "CC-BY-3.0", - "cc-by-3.0.0-at": "CC-BY-3.0-AT", - "cc-by-3.0.0-de": "CC-BY-3.0-DE", - "cc-by-3.0.0-igo": "CC-BY-3.0-IGO", - "cc-by-3.0.0-nl": "CC-BY-3.0-NL", - "cc-by-3.0.0-us": "CC-BY-3.0-US", - "cc-by-4": "CC-BY-4.0", - "cc-by-4.0": "CC-BY-4.0", - "cc-by-4.0.0": "CC-BY-4.0", - "cc-by-nc-1": "CC-BY-NC-1.0", - "cc-by-nc-1.0": "CC-BY-NC-1.0", - "cc-by-nc-1.0.0": "CC-BY-NC-1.0", - "cc-by-nc-2": "CC-BY-NC-2.0", - "cc-by-nc-2.0": "CC-BY-NC-2.0", - "cc-by-nc-2.0.0": "CC-BY-NC-2.0", - "cc-by-nc-2.5": "CC-BY-NC-2.5", - "cc-by-nc-2.5.0": "CC-BY-NC-2.5", - "cc-by-nc-3": "CC-BY-NC-3.0", - "cc-by-nc-3-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-3.0": "CC-BY-NC-3.0", - "cc-by-nc-3.0-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-3.0.0": "CC-BY-NC-3.0", - "cc-by-nc-3.0.0-de": "CC-BY-NC-3.0-DE", - "cc-by-nc-4": "CC-BY-NC-4.0", - "cc-by-nc-4.0": "CC-BY-NC-4.0", - "cc-by-nc-4.0.0": "CC-BY-NC-4.0", - "cc-by-nc-nd-1": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-1.0": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-1.0.0": "CC-BY-NC-ND-1.0", - "cc-by-nc-nd-2": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.0": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.0.0": "CC-BY-NC-ND-2.0", - "cc-by-nc-nd-2.5": "CC-BY-NC-ND-2.5", - "cc-by-nc-nd-2.5.0": "CC-BY-NC-ND-2.5", - "cc-by-nc-nd-3": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-3.0": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3.0-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3.0-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-3.0.0": "CC-BY-NC-ND-3.0", - "cc-by-nc-nd-3.0.0-de": "CC-BY-NC-ND-3.0-DE", - "cc-by-nc-nd-3.0.0-igo": "CC-BY-NC-ND-3.0-IGO", - "cc-by-nc-nd-4": "CC-BY-NC-ND-4.0", - "cc-by-nc-nd-4.0": "CC-BY-NC-ND-4.0", - "cc-by-nc-nd-4.0.0": "CC-BY-NC-ND-4.0", - "cc-by-nc-sa-1": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-1.0": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-1.0.0": "CC-BY-NC-SA-1.0", - "cc-by-nc-sa-2": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.0": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2.0-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2.0-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2.0-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.0.0": "CC-BY-NC-SA-2.0", - "cc-by-nc-sa-2.0.0-de": "CC-BY-NC-SA-2.0-DE", - "cc-by-nc-sa-2.0.0-fr": "CC-BY-NC-SA-2.0-FR", - "cc-by-nc-sa-2.0.0-uk": "CC-BY-NC-SA-2.0-UK", - "cc-by-nc-sa-2.5": "CC-BY-NC-SA-2.5", - "cc-by-nc-sa-2.5.0": "CC-BY-NC-SA-2.5", - "cc-by-nc-sa-3": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-3.0": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3.0-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3.0-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-3.0.0": "CC-BY-NC-SA-3.0", - "cc-by-nc-sa-3.0.0-de": "CC-BY-NC-SA-3.0-DE", - "cc-by-nc-sa-3.0.0-igo": "CC-BY-NC-SA-3.0-IGO", - "cc-by-nc-sa-4": "CC-BY-NC-SA-4.0", - "cc-by-nc-sa-4.0": "CC-BY-NC-SA-4.0", - "cc-by-nc-sa-4.0.0": "CC-BY-NC-SA-4.0", - "cc-by-nd-1": "CC-BY-ND-1.0", - "cc-by-nd-1.0": "CC-BY-ND-1.0", - "cc-by-nd-1.0.0": "CC-BY-ND-1.0", - "cc-by-nd-2": "CC-BY-ND-2.0", - "cc-by-nd-2.0": "CC-BY-ND-2.0", - "cc-by-nd-2.0.0": "CC-BY-ND-2.0", - "cc-by-nd-2.5": "CC-BY-ND-2.5", - "cc-by-nd-2.5.0": "CC-BY-ND-2.5", - "cc-by-nd-3": "CC-BY-ND-3.0", - "cc-by-nd-3-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-3.0": "CC-BY-ND-3.0", - "cc-by-nd-3.0-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-3.0.0": "CC-BY-ND-3.0", - "cc-by-nd-3.0.0-de": "CC-BY-ND-3.0-DE", - "cc-by-nd-4": "CC-BY-ND-4.0", - "cc-by-nd-4.0": "CC-BY-ND-4.0", - "cc-by-nd-4.0.0": "CC-BY-ND-4.0", - "cc-by-sa-1": "CC-BY-SA-1.0", - "cc-by-sa-1.0": "CC-BY-SA-1.0", - "cc-by-sa-1.0.0": "CC-BY-SA-1.0", - "cc-by-sa-2": "CC-BY-SA-2.0", - "cc-by-sa-2-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.0": "CC-BY-SA-2.0", - "cc-by-sa-2.0-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.0.0": "CC-BY-SA-2.0", - "cc-by-sa-2.0.0-uk": "CC-BY-SA-2.0-UK", - "cc-by-sa-2.1-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2.1.0-jp": "CC-BY-SA-2.1-JP", - "cc-by-sa-2.5": "CC-BY-SA-2.5", - "cc-by-sa-2.5.0": "CC-BY-SA-2.5", - "cc-by-sa-3": "CC-BY-SA-3.0", - "cc-by-sa-3-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-3.0": "CC-BY-SA-3.0", - "cc-by-sa-3.0-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3.0-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-3.0.0": "CC-BY-SA-3.0", - "cc-by-sa-3.0.0-at": "CC-BY-SA-3.0-AT", - "cc-by-sa-3.0.0-de": "CC-BY-SA-3.0-DE", - "cc-by-sa-4": "CC-BY-SA-4.0", - "cc-by-sa-4.0": "CC-BY-SA-4.0", - "cc-by-sa-4.0.0": "CC-BY-SA-4.0", - "cc-pddc": "CC-PDDC", - "cc0-1": "CC0-1.0", - "cc0-1.0": "CC0-1.0", - "cc0-1.0.0": "CC0-1.0", - "cddl-1": "CDDL-1.0", - "cddl-1.0": "CDDL-1.0", - "cddl-1.0.0": "CDDL-1.0", - "cddl-1.1": "CDDL-1.1", - "cddl-1.1.0": "CDDL-1.1", - "cdl-1": "CDL-1.0", - "cdl-1.0": "CDL-1.0", - "cdl-1.0.0": "CDL-1.0", - "cdla-permissive-1": "CDLA-Permissive-1.0", - "cdla-permissive-1.0": "CDLA-Permissive-1.0", - "cdla-permissive-1.0.0": "CDLA-Permissive-1.0", - "cdla-permissive-2": "CDLA-Permissive-2.0", - "cdla-permissive-2.0": "CDLA-Permissive-2.0", - "cdla-permissive-2.0.0": "CDLA-Permissive-2.0", - "cdla-sharing-1": "CDLA-Sharing-1.0", - "cdla-sharing-1.0": "CDLA-Sharing-1.0", - "cdla-sharing-1.0.0": "CDLA-Sharing-1.0", - "cecill-1": "CECILL-1.0", - "cecill-1.0": "CECILL-1.0", - "cecill-1.0.0": "CECILL-1.0", - "cecill-1.1": "CECILL-1.1", - "cecill-1.1.0": "CECILL-1.1", - "cecill-2": "CECILL-2.0", - "cecill-2.0": "CECILL-2.0", - "cecill-2.0.0": "CECILL-2.0", - "cecill-2.1": "CECILL-2.1", - "cecill-2.1.0": "CECILL-2.1", - "cecill-b": "CECILL-B", - "cecill-c": "CECILL-C", - "cern-ohl-1": "CERN-OHL-1.1", - "cern-ohl-1.1": "CERN-OHL-1.1", - "cern-ohl-1.1.0": "CERN-OHL-1.1", - "cern-ohl-1.2": "CERN-OHL-1.2", - "cern-ohl-1.2.0": "CERN-OHL-1.2", - "cern-ohl-p-2": "CERN-OHL-P-2.0", - "cern-ohl-p-2.0": "CERN-OHL-P-2.0", - "cern-ohl-p-2.0.0": "CERN-OHL-P-2.0", - "cern-ohl-s-2": "CERN-OHL-S-2.0", - "cern-ohl-s-2.0": "CERN-OHL-S-2.0", - "cern-ohl-s-2.0.0": "CERN-OHL-S-2.0", - "cern-ohl-w-2": "CERN-OHL-W-2.0", - "cern-ohl-w-2.0": "CERN-OHL-W-2.0", - "cern-ohl-w-2.0.0": "CERN-OHL-W-2.0", - "cfitsio": "CFITSIO", - "checkmk": "checkmk", - "clartistic": "ClArtistic", - "clips": "Clips", - "cmu-mach": "CMU-Mach", - "cnri-jython": "CNRI-Jython", - "cnri-python": "CNRI-Python", - "cnri-python-gpl-compatible": "CNRI-Python-GPL-Compatible", - "coil-1": "COIL-1.0", - "coil-1.0": "COIL-1.0", - "coil-1.0.0": "COIL-1.0", - "community-spec-1": "Community-Spec-1.0", - "community-spec-1.0": "Community-Spec-1.0", - "community-spec-1.0.0": "Community-Spec-1.0", - "condor-1": "Condor-1.1", - "condor-1.1": "Condor-1.1", - "condor-1.1.0": "Condor-1.1", - "copyleft-next-0.3": "copyleft-next-0.3.0", - "copyleft-next-0.3.0": "copyleft-next-0.3.0", - "copyleft-next-0.3.1": "copyleft-next-0.3.1", - "cornell-lossless-jpeg": "Cornell-Lossless-JPEG", - "cpal-1": "CPAL-1.0", - "cpal-1.0": "CPAL-1.0", - "cpal-1.0.0": "CPAL-1.0", - "cpl-1": "CPL-1.0", - "cpl-1.0": "CPL-1.0", - "cpl-1.0.0": "CPL-1.0", - "cpol-1": "CPOL-1.02", - "cpol-1.02": "CPOL-1.02", - "cpol-1.02.0": "CPOL-1.02", - "crossword": "Crossword", - "crystalstacker": "CrystalStacker", - "cua-opl-1": "CUA-OPL-1.0", - "cua-opl-1.0": "CUA-OPL-1.0", - "cua-opl-1.0.0": "CUA-OPL-1.0", - "cube": "Cube", - "curl": "curl", - "d-fsl-1": "D-FSL-1.0", - "d-fsl-1.0": "D-FSL-1.0", - "d-fsl-1.0.0": "D-FSL-1.0", - "diffmark": "diffmark", - "dl-de-by-2": "DL-DE-BY-2.0", - "dl-de-by-2.0": "DL-DE-BY-2.0", - "dl-de-by-2.0.0": "DL-DE-BY-2.0", - "doc": "DOC", - "dotseqn": "Dotseqn", - "drl-1": "DRL-1.0", - "drl-1.0": "DRL-1.0", - "drl-1.0.0": "DRL-1.0", - "dsdp": "DSDP", - "dvipdfm": "dvipdfm", - "ecl-1": "ECL-1.0", - "ecl-1.0": "ECL-1.0", - "ecl-1.0.0": "ECL-1.0", - "ecl-2": "ECL-2.0", - "ecl-2.0": "ECL-2.0", - "ecl-2.0.0": "ECL-2.0", - "ecos-2": "eCos-2.0", - "ecos-2.0": "eCos-2.0", - "ecos-2.0.0": "eCos-2.0", - "efl-1": "EFL-1.0", - "efl-1.0": "EFL-1.0", - "efl-1.0.0": "EFL-1.0", - "efl-2": "EFL-2.0", - "efl-2.0": "EFL-2.0", - "efl-2.0.0": "EFL-2.0", - "egenix": "eGenix", - "elastic-2": "Elastic-2.0", - "elastic-2.0": "Elastic-2.0", - "elastic-2.0.0": "Elastic-2.0", - "entessa": "Entessa", - "epics": "EPICS", - "epl-1": "EPL-1.0", - "epl-1.0": "EPL-1.0", - "epl-1.0.0": "EPL-1.0", - "epl-2": "EPL-2.0", - "epl-2.0": "EPL-2.0", - "epl-2.0.0": "EPL-2.0", - "erlpl-1": "ErlPL-1.1", - "erlpl-1.1": "ErlPL-1.1", - "erlpl-1.1.0": "ErlPL-1.1", - "etalab-2": "etalab-2.0", - "etalab-2.0": "etalab-2.0", - "etalab-2.0.0": "etalab-2.0", - "eudatagrid": "EUDatagrid", - "eupl-1": "EUPL-1.0", - "eupl-1.0": "EUPL-1.0", - "eupl-1.0.0": "EUPL-1.0", - "eupl-1.1": "EUPL-1.1", - "eupl-1.1.0": "EUPL-1.1", - "eupl-1.2": "EUPL-1.2", - "eupl-1.2.0": "EUPL-1.2", - "eurosym": "Eurosym", - "fair": "Fair", - "fdk-aac": "FDK-AAC", - "frameworx-1": "Frameworx-1.0", - "frameworx-1.0": "Frameworx-1.0", - "frameworx-1.0.0": "Frameworx-1.0", - "freebsd-doc": "FreeBSD-DOC", - "freeimage": "FreeImage", - "fsfap": "FSFAP", - "fsful": "FSFUL", - "fsfullr": "FSFULLR", - "fsfullrwd": "FSFULLRWD", - "ftl": "FTL", - "gd": "GD", - "gfdl-1": "GFDL-1.1-only", - "gfdl-1-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1-only": "GFDL-1.1-only", - "gfdl-1-or-later": "GFDL-1.1-or-later", - "gfdl-1.1": "GFDL-1.1-only", - "gfdl-1.1-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1.1-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1.1-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1.1-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1.1-only": "GFDL-1.1-only", - "gfdl-1.1-or-later": "GFDL-1.1-or-later", - "gfdl-1.1.0": "GFDL-1.1-only", - "gfdl-1.1.0-invariants-only": "GFDL-1.1-invariants-only", - "gfdl-1.1.0-invariants-or-later": "GFDL-1.1-invariants-or-later", - "gfdl-1.1.0-no-invariants-only": "GFDL-1.1-no-invariants-only", - "gfdl-1.1.0-no-invariants-or-later": "GFDL-1.1-no-invariants-or-later", - "gfdl-1.1.0-only": "GFDL-1.1-only", - "gfdl-1.1.0-or-later": "GFDL-1.1-or-later", - "gfdl-1.2": "GFDL-1.2-only", - "gfdl-1.2-invariants-only": "GFDL-1.2-invariants-only", - "gfdl-1.2-invariants-or-later": "GFDL-1.2-invariants-or-later", - "gfdl-1.2-no-invariants-only": "GFDL-1.2-no-invariants-only", - "gfdl-1.2-no-invariants-or-later": "GFDL-1.2-no-invariants-or-later", - "gfdl-1.2-only": "GFDL-1.2-only", - "gfdl-1.2-or-later": "GFDL-1.2-or-later", - "gfdl-1.2.0": "GFDL-1.2-only", - "gfdl-1.2.0-invariants-only": "GFDL-1.2-invariants-only", - "gfdl-1.2.0-invariants-or-later": "GFDL-1.2-invariants-or-later", - "gfdl-1.2.0-no-invariants-only": "GFDL-1.2-no-invariants-only", - "gfdl-1.2.0-no-invariants-or-later": "GFDL-1.2-no-invariants-or-later", - "gfdl-1.2.0-only": "GFDL-1.2-only", - "gfdl-1.2.0-or-later": "GFDL-1.2-or-later", - "gfdl-1.3": "GFDL-1.3-only", - "gfdl-1.3-invariants-only": "GFDL-1.3-invariants-only", - "gfdl-1.3-invariants-or-later": "GFDL-1.3-invariants-or-later", - "gfdl-1.3-no-invariants-only": "GFDL-1.3-no-invariants-only", - "gfdl-1.3-no-invariants-or-later": "GFDL-1.3-no-invariants-or-later", - "gfdl-1.3-only": "GFDL-1.3-only", - "gfdl-1.3-or-later": "GFDL-1.3-or-later", - "gfdl-1.3.0": "GFDL-1.3-only", - "gfdl-1.3.0-invariants-only": "GFDL-1.3-invariants-only", - "gfdl-1.3.0-invariants-or-later": "GFDL-1.3-invariants-or-later", - "gfdl-1.3.0-no-invariants-only": "GFDL-1.3-no-invariants-only", - "gfdl-1.3.0-no-invariants-or-later": "GFDL-1.3-no-invariants-or-later", - "gfdl-1.3.0-only": "GFDL-1.3-only", - "gfdl-1.3.0-or-later": "GFDL-1.3-or-later", - "giftware": "Giftware", - "gl2ps": "GL2PS", - "glide": "Glide", - "glulxe": "Glulxe", - "glwtpl": "GLWTPL", - "gnuplot": "gnuplot", - "gpl-1": "GPL-1.0-only", - "gpl-1+": "GPL-1.0-or-later", - "gpl-1-only": "GPL-1.0-only", - "gpl-1-or-later": "GPL-1.0-or-later", - "gpl-1.0": "GPL-1.0-only", - "gpl-1.0+": "GPL-1.0-or-later", - "gpl-1.0-only": "GPL-1.0-only", - "gpl-1.0-or-later": "GPL-1.0-or-later", - "gpl-1.0.0": "GPL-1.0-only", - "gpl-1.0.0+": "GPL-1.0-or-later", - "gpl-1.0.0-only": "GPL-1.0-only", - "gpl-1.0.0-or-later": "GPL-1.0-or-later", - "gpl-2": "GPL-2.0-only", - "gpl-2+": "GPL-2.0-or-later", - "gpl-2-only": "GPL-2.0-only", - "gpl-2-or-later": "GPL-2.0-or-later", - "gpl-2-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-2.0": "GPL-2.0-only", - "gpl-2.0+": "GPL-2.0-or-later", - "gpl-2.0-only": "GPL-2.0-only", - "gpl-2.0-or-later": "GPL-2.0-or-later", - "gpl-2.0-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2.0-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2.0-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2.0-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2.0-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-2.0.0": "GPL-2.0-only", - "gpl-2.0.0+": "GPL-2.0-or-later", - "gpl-2.0.0-only": "GPL-2.0-only", - "gpl-2.0.0-or-later": "GPL-2.0-or-later", - "gpl-2.0.0-with-autoconf-exception": "GPL-2.0-with-autoconf-exception", - "gpl-2.0.0-with-bison-exception": "GPL-2.0-with-bison-exception", - "gpl-2.0.0-with-classpath-exception": "GPL-2.0-with-classpath-exception", - "gpl-2.0.0-with-font-exception": "GPL-2.0-with-font-exception", - "gpl-2.0.0-with-gcc-exception": "GPL-2.0-with-GCC-exception", - "gpl-3": "GPL-3.0-only", - "gpl-3+": "GPL-3.0-or-later", - "gpl-3-only": "GPL-3.0-only", - "gpl-3-or-later": "GPL-3.0-or-later", - "gpl-3-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "gpl-3.0": "GPL-3.0-only", - "gpl-3.0+": "GPL-3.0-or-later", - "gpl-3.0-only": "GPL-3.0-only", - "gpl-3.0-or-later": "GPL-3.0-or-later", - "gpl-3.0-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3.0-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "gpl-3.0.0": "GPL-3.0-only", - "gpl-3.0.0+": "GPL-3.0-or-later", - "gpl-3.0.0-only": "GPL-3.0-only", - "gpl-3.0.0-or-later": "GPL-3.0-or-later", - "gpl-3.0.0-with-autoconf-exception": "GPL-3.0-with-autoconf-exception", - "gpl-3.0.0-with-gcc-exception": "GPL-3.0-with-GCC-exception", - "graphics-gems": "Graphics-Gems", - "gsoap-1.3.0b": "gSOAP-1.3b", - "gsoap-1.3b": "gSOAP-1.3b", - "gsoap-1b": "gSOAP-1.3b", - "haskellreport": "HaskellReport", - "hippocratic-2": "Hippocratic-2.1", - "hippocratic-2.1": "Hippocratic-2.1", - "hippocratic-2.1.0": "Hippocratic-2.1", - "hp-1986": "HP-1986", - "hp-1986.0": "HP-1986", - "hp-1986.0.0": "HP-1986", - "hpnd": "HPND", - "hpnd-export-us": "HPND-export-US", - "hpnd-markus-kuhn": "HPND-Markus-Kuhn", - "hpnd-sell-variant": "HPND-sell-variant", - "hpnd-sell-variant-mit-disclaimer": "HPND-sell-variant-MIT-disclaimer", - "htmltidy": "HTMLTIDY", - "ibm-pibs": "IBM-pibs", - "icu": "ICU", - "iec-code-components-eula": "IEC-Code-Components-EULA", - "ijg": "IJG", - "ijg-short": "IJG-short", - "imagemagick": "ImageMagick", - "imatix": "iMatix", - "imlib2": "Imlib2", - "info-zip": "Info-ZIP", - "intel": "Intel", - "intel-acpi": "Intel-ACPI", - "interbase-1": "Interbase-1.0", - "interbase-1.0": "Interbase-1.0", - "interbase-1.0.0": "Interbase-1.0", - "ipa": "IPA", - "ipl-1": "IPL-1.0", - "ipl-1.0": "IPL-1.0", - "ipl-1.0.0": "IPL-1.0", - "isc": "ISC", - "jam": "Jam", - "jasper-2": "JasPer-2.0", - "jasper-2.0": "JasPer-2.0", - "jasper-2.0.0": "JasPer-2.0", - "jpl-image": "JPL-image", - "jpnic": "JPNIC", - "json": "JSON", - "kazlib": "Kazlib", - "knuth-ctan": "Knuth-CTAN", - "lal-1": "LAL-1.2", - "lal-1.2": "LAL-1.2", - "lal-1.2.0": "LAL-1.2", - "lal-1.3": "LAL-1.3", - "lal-1.3.0": "LAL-1.3", - "latex2e": "Latex2e", - "leptonica": "Leptonica", - "lgpl-2": "LGPL-2.0-only", - "lgpl-2+": "LGPL-2.0-or-later", - "lgpl-2-only": "LGPL-2.0-only", - "lgpl-2-or-later": "LGPL-2.0-or-later", - "lgpl-2.0": "LGPL-2.0-only", - "lgpl-2.0+": "LGPL-2.0-or-later", - "lgpl-2.0-only": "LGPL-2.0-only", - "lgpl-2.0-or-later": "LGPL-2.0-or-later", - "lgpl-2.0.0": "LGPL-2.0-only", - "lgpl-2.0.0+": "LGPL-2.0-or-later", - "lgpl-2.0.0-only": "LGPL-2.0-only", - "lgpl-2.0.0-or-later": "LGPL-2.0-or-later", - "lgpl-2.1": "LGPL-2.1-only", - "lgpl-2.1+": "LGPL-2.1-or-later", - "lgpl-2.1-only": "LGPL-2.1-only", - "lgpl-2.1-or-later": "LGPL-2.1-or-later", - "lgpl-2.1.0": "LGPL-2.1-only", - "lgpl-2.1.0+": "LGPL-2.1-or-later", - "lgpl-2.1.0-only": "LGPL-2.1-only", - "lgpl-2.1.0-or-later": "LGPL-2.1-or-later", - "lgpl-3": "LGPL-3.0-only", - "lgpl-3+": "LGPL-3.0-or-later", - "lgpl-3-only": "LGPL-3.0-only", - "lgpl-3-or-later": "LGPL-3.0-or-later", - "lgpl-3.0": "LGPL-3.0-only", - "lgpl-3.0+": "LGPL-3.0-or-later", - "lgpl-3.0-only": "LGPL-3.0-only", - "lgpl-3.0-or-later": "LGPL-3.0-or-later", - "lgpl-3.0.0": "LGPL-3.0-only", - "lgpl-3.0.0+": "LGPL-3.0-or-later", - "lgpl-3.0.0-only": "LGPL-3.0-only", - "lgpl-3.0.0-or-later": "LGPL-3.0-or-later", - "lgpllr": "LGPLLR", - "libpng": "Libpng", - "libpng-2": "libpng-2.0", - "libpng-2.0": "libpng-2.0", - "libpng-2.0.0": "libpng-2.0", - "libselinux-1": "libselinux-1.0", - "libselinux-1.0": "libselinux-1.0", - "libselinux-1.0.0": "libselinux-1.0", - "libtiff": "libtiff", - "libutil-david-nugent": "libutil-David-Nugent", - "liliq-p-1": "LiLiQ-P-1.1", - "liliq-p-1.1": "LiLiQ-P-1.1", - "liliq-p-1.1.0": "LiLiQ-P-1.1", - "liliq-r-1": "LiLiQ-R-1.1", - "liliq-r-1.1": "LiLiQ-R-1.1", - "liliq-r-1.1.0": "LiLiQ-R-1.1", - "liliq-rplus-1": "LiLiQ-Rplus-1.1", - "liliq-rplus-1.1": "LiLiQ-Rplus-1.1", - "liliq-rplus-1.1.0": "LiLiQ-Rplus-1.1", - "linux-man-pages-copyleft": "Linux-man-pages-copyleft", - "linux-openib": "Linux-OpenIB", - "loop": "LOOP", - "lpl-1": "LPL-1.0", - "lpl-1.0": "LPL-1.0", - "lpl-1.0.0": "LPL-1.0", - "lpl-1.02": "LPL-1.02", - "lpl-1.02.0": "LPL-1.02", - "lppl-1": "LPPL-1.0", - "lppl-1.0": "LPPL-1.0", - "lppl-1.0.0": "LPPL-1.0", - "lppl-1.1": "LPPL-1.1", - "lppl-1.1.0": "LPPL-1.1", - "lppl-1.2": "LPPL-1.2", - "lppl-1.2.0": "LPPL-1.2", - "lppl-1.3.0a": "LPPL-1.3a", - "lppl-1.3.0c": "LPPL-1.3c", - "lppl-1.3a": "LPPL-1.3a", - "lppl-1.3c": "LPPL-1.3c", - "lppl-1a": "LPPL-1.3a", - "lppl-1c": "LPPL-1.3c", - "lzma-sdk-9": "LZMA-SDK-9.22", - "lzma-sdk-9-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.11-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.11.0-to-9.20": "LZMA-SDK-9.11-to-9.20", - "lzma-sdk-9.22": "LZMA-SDK-9.22", - "lzma-sdk-9.22.0": "LZMA-SDK-9.22", - "makeindex": "MakeIndex", - "martin-birgmeier": "Martin-Birgmeier", - "minpack": "Minpack", - "miros": "MirOS", - "mit": "MIT", - "mit-0": "MIT-0", - "mit-advertising": "MIT-advertising", - "mit-cmu": "MIT-CMU", - "mit-enna": "MIT-enna", - "mit-feh": "MIT-feh", - "mit-modern-variant": "MIT-Modern-Variant", - "mit-open-group": "MIT-open-group", - "mit-wu": "MIT-Wu", - "mitnfa": "MITNFA", - "motosoto": "Motosoto", - "mpi-permissive": "mpi-permissive", - "mpich2": "mpich2", - "mpl-1": "MPL-1.0", - "mpl-1.0": "MPL-1.0", - "mpl-1.0.0": "MPL-1.0", - "mpl-1.1": "MPL-1.1", - "mpl-1.1.0": "MPL-1.1", - "mpl-2": "MPL-2.0", - "mpl-2-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mpl-2.0": "MPL-2.0", - "mpl-2.0-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mpl-2.0.0": "MPL-2.0", - "mpl-2.0.0-no-copyleft-exception": "MPL-2.0-no-copyleft-exception", - "mplus": "mplus", - "ms-lpl": "MS-LPL", - "ms-pl": "MS-PL", - "ms-rl": "MS-RL", - "mtll": "MTLL", - "mulanpsl-1": "MulanPSL-1.0", - "mulanpsl-1.0": "MulanPSL-1.0", - "mulanpsl-1.0.0": "MulanPSL-1.0", - "mulanpsl-2": "MulanPSL-2.0", - "mulanpsl-2.0": "MulanPSL-2.0", - "mulanpsl-2.0.0": "MulanPSL-2.0", - "multics": "Multics", - "mup": "Mup", - "naist-2003": "NAIST-2003", - "naist-2003.0": "NAIST-2003", - "naist-2003.0.0": "NAIST-2003", - "nasa-1": "NASA-1.3", - "nasa-1.3": "NASA-1.3", - "nasa-1.3.0": "NASA-1.3", - "naumen": "Naumen", - "nbpl-1": "NBPL-1.0", - "nbpl-1.0": "NBPL-1.0", - "nbpl-1.0.0": "NBPL-1.0", - "ncgl-uk-2": "NCGL-UK-2.0", - "ncgl-uk-2.0": "NCGL-UK-2.0", - "ncgl-uk-2.0.0": "NCGL-UK-2.0", - "ncsa": "NCSA", - "net-snmp": "Net-SNMP", - "netcdf": "NetCDF", - "newsletr": "Newsletr", - "ngpl": "NGPL", - "nicta-1": "NICTA-1.0", - "nicta-1.0": "NICTA-1.0", - "nicta-1.0.0": "NICTA-1.0", - "nist-pd": "NIST-PD", - "nist-pd-fallback": "NIST-PD-fallback", - "nlod-1": "NLOD-1.0", - "nlod-1.0": "NLOD-1.0", - "nlod-1.0.0": "NLOD-1.0", - "nlod-2": "NLOD-2.0", - "nlod-2.0": "NLOD-2.0", - "nlod-2.0.0": "NLOD-2.0", - "nlpl": "NLPL", - "nokia": "Nokia", - "nosl": "NOSL", - "noweb": "Noweb", - "npl-1": "NPL-1.0", - "npl-1.0": "NPL-1.0", - "npl-1.0.0": "NPL-1.0", - "npl-1.1": "NPL-1.1", - "npl-1.1.0": "NPL-1.1", - "nposl-3": "NPOSL-3.0", - "nposl-3.0": "NPOSL-3.0", - "nposl-3.0.0": "NPOSL-3.0", - "nrl": "NRL", - "ntp": "NTP", - "ntp-0": "NTP-0", - "nunit": "Nunit", - "o-uda-1": "O-UDA-1.0", - "o-uda-1.0": "O-UDA-1.0", - "o-uda-1.0.0": "O-UDA-1.0", - "occt-pl": "OCCT-PL", - "oclc-2": "OCLC-2.0", - "oclc-2.0": "OCLC-2.0", - "oclc-2.0.0": "OCLC-2.0", - "odbl-1": "ODbL-1.0", - "odbl-1.0": "ODbL-1.0", - "odbl-1.0.0": "ODbL-1.0", - "odc-by-1": "ODC-By-1.0", - "odc-by-1.0": "ODC-By-1.0", - "odc-by-1.0.0": "ODC-By-1.0", - "offis": "OFFIS", - "ofl-1": "OFL-1.0", - "ofl-1-no-rfn": "OFL-1.0-no-RFN", - "ofl-1-rfn": "OFL-1.0-RFN", - "ofl-1.0": "OFL-1.0", - "ofl-1.0-no-rfn": "OFL-1.0-no-RFN", - "ofl-1.0-rfn": "OFL-1.0-RFN", - "ofl-1.0.0": "OFL-1.0", - "ofl-1.0.0-no-rfn": "OFL-1.0-no-RFN", - "ofl-1.0.0-rfn": "OFL-1.0-RFN", - "ofl-1.1": "OFL-1.1", - "ofl-1.1-no-rfn": "OFL-1.1-no-RFN", - "ofl-1.1-rfn": "OFL-1.1-RFN", - "ofl-1.1.0": "OFL-1.1", - "ofl-1.1.0-no-rfn": "OFL-1.1-no-RFN", - "ofl-1.1.0-rfn": "OFL-1.1-RFN", - "ogc-1": "OGC-1.0", - "ogc-1.0": "OGC-1.0", - "ogc-1.0.0": "OGC-1.0", - "ogdl-taiwan-1": "OGDL-Taiwan-1.0", - "ogdl-taiwan-1.0": "OGDL-Taiwan-1.0", - "ogdl-taiwan-1.0.0": "OGDL-Taiwan-1.0", - "ogl-canada-2": "OGL-Canada-2.0", - "ogl-canada-2.0": "OGL-Canada-2.0", - "ogl-canada-2.0.0": "OGL-Canada-2.0", - "ogl-uk-1": "OGL-UK-1.0", - "ogl-uk-1.0": "OGL-UK-1.0", - "ogl-uk-1.0.0": "OGL-UK-1.0", - "ogl-uk-2": "OGL-UK-2.0", - "ogl-uk-2.0": "OGL-UK-2.0", - "ogl-uk-2.0.0": "OGL-UK-2.0", - "ogl-uk-3": "OGL-UK-3.0", - "ogl-uk-3.0": "OGL-UK-3.0", - "ogl-uk-3.0.0": "OGL-UK-3.0", - "ogtsl": "OGTSL", - "oldap-1": "OLDAP-1.1", - "oldap-1.1": "OLDAP-1.1", - "oldap-1.1.0": "OLDAP-1.1", - "oldap-1.2": "OLDAP-1.2", - "oldap-1.2.0": "OLDAP-1.2", - "oldap-1.3": "OLDAP-1.3", - "oldap-1.3.0": "OLDAP-1.3", - "oldap-1.4": "OLDAP-1.4", - "oldap-1.4.0": "OLDAP-1.4", - "oldap-2": "OLDAP-2.0", - "oldap-2.0": "OLDAP-2.0", - "oldap-2.0.0": "OLDAP-2.0", - "oldap-2.0.1": "OLDAP-2.0.1", - "oldap-2.1": "OLDAP-2.1", - "oldap-2.1.0": "OLDAP-2.1", - "oldap-2.2": "OLDAP-2.2", - "oldap-2.2.0": "OLDAP-2.2", - "oldap-2.2.1": "OLDAP-2.2.1", - "oldap-2.2.2": "OLDAP-2.2.2", - "oldap-2.3": "OLDAP-2.3", - "oldap-2.3.0": "OLDAP-2.3", - "oldap-2.4": "OLDAP-2.4", - "oldap-2.4.0": "OLDAP-2.4", - "oldap-2.5": "OLDAP-2.5", - "oldap-2.5.0": "OLDAP-2.5", - "oldap-2.6": "OLDAP-2.6", - "oldap-2.6.0": "OLDAP-2.6", - "oldap-2.7": "OLDAP-2.7", - "oldap-2.7.0": "OLDAP-2.7", - "oldap-2.8": "OLDAP-2.8", - "oldap-2.8.0": "OLDAP-2.8", - "oml": "OML", - "openpbs-2": "OpenPBS-2.3", - "openpbs-2.3": "OpenPBS-2.3", - "openpbs-2.3.0": "OpenPBS-2.3", - "openssl": "OpenSSL", - "opl-1": "OPL-1.0", - "opl-1.0": "OPL-1.0", - "opl-1.0.0": "OPL-1.0", - "opubl-1": "OPUBL-1.0", - "opubl-1.0": "OPUBL-1.0", - "opubl-1.0.0": "OPUBL-1.0", - "oset-pl-2": "OSET-PL-2.1", - "oset-pl-2.1": "OSET-PL-2.1", - "oset-pl-2.1.0": "OSET-PL-2.1", - "osl-1": "OSL-1.0", - "osl-1.0": "OSL-1.0", - "osl-1.0.0": "OSL-1.0", - "osl-1.1": "OSL-1.1", - "osl-1.1.0": "OSL-1.1", - "osl-2": "OSL-2.0", - "osl-2.0": "OSL-2.0", - "osl-2.0.0": "OSL-2.0", - "osl-2.1": "OSL-2.1", - "osl-2.1.0": "OSL-2.1", - "osl-3": "OSL-3.0", - "osl-3.0": "OSL-3.0", - "osl-3.0.0": "OSL-3.0", - "parity-6": "Parity-6.0.0", - "parity-6.0": "Parity-6.0.0", - "parity-6.0.0": "Parity-6.0.0", - "parity-7": "Parity-7.0.0", - "parity-7.0": "Parity-7.0.0", - "parity-7.0.0": "Parity-7.0.0", - "pddl-1": "PDDL-1.0", - "pddl-1.0": "PDDL-1.0", - "pddl-1.0.0": "PDDL-1.0", - "php-3": "PHP-3.0", - "php-3.0": "PHP-3.0", - "php-3.0.0": "PHP-3.0", - "php-3.01": "PHP-3.01", - "php-3.01.0": "PHP-3.01", - "plexus": "Plexus", - "polyform-noncommercial-1": "PolyForm-Noncommercial-1.0.0", - "polyform-noncommercial-1.0": "PolyForm-Noncommercial-1.0.0", - "polyform-noncommercial-1.0.0": "PolyForm-Noncommercial-1.0.0", - "polyform-small-business-1": "PolyForm-Small-Business-1.0.0", - "polyform-small-business-1.0": "PolyForm-Small-Business-1.0.0", - "polyform-small-business-1.0.0": "PolyForm-Small-Business-1.0.0", - "postgresql": "PostgreSQL", - "psf-2": "PSF-2.0", - "psf-2.0": "PSF-2.0", - "psf-2.0.0": "PSF-2.0", - "psfrag": "psfrag", - "psutils": "psutils", - "python-2": "Python-2.0", - "python-2.0": "Python-2.0", - "python-2.0.0": "Python-2.0", - "python-2.0.1": "Python-2.0.1", - "qhull": "Qhull", - "qpl-1": "QPL-1.0", - "qpl-1-inria-2004": "QPL-1.0-INRIA-2004", - "qpl-1.0": "QPL-1.0", - "qpl-1.0-inria-2004": "QPL-1.0-INRIA-2004", - "qpl-1.0.0": "QPL-1.0", - "qpl-1.0.0-inria-2004": "QPL-1.0-INRIA-2004", - "rdisc": "Rdisc", - "rhecos-1": "RHeCos-1.1", - "rhecos-1.1": "RHeCos-1.1", - "rhecos-1.1.0": "RHeCos-1.1", - "rpl-1": "RPL-1.1", - "rpl-1.1": "RPL-1.1", - "rpl-1.1.0": "RPL-1.1", - "rpl-1.5": "RPL-1.5", - "rpl-1.5.0": "RPL-1.5", - "rpsl-1": "RPSL-1.0", - "rpsl-1.0": "RPSL-1.0", - "rpsl-1.0.0": "RPSL-1.0", - "rsa-md": "RSA-MD", - "rscpl": "RSCPL", - "ruby": "Ruby", - "sax-pd": "SAX-PD", - "saxpath": "Saxpath", - "scea": "SCEA", - "schemereport": "SchemeReport", - "sendmail": "Sendmail", - "sendmail-8": "Sendmail-8.23", - "sendmail-8.23": "Sendmail-8.23", - "sendmail-8.23.0": "Sendmail-8.23", - "sgi-b-1": "SGI-B-1.0", - "sgi-b-1.0": "SGI-B-1.0", - "sgi-b-1.0.0": "SGI-B-1.0", - "sgi-b-1.1": "SGI-B-1.1", - "sgi-b-1.1.0": "SGI-B-1.1", - "sgi-b-2": "SGI-B-2.0", - "sgi-b-2.0": "SGI-B-2.0", - "sgi-b-2.0.0": "SGI-B-2.0", - "shl-0.5": "SHL-0.5", - "shl-0.5.0": "SHL-0.5", - "shl-0.51": "SHL-0.51", - "shl-0.51.0": "SHL-0.51", - "simpl-2": "SimPL-2.0", - "simpl-2.0": "SimPL-2.0", - "simpl-2.0.0": "SimPL-2.0", - "sissl": "SISSL", - "sissl-1": "SISSL-1.2", - "sissl-1.2": "SISSL-1.2", - "sissl-1.2.0": "SISSL-1.2", - "sleepycat": "Sleepycat", - "smlnj": "SMLNJ", - "smppl": "SMPPL", - "snia": "SNIA", - "snprintf": "snprintf", - "spencer-86": "Spencer-86", - "spencer-86.0": "Spencer-86", - "spencer-86.0.0": "Spencer-86", - "spencer-94": "Spencer-94", - "spencer-94.0": "Spencer-94", - "spencer-94.0.0": "Spencer-94", - "spencer-99": "Spencer-99", - "spencer-99.0": "Spencer-99", - "spencer-99.0.0": "Spencer-99", - "spl-1": "SPL-1.0", - "spl-1.0": "SPL-1.0", - "spl-1.0.0": "SPL-1.0", - "ssh-openssh": "SSH-OpenSSH", - "ssh-short": "SSH-short", - "sspl-1": "SSPL-1.0", - "sspl-1.0": "SSPL-1.0", - "sspl-1.0.0": "SSPL-1.0", - "standardml-nj": "SMLNJ", - "sugarcrm-1": "SugarCRM-1.1.3", - "sugarcrm-1.1": "SugarCRM-1.1.3", - "sugarcrm-1.1.3": "SugarCRM-1.1.3", - "sunpro": "SunPro", - "swl": "SWL", - "symlinks": "Symlinks", - "tapr-ohl-1": "TAPR-OHL-1.0", - "tapr-ohl-1.0": "TAPR-OHL-1.0", - "tapr-ohl-1.0.0": "TAPR-OHL-1.0", - "tcl": "TCL", - "tcp-wrappers": "TCP-wrappers", - "tmate": "TMate", - "torque-1": "TORQUE-1.1", - "torque-1.1": "TORQUE-1.1", - "torque-1.1.0": "TORQUE-1.1", - "tosl": "TOSL", - "tpdl": "TPDL", - "tpl-1": "TPL-1.0", - "tpl-1.0": "TPL-1.0", - "tpl-1.0.0": "TPL-1.0", - "ttwl": "TTWL", - "tu-berlin-1": "TU-Berlin-1.0", - "tu-berlin-1.0": "TU-Berlin-1.0", - "tu-berlin-1.0.0": "TU-Berlin-1.0", - "tu-berlin-2": "TU-Berlin-2.0", - "tu-berlin-2.0": "TU-Berlin-2.0", - "tu-berlin-2.0.0": "TU-Berlin-2.0", - "ucar": "UCAR", - "ucl-1": "UCL-1.0", - "ucl-1.0": "UCL-1.0", - "ucl-1.0.0": "UCL-1.0", - "unicode-dfs-2015": "Unicode-DFS-2015", - "unicode-dfs-2015.0": "Unicode-DFS-2015", - "unicode-dfs-2015.0.0": "Unicode-DFS-2015", - "unicode-dfs-2016": "Unicode-DFS-2016", - "unicode-dfs-2016.0": "Unicode-DFS-2016", - "unicode-dfs-2016.0.0": "Unicode-DFS-2016", - "unicode-tou": "Unicode-TOU", - "unlicense": "Unlicense", - "upl-1": "UPL-1.0", - "upl-1.0": "UPL-1.0", - "upl-1.0.0": "UPL-1.0", - "vim": "Vim", - "vostrom": "VOSTROM", - "vsl-1": "VSL-1.0", - "vsl-1.0": "VSL-1.0", - "vsl-1.0.0": "VSL-1.0", - "w3c": "W3C", - "w3c-19980720": "W3C-19980720", - "w3c-19980720.0": "W3C-19980720", - "w3c-19980720.0.0": "W3C-19980720", - "w3c-20150513": "W3C-20150513", - "w3c-20150513.0": "W3C-20150513", - "w3c-20150513.0.0": "W3C-20150513", - "w3m": "w3m", - "watcom-1": "Watcom-1.0", - "watcom-1.0": "Watcom-1.0", - "watcom-1.0.0": "Watcom-1.0", - "wsuipa": "Wsuipa", - "wtfpl": "WTFPL", - "wxwindows": "wxWindows", - "x11": "X11", - "x11-distribute-modifications-variant": "X11-distribute-modifications-variant", - "xerox": "Xerox", - "xfree86-1": "XFree86-1.1", - "xfree86-1.1": "XFree86-1.1", - "xfree86-1.1.0": "XFree86-1.1", - "xinetd": "xinetd", - "xlock": "xlock", - "xnet": "Xnet", - "xpp": "xpp", - "xskat": "XSkat", - "ypl-1": "YPL-1.0", - "ypl-1.0": "YPL-1.0", - "ypl-1.0.0": "YPL-1.0", - "ypl-1.1": "YPL-1.1", - "ypl-1.1.0": "YPL-1.1", - "zed": "Zed", - "zend-2": "Zend-2.0", - "zend-2.0": "Zend-2.0", - "zend-2.0.0": "Zend-2.0", - "zimbra-1": "Zimbra-1.3", - "zimbra-1.3": "Zimbra-1.3", - "zimbra-1.3.0": "Zimbra-1.3", - "zimbra-1.4": "Zimbra-1.4", - "zimbra-1.4.0": "Zimbra-1.4", - "zlib": "Zlib", - "zlib-acknowledgement": "zlib-acknowledgement", - "zpl-1": "ZPL-1.1", - "zpl-1.1": "ZPL-1.1", - "zpl-1.1.0": "ZPL-1.1", - "zpl-2": "ZPL-2.0", - "zpl-2.0": "ZPL-2.0", - "zpl-2.0.0": "ZPL-2.0", - "zpl-2.1": "ZPL-2.1", - "zpl-2.1.0": "ZPL-2.1", + "0bsd": "0BSD", + "aal": "AAL", + "abstyles": "Abstyles", + "adacoredoc": "AdaCore-doc", + "adobe2006": "Adobe-2006", + "adobe2006.0": "Adobe-2006", + "adobe2006.0.0": "Adobe-2006", + "adobeglyph": "Adobe-Glyph", + "adsl": "ADSL", + "afl1": "AFL-1.1", + "afl1.1": "AFL-1.1", + "afl1.1.0": "AFL-1.1", + "afl1.2": "AFL-1.2", + "afl1.2.0": "AFL-1.2", + "afl2": "AFL-2.0", + "afl2.0": "AFL-2.0", + "afl2.0.0": "AFL-2.0", + "afl2.1": "AFL-2.1", + "afl2.1.0": "AFL-2.1", + "afl3": "AFL-3.0", + "afl3.0": "AFL-3.0", + "afl3.0.0": "AFL-3.0", + "afmparse": "Afmparse", + "agpl1": "AGPL-1.0-only", + "agpl1.0": "AGPL-1.0-only", + "agpl1.0.0": "AGPL-1.0-only", + "agpl1.0.0only": "AGPL-1.0-only", + "agpl1.0.0orlater": "AGPL-1.0-or-later", + "agpl1.0only": "AGPL-1.0-only", + "agpl1.0orlater": "AGPL-1.0-or-later", + "agpl1only": "AGPL-1.0-only", + "agpl1orlater": "AGPL-1.0-or-later", + "agpl3": "AGPL-3.0-only", + "agpl3.0": "AGPL-3.0-only", + "agpl3.0.0": "AGPL-3.0-only", + "agpl3.0.0only": "AGPL-3.0-only", + "agpl3.0.0orlater": "AGPL-3.0-or-later", + "agpl3.0only": "AGPL-3.0-only", + "agpl3.0orlater": "AGPL-3.0-or-later", + "agpl3only": "AGPL-3.0-only", + "agpl3orlater": "AGPL-3.0-or-later", + "aladdin": "Aladdin", + "amdplpa": "AMDPLPA", + "aml": "AML", + "ampas": "AMPAS", + "antlrpd": "ANTLR-PD", + "antlrpdfallback": "ANTLR-PD-fallback", + "apache1": "Apache-1.0", + "apache1.0": "Apache-1.0", + "apache1.0.0": "Apache-1.0", + "apache1.1": "Apache-1.1", + "apache1.1.0": "Apache-1.1", + "apache2": "Apache-2.0", + "apache2.0": "Apache-2.0", + "apache2.0.0": "Apache-2.0", + "apafml": "APAFML", + "apl1": "APL-1.0", + "apl1.0": "APL-1.0", + "apl1.0.0": "APL-1.0", + "apps2.0.0p": "App-s2p", + "apps2.0p": "App-s2p", + "apps2p": "App-s2p", + "apsl1": "APSL-1.0", + "apsl1.0": "APSL-1.0", + "apsl1.0.0": "APSL-1.0", + "apsl1.1": "APSL-1.1", + "apsl1.1.0": "APSL-1.1", + "apsl1.2": "APSL-1.2", + "apsl1.2.0": "APSL-1.2", + "apsl2": "APSL-2.0", + "apsl2.0": "APSL-2.0", + "apsl2.0.0": "APSL-2.0", + "arphic1999": "Arphic-1999", + "arphic1999.0": "Arphic-1999", + "arphic1999.0.0": "Arphic-1999", + "artistic1": "Artistic-1.0", + "artistic1.0": "Artistic-1.0", + "artistic1.0.0": "Artistic-1.0", + "artistic1.0.0cl8": "Artistic-1.0-cl8", + "artistic1.0.0perl": "Artistic-1.0-Perl", + "artistic1.0cl8": "Artistic-1.0-cl8", + "artistic1.0perl": "Artistic-1.0-Perl", + "artistic1cl8": "Artistic-1.0-cl8", + "artistic1perl": "Artistic-1.0-Perl", + "artistic2": "Artistic-2.0", + "artistic2.0": "Artistic-2.0", + "artistic2.0.0": "Artistic-2.0", + "baekmuk": "Baekmuk", + "bahyph": "Bahyph", + "barr": "Barr", + "beerware": "Beerware", + "bitstreamcharter": "Bitstream-Charter", + "bitstreamvera": "Bitstream-Vera", + "bittorrent1": "BitTorrent-1.0", + "bittorrent1.0": "BitTorrent-1.0", + "bittorrent1.0.0": "BitTorrent-1.0", + "bittorrent1.1": "BitTorrent-1.1", + "bittorrent1.1.0": "BitTorrent-1.1", + "blessing": "blessing", + "blueoak1": "BlueOak-1.0.0", + "blueoak1.0": "BlueOak-1.0.0", + "blueoak1.0.0": "BlueOak-1.0.0", + "borceux": "Borceux", + "briangladman3.0.0clause": "Brian-Gladman-3-Clause", + "briangladman3.0clause": "Brian-Gladman-3-Clause", + "briangladman3clause": "Brian-Gladman-3-Clause", + "bsd1.0.0clause": "BSD-1-Clause", + "bsd1.0clause": "BSD-1-Clause", + "bsd1clause": "BSD-1-Clause", + "bsd2.0.0clause": "BSD-2-Clause", + "bsd2.0.0clausefreebsd": "BSD-2-Clause-Views", + "bsd2.0.0clausenetbsd": "BSD-2-Clause", + "bsd2.0.0clausepatent": "BSD-2-Clause-Patent", + "bsd2.0.0clauseviews": "BSD-2-Clause-Views", + "bsd2.0clause": "BSD-2-Clause", + "bsd2.0clausefreebsd": "BSD-2-Clause-Views", + "bsd2.0clausenetbsd": "BSD-2-Clause", + "bsd2.0clausepatent": "BSD-2-Clause-Patent", + "bsd2.0clauseviews": "BSD-2-Clause-Views", + "bsd2clause": "BSD-2-Clause", + "bsd2clausefreebsd": "BSD-2-Clause-Views", + "bsd2clausenetbsd": "BSD-2-Clause", + "bsd2clausepatent": "BSD-2-Clause-Patent", + "bsd2clauseviews": "BSD-2-Clause-Views", + "bsd3.0.0clause": "BSD-3-Clause", + "bsd3.0.0clauseattribution": "BSD-3-Clause-Attribution", + "bsd3.0.0clauseclear": "BSD-3-Clause-Clear", + "bsd3.0.0clauselbnl": "BSD-3-Clause-LBNL", + "bsd3.0.0clausemodification": "BSD-3-Clause-Modification", + "bsd3.0.0clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3.0.0clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3.0.0clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3.0.0clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3.0.0clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd3.0clause": "BSD-3-Clause", + "bsd3.0clauseattribution": "BSD-3-Clause-Attribution", + "bsd3.0clauseclear": "BSD-3-Clause-Clear", + "bsd3.0clauselbnl": "BSD-3-Clause-LBNL", + "bsd3.0clausemodification": "BSD-3-Clause-Modification", + "bsd3.0clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3.0clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3.0clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3.0clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3.0clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd3clause": "BSD-3-Clause", + "bsd3clauseattribution": "BSD-3-Clause-Attribution", + "bsd3clauseclear": "BSD-3-Clause-Clear", + "bsd3clauselbnl": "BSD-3-Clause-LBNL", + "bsd3clausemodification": "BSD-3-Clause-Modification", + "bsd3clausenomilitarylicense": "BSD-3-Clause-No-Military-License", + "bsd3clausenonuclearlicense": "BSD-3-Clause-No-Nuclear-License", + "bsd3clausenonuclearlicense2014": "BSD-3-Clause-No-Nuclear-License-2014", + "bsd3clausenonuclearwarranty": "BSD-3-Clause-No-Nuclear-Warranty", + "bsd3clauseopenmpi": "BSD-3-Clause-Open-MPI", + "bsd4.0.0clause": "BSD-4-Clause", + "bsd4.0.0clauseshortened": "BSD-4-Clause-Shortened", + "bsd4.0.0clauseuc": "BSD-4-Clause-UC", + "bsd4.0clause": "BSD-4-Clause", + "bsd4.0clauseshortened": "BSD-4-Clause-Shortened", + "bsd4.0clauseuc": "BSD-4-Clause-UC", + "bsd4.3.0reno": "BSD-4.3RENO", + "bsd4.3.0tahoe": "BSD-4.3TAHOE", + "bsd4.3reno": "BSD-4.3RENO", + "bsd4.3tahoe": "BSD-4.3TAHOE", + "bsd4clause": "BSD-4-Clause", + "bsd4clauseshortened": "BSD-4-Clause-Shortened", + "bsd4clauseuc": "BSD-4-Clause-UC", + "bsd4reno": "BSD-4.3RENO", + "bsd4tahoe": "BSD-4.3TAHOE", + "bsdadvertisingacknowledgement": "BSD-Advertising-Acknowledgement", + "bsdattributionhpnddisclaimer": "BSD-Attribution-HPND-disclaimer", + "bsdprotection": "BSD-Protection", + "bsdsourcecode": "BSD-Source-Code", + "bsl1": "BSL-1.0", + "bsl1.0": "BSL-1.0", + "bsl1.0.0": "BSL-1.0", + "busl1": "BUSL-1.1", + "busl1.1": "BUSL-1.1", + "busl1.1.0": "BUSL-1.1", + "bzip21": "bzip2-1.0.6", + "bzip21.0": "bzip2-1.0.6", + "bzip21.0.5": "bzip2-1.0.6", + "bzip21.0.6": "bzip2-1.0.6", + "cal1": "CAL-1.0", + "cal1.0": "CAL-1.0", + "cal1.0.0": "CAL-1.0", + "cal1.0.0combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "cal1.0combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "cal1combinedworkexception": "CAL-1.0-Combined-Work-Exception", + "caldera": "Caldera", + "catosl1": "CATOSL-1.1", + "catosl1.1": "CATOSL-1.1", + "catosl1.1.0": "CATOSL-1.1", + "cc01": "CC0-1.0", + "cc01.0": "CC0-1.0", + "cc01.0.0": "CC0-1.0", + "ccby1": "CC-BY-1.0", + "ccby1.0": "CC-BY-1.0", + "ccby1.0.0": "CC-BY-1.0", + "ccby2": "CC-BY-2.0", + "ccby2.0": "CC-BY-2.0", + "ccby2.0.0": "CC-BY-2.0", + "ccby2.5": "CC-BY-2.5", + "ccby2.5.0": "CC-BY-2.5", + "ccby2.5.0au": "CC-BY-2.5-AU", + "ccby2.5au": "CC-BY-2.5-AU", + "ccby2au": "CC-BY-2.5-AU", + "ccby3": "CC-BY-3.0", + "ccby3.0": "CC-BY-3.0", + "ccby3.0.0": "CC-BY-3.0", + "ccby3.0.0at": "CC-BY-3.0-AT", + "ccby3.0.0de": "CC-BY-3.0-DE", + "ccby3.0.0igo": "CC-BY-3.0-IGO", + "ccby3.0.0nl": "CC-BY-3.0-NL", + "ccby3.0.0us": "CC-BY-3.0-US", + "ccby3.0at": "CC-BY-3.0-AT", + "ccby3.0de": "CC-BY-3.0-DE", + "ccby3.0igo": "CC-BY-3.0-IGO", + "ccby3.0nl": "CC-BY-3.0-NL", + "ccby3.0us": "CC-BY-3.0-US", + "ccby3at": "CC-BY-3.0-AT", + "ccby3de": "CC-BY-3.0-DE", + "ccby3igo": "CC-BY-3.0-IGO", + "ccby3nl": "CC-BY-3.0-NL", + "ccby3us": "CC-BY-3.0-US", + "ccby4": "CC-BY-4.0", + "ccby4.0": "CC-BY-4.0", + "ccby4.0.0": "CC-BY-4.0", + "ccbync1": "CC-BY-NC-1.0", + "ccbync1.0": "CC-BY-NC-1.0", + "ccbync1.0.0": "CC-BY-NC-1.0", + "ccbync2": "CC-BY-NC-2.0", + "ccbync2.0": "CC-BY-NC-2.0", + "ccbync2.0.0": "CC-BY-NC-2.0", + "ccbync2.5": "CC-BY-NC-2.5", + "ccbync2.5.0": "CC-BY-NC-2.5", + "ccbync3": "CC-BY-NC-3.0", + "ccbync3.0": "CC-BY-NC-3.0", + "ccbync3.0.0": "CC-BY-NC-3.0", + "ccbync3.0.0de": "CC-BY-NC-3.0-DE", + "ccbync3.0de": "CC-BY-NC-3.0-DE", + "ccbync3de": "CC-BY-NC-3.0-DE", + "ccbync4": "CC-BY-NC-4.0", + "ccbync4.0": "CC-BY-NC-4.0", + "ccbync4.0.0": "CC-BY-NC-4.0", + "ccbyncnd1": "CC-BY-NC-ND-1.0", + "ccbyncnd1.0": "CC-BY-NC-ND-1.0", + "ccbyncnd1.0.0": "CC-BY-NC-ND-1.0", + "ccbyncnd2": "CC-BY-NC-ND-2.0", + "ccbyncnd2.0": "CC-BY-NC-ND-2.0", + "ccbyncnd2.0.0": "CC-BY-NC-ND-2.0", + "ccbyncnd2.5": "CC-BY-NC-ND-2.5", + "ccbyncnd2.5.0": "CC-BY-NC-ND-2.5", + "ccbyncnd3": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0.0": "CC-BY-NC-ND-3.0", + "ccbyncnd3.0.0de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3.0.0igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd3.0de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3.0igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd3de": "CC-BY-NC-ND-3.0-DE", + "ccbyncnd3igo": "CC-BY-NC-ND-3.0-IGO", + "ccbyncnd4": "CC-BY-NC-ND-4.0", + "ccbyncnd4.0": "CC-BY-NC-ND-4.0", + "ccbyncnd4.0.0": "CC-BY-NC-ND-4.0", + "ccbyncsa1": "CC-BY-NC-SA-1.0", + "ccbyncsa1.0": "CC-BY-NC-SA-1.0", + "ccbyncsa1.0.0": "CC-BY-NC-SA-1.0", + "ccbyncsa2": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0.0": "CC-BY-NC-SA-2.0", + "ccbyncsa2.0.0de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2.0.0fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2.0.0uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa2.0de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2.0fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2.0uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa2.5": "CC-BY-NC-SA-2.5", + "ccbyncsa2.5.0": "CC-BY-NC-SA-2.5", + "ccbyncsa2de": "CC-BY-NC-SA-2.0-DE", + "ccbyncsa2fr": "CC-BY-NC-SA-2.0-FR", + "ccbyncsa2uk": "CC-BY-NC-SA-2.0-UK", + "ccbyncsa3": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0.0": "CC-BY-NC-SA-3.0", + "ccbyncsa3.0.0de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3.0.0igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa3.0de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3.0igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa3de": "CC-BY-NC-SA-3.0-DE", + "ccbyncsa3igo": "CC-BY-NC-SA-3.0-IGO", + "ccbyncsa4": "CC-BY-NC-SA-4.0", + "ccbyncsa4.0": "CC-BY-NC-SA-4.0", + "ccbyncsa4.0.0": "CC-BY-NC-SA-4.0", + "ccbynd1": "CC-BY-ND-1.0", + "ccbynd1.0": "CC-BY-ND-1.0", + "ccbynd1.0.0": "CC-BY-ND-1.0", + "ccbynd2": "CC-BY-ND-2.0", + "ccbynd2.0": "CC-BY-ND-2.0", + "ccbynd2.0.0": "CC-BY-ND-2.0", + "ccbynd2.5": "CC-BY-ND-2.5", + "ccbynd2.5.0": "CC-BY-ND-2.5", + "ccbynd3": "CC-BY-ND-3.0", + "ccbynd3.0": "CC-BY-ND-3.0", + "ccbynd3.0.0": "CC-BY-ND-3.0", + "ccbynd3.0.0de": "CC-BY-ND-3.0-DE", + "ccbynd3.0de": "CC-BY-ND-3.0-DE", + "ccbynd3de": "CC-BY-ND-3.0-DE", + "ccbynd4": "CC-BY-ND-4.0", + "ccbynd4.0": "CC-BY-ND-4.0", + "ccbynd4.0.0": "CC-BY-ND-4.0", + "ccbysa1": "CC-BY-SA-1.0", + "ccbysa1.0": "CC-BY-SA-1.0", + "ccbysa1.0.0": "CC-BY-SA-1.0", + "ccbysa2": "CC-BY-SA-2.0", + "ccbysa2.0": "CC-BY-SA-2.0", + "ccbysa2.0.0": "CC-BY-SA-2.0", + "ccbysa2.0.0uk": "CC-BY-SA-2.0-UK", + "ccbysa2.0uk": "CC-BY-SA-2.0-UK", + "ccbysa2.1.0jp": "CC-BY-SA-2.1-JP", + "ccbysa2.1jp": "CC-BY-SA-2.1-JP", + "ccbysa2.5": "CC-BY-SA-2.5", + "ccbysa2.5.0": "CC-BY-SA-2.5", + "ccbysa2jp": "CC-BY-SA-2.1-JP", + "ccbysa2uk": "CC-BY-SA-2.0-UK", + "ccbysa3": "CC-BY-SA-3.0", + "ccbysa3.0": "CC-BY-SA-3.0", + "ccbysa3.0.0": "CC-BY-SA-3.0", + "ccbysa3.0.0at": "CC-BY-SA-3.0-AT", + "ccbysa3.0.0de": "CC-BY-SA-3.0-DE", + "ccbysa3.0at": "CC-BY-SA-3.0-AT", + "ccbysa3.0de": "CC-BY-SA-3.0-DE", + "ccbysa3at": "CC-BY-SA-3.0-AT", + "ccbysa3de": "CC-BY-SA-3.0-DE", + "ccbysa4": "CC-BY-SA-4.0", + "ccbysa4.0": "CC-BY-SA-4.0", + "ccbysa4.0.0": "CC-BY-SA-4.0", + "ccpddc": "CC-PDDC", + "cddl1": "CDDL-1.0", + "cddl1.0": "CDDL-1.0", + "cddl1.0.0": "CDDL-1.0", + "cddl1.1": "CDDL-1.1", + "cddl1.1.0": "CDDL-1.1", + "cdl1": "CDL-1.0", + "cdl1.0": "CDL-1.0", + "cdl1.0.0": "CDL-1.0", + "cdlapermissive1": "CDLA-Permissive-1.0", + "cdlapermissive1.0": "CDLA-Permissive-1.0", + "cdlapermissive1.0.0": "CDLA-Permissive-1.0", + "cdlapermissive2": "CDLA-Permissive-2.0", + "cdlapermissive2.0": "CDLA-Permissive-2.0", + "cdlapermissive2.0.0": "CDLA-Permissive-2.0", + "cdlasharing1": "CDLA-Sharing-1.0", + "cdlasharing1.0": "CDLA-Sharing-1.0", + "cdlasharing1.0.0": "CDLA-Sharing-1.0", + "cecill1": "CECILL-1.0", + "cecill1.0": "CECILL-1.0", + "cecill1.0.0": "CECILL-1.0", + "cecill1.1": "CECILL-1.1", + "cecill1.1.0": "CECILL-1.1", + "cecill2": "CECILL-2.0", + "cecill2.0": "CECILL-2.0", + "cecill2.0.0": "CECILL-2.0", + "cecill2.1": "CECILL-2.1", + "cecill2.1.0": "CECILL-2.1", + "cecillb": "CECILL-B", + "cecillc": "CECILL-C", + "cernohl1": "CERN-OHL-1.1", + "cernohl1.1": "CERN-OHL-1.1", + "cernohl1.1.0": "CERN-OHL-1.1", + "cernohl1.2": "CERN-OHL-1.2", + "cernohl1.2.0": "CERN-OHL-1.2", + "cernohlp2": "CERN-OHL-P-2.0", + "cernohlp2.0": "CERN-OHL-P-2.0", + "cernohlp2.0.0": "CERN-OHL-P-2.0", + "cernohls2": "CERN-OHL-S-2.0", + "cernohls2.0": "CERN-OHL-S-2.0", + "cernohls2.0.0": "CERN-OHL-S-2.0", + "cernohlw2": "CERN-OHL-W-2.0", + "cernohlw2.0": "CERN-OHL-W-2.0", + "cernohlw2.0.0": "CERN-OHL-W-2.0", + "cfitsio": "CFITSIO", + "checkmk": "checkmk", + "clartistic": "ClArtistic", + "clips": "Clips", + "cmumach": "CMU-Mach", + "cnrijython": "CNRI-Jython", + "cnripython": "CNRI-Python", + "cnripythongplcompatible": "CNRI-Python-GPL-Compatible", + "coil1": "COIL-1.0", + "coil1.0": "COIL-1.0", + "coil1.0.0": "COIL-1.0", + "communityspec1": "Community-Spec-1.0", + "communityspec1.0": "Community-Spec-1.0", + "communityspec1.0.0": "Community-Spec-1.0", + "condor1": "Condor-1.1", + "condor1.1": "Condor-1.1", + "condor1.1.0": "Condor-1.1", + "copyleftnext0.3": "copyleft-next-0.3.0", + "copyleftnext0.3.0": "copyleft-next-0.3.0", + "copyleftnext0.3.1": "copyleft-next-0.3.1", + "cornelllosslessjpeg": "Cornell-Lossless-JPEG", + "cpal1": "CPAL-1.0", + "cpal1.0": "CPAL-1.0", + "cpal1.0.0": "CPAL-1.0", + "cpl1": "CPL-1.0", + "cpl1.0": "CPL-1.0", + "cpl1.0.0": "CPL-1.0", + "cpol1": "CPOL-1.02", + "cpol1.02": "CPOL-1.02", + "cpol1.02.0": "CPOL-1.02", + "crossword": "Crossword", + "crystalstacker": "CrystalStacker", + "cuaopl1": "CUA-OPL-1.0", + "cuaopl1.0": "CUA-OPL-1.0", + "cuaopl1.0.0": "CUA-OPL-1.0", + "cube": "Cube", + "cuda1": "C-UDA-1.0", + "cuda1.0": "C-UDA-1.0", + "cuda1.0.0": "C-UDA-1.0", + "curl": "curl", + "dfsl1": "D-FSL-1.0", + "dfsl1.0": "D-FSL-1.0", + "dfsl1.0.0": "D-FSL-1.0", + "diffmark": "diffmark", + "dldeby2": "DL-DE-BY-2.0", + "dldeby2.0": "DL-DE-BY-2.0", + "dldeby2.0.0": "DL-DE-BY-2.0", + "doc": "DOC", + "dotseqn": "Dotseqn", + "drl1": "DRL-1.0", + "drl1.0": "DRL-1.0", + "drl1.0.0": "DRL-1.0", + "dsdp": "DSDP", + "dvipdfm": "dvipdfm", + "ecl1": "ECL-1.0", + "ecl1.0": "ECL-1.0", + "ecl1.0.0": "ECL-1.0", + "ecl2": "ECL-2.0", + "ecl2.0": "ECL-2.0", + "ecl2.0.0": "ECL-2.0", + "ecos2": "eCos-2.0", + "ecos2.0": "eCos-2.0", + "ecos2.0.0": "eCos-2.0", + "efl1": "EFL-1.0", + "efl1.0": "EFL-1.0", + "efl1.0.0": "EFL-1.0", + "efl2": "EFL-2.0", + "efl2.0": "EFL-2.0", + "efl2.0.0": "EFL-2.0", + "egenix": "eGenix", + "elastic2": "Elastic-2.0", + "elastic2.0": "Elastic-2.0", + "elastic2.0.0": "Elastic-2.0", + "entessa": "Entessa", + "epics": "EPICS", + "epl1": "EPL-1.0", + "epl1.0": "EPL-1.0", + "epl1.0.0": "EPL-1.0", + "epl2": "EPL-2.0", + "epl2.0": "EPL-2.0", + "epl2.0.0": "EPL-2.0", + "erlpl1": "ErlPL-1.1", + "erlpl1.1": "ErlPL-1.1", + "erlpl1.1.0": "ErlPL-1.1", + "etalab2": "etalab-2.0", + "etalab2.0": "etalab-2.0", + "etalab2.0.0": "etalab-2.0", + "eudatagrid": "EUDatagrid", + "eupl1": "EUPL-1.0", + "eupl1.0": "EUPL-1.0", + "eupl1.0.0": "EUPL-1.0", + "eupl1.1": "EUPL-1.1", + "eupl1.1.0": "EUPL-1.1", + "eupl1.2": "EUPL-1.2", + "eupl1.2.0": "EUPL-1.2", + "eurosym": "Eurosym", + "fair": "Fair", + "fdkaac": "FDK-AAC", + "frameworx1": "Frameworx-1.0", + "frameworx1.0": "Frameworx-1.0", + "frameworx1.0.0": "Frameworx-1.0", + "freebsddoc": "FreeBSD-DOC", + "freeimage": "FreeImage", + "fsfap": "FSFAP", + "fsful": "FSFUL", + "fsfullr": "FSFULLR", + "fsfullrwd": "FSFULLRWD", + "ftl": "FTL", + "gd": "GD", + "gfdl1": "GFDL-1.1-only", + "gfdl1.1": "GFDL-1.1-only", + "gfdl1.1.0": "GFDL-1.1-only", + "gfdl1.1.0invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1.1.0invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1.1.0noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1.1.0noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1.1.0only": "GFDL-1.1-only", + "gfdl1.1.0orlater": "GFDL-1.1-or-later", + "gfdl1.1invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1.1invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1.1noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1.1noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1.1only": "GFDL-1.1-only", + "gfdl1.1orlater": "GFDL-1.1-or-later", + "gfdl1.2": "GFDL-1.2-only", + "gfdl1.2.0": "GFDL-1.2-only", + "gfdl1.2.0invariantsonly": "GFDL-1.2-invariants-only", + "gfdl1.2.0invariantsorlater": "GFDL-1.2-invariants-or-later", + "gfdl1.2.0noinvariantsonly": "GFDL-1.2-no-invariants-only", + "gfdl1.2.0noinvariantsorlater": "GFDL-1.2-no-invariants-or-later", + "gfdl1.2.0only": "GFDL-1.2-only", + "gfdl1.2.0orlater": "GFDL-1.2-or-later", + "gfdl1.2invariantsonly": "GFDL-1.2-invariants-only", + "gfdl1.2invariantsorlater": "GFDL-1.2-invariants-or-later", + "gfdl1.2noinvariantsonly": "GFDL-1.2-no-invariants-only", + "gfdl1.2noinvariantsorlater": "GFDL-1.2-no-invariants-or-later", + "gfdl1.2only": "GFDL-1.2-only", + "gfdl1.2orlater": "GFDL-1.2-or-later", + "gfdl1.3": "GFDL-1.3-only", + "gfdl1.3.0": "GFDL-1.3-only", + "gfdl1.3.0invariantsonly": "GFDL-1.3-invariants-only", + "gfdl1.3.0invariantsorlater": "GFDL-1.3-invariants-or-later", + "gfdl1.3.0noinvariantsonly": "GFDL-1.3-no-invariants-only", + "gfdl1.3.0noinvariantsorlater": "GFDL-1.3-no-invariants-or-later", + "gfdl1.3.0only": "GFDL-1.3-only", + "gfdl1.3.0orlater": "GFDL-1.3-or-later", + "gfdl1.3invariantsonly": "GFDL-1.3-invariants-only", + "gfdl1.3invariantsorlater": "GFDL-1.3-invariants-or-later", + "gfdl1.3noinvariantsonly": "GFDL-1.3-no-invariants-only", + "gfdl1.3noinvariantsorlater": "GFDL-1.3-no-invariants-or-later", + "gfdl1.3only": "GFDL-1.3-only", + "gfdl1.3orlater": "GFDL-1.3-or-later", + "gfdl1invariantsonly": "GFDL-1.1-invariants-only", + "gfdl1invariantsorlater": "GFDL-1.1-invariants-or-later", + "gfdl1noinvariantsonly": "GFDL-1.1-no-invariants-only", + "gfdl1noinvariantsorlater": "GFDL-1.1-no-invariants-or-later", + "gfdl1only": "GFDL-1.1-only", + "gfdl1orlater": "GFDL-1.1-or-later", + "giftware": "Giftware", + "gl2.0.0ps": "GL2PS", + "gl2.0ps": "GL2PS", + "gl2ps": "GL2PS", + "glide": "Glide", + "glulxe": "Glulxe", + "glwtpl": "GLWTPL", + "gnuplot": "gnuplot", + "gpl1": "GPL-1.0-only", + "gpl1+": "GPL-1.0-or-later", + "gpl1.0": "GPL-1.0-only", + "gpl1.0+": "GPL-1.0-or-later", + "gpl1.0.0": "GPL-1.0-only", + "gpl1.0.0+": "GPL-1.0-or-later", + "gpl1.0.0only": "GPL-1.0-only", + "gpl1.0.0orlater": "GPL-1.0-or-later", + "gpl1.0only": "GPL-1.0-only", + "gpl1.0orlater": "GPL-1.0-or-later", + "gpl1only": "GPL-1.0-only", + "gpl1orlater": "GPL-1.0-or-later", + "gpl2": "GPL-2.0-only", + "gpl2+": "GPL-2.0-or-later", + "gpl2.0": "GPL-2.0-only", + "gpl2.0+": "GPL-2.0-or-later", + "gpl2.0.0": "GPL-2.0-only", + "gpl2.0.0+": "GPL-2.0-or-later", + "gpl2.0.0only": "GPL-2.0-only", + "gpl2.0.0orlater": "GPL-2.0-or-later", + "gpl2.0.0withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2.0.0withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2.0.0withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2.0.0withfontexception": "GPL-2.0-with-font-exception", + "gpl2.0.0withgccexception": "GPL-2.0-with-GCC-exception", + "gpl2.0only": "GPL-2.0-only", + "gpl2.0orlater": "GPL-2.0-or-later", + "gpl2.0withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2.0withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2.0withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2.0withfontexception": "GPL-2.0-with-font-exception", + "gpl2.0withgccexception": "GPL-2.0-with-GCC-exception", + "gpl2only": "GPL-2.0-only", + "gpl2orlater": "GPL-2.0-or-later", + "gpl2withautoconfexception": "GPL-2.0-with-autoconf-exception", + "gpl2withbisonexception": "GPL-2.0-with-bison-exception", + "gpl2withclasspathexception": "GPL-2.0-with-classpath-exception", + "gpl2withfontexception": "GPL-2.0-with-font-exception", + "gpl2withgccexception": "GPL-2.0-with-GCC-exception", + "gpl3": "GPL-3.0-only", + "gpl3+": "GPL-3.0-or-later", + "gpl3.0": "GPL-3.0-only", + "gpl3.0+": "GPL-3.0-or-later", + "gpl3.0.0": "GPL-3.0-only", + "gpl3.0.0+": "GPL-3.0-or-later", + "gpl3.0.0only": "GPL-3.0-only", + "gpl3.0.0orlater": "GPL-3.0-or-later", + "gpl3.0.0withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3.0.0withgccexception": "GPL-3.0-with-GCC-exception", + "gpl3.0only": "GPL-3.0-only", + "gpl3.0orlater": "GPL-3.0-or-later", + "gpl3.0withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3.0withgccexception": "GPL-3.0-with-GCC-exception", + "gpl3only": "GPL-3.0-only", + "gpl3orlater": "GPL-3.0-or-later", + "gpl3withautoconfexception": "GPL-3.0-with-autoconf-exception", + "gpl3withgccexception": "GPL-3.0-with-GCC-exception", + "graphicsgems": "Graphics-Gems", + "gsoap1.3.0b": "gSOAP-1.3b", + "gsoap1.3b": "gSOAP-1.3b", + "gsoap1b": "gSOAP-1.3b", + "haskellreport": "HaskellReport", + "hippocratic2": "Hippocratic-2.1", + "hippocratic2.1": "Hippocratic-2.1", + "hippocratic2.1.0": "Hippocratic-2.1", + "hp1986": "HP-1986", + "hp1986.0": "HP-1986", + "hp1986.0.0": "HP-1986", + "hpnd": "HPND", + "hpndexportus": "HPND-export-US", + "hpndmarkuskuhn": "HPND-Markus-Kuhn", + "hpndsellvariant": "HPND-sell-variant", + "hpndsellvariantmitdisclaimer": "HPND-sell-variant-MIT-disclaimer", + "htmltidy": "HTMLTIDY", + "ibmpibs": "IBM-pibs", + "icu": "ICU", + "ieccodecomponentseula": "IEC-Code-Components-EULA", + "ijg": "IJG", + "ijgshort": "IJG-short", + "imagemagick": "ImageMagick", + "imatix": "iMatix", + "imlib2": "Imlib2", + "imlib2.0": "Imlib2", + "imlib2.0.0": "Imlib2", + "infozip": "Info-ZIP", + "intel": "Intel", + "intelacpi": "Intel-ACPI", + "interbase1": "Interbase-1.0", + "interbase1.0": "Interbase-1.0", + "interbase1.0.0": "Interbase-1.0", + "ipa": "IPA", + "ipl1": "IPL-1.0", + "ipl1.0": "IPL-1.0", + "ipl1.0.0": "IPL-1.0", + "isc": "ISC", + "jam": "Jam", + "jasper2": "JasPer-2.0", + "jasper2.0": "JasPer-2.0", + "jasper2.0.0": "JasPer-2.0", + "jplimage": "JPL-image", + "jpnic": "JPNIC", + "json": "JSON", + "kazlib": "Kazlib", + "knuthctan": "Knuth-CTAN", + "lal1": "LAL-1.2", + "lal1.2": "LAL-1.2", + "lal1.2.0": "LAL-1.2", + "lal1.3": "LAL-1.3", + "lal1.3.0": "LAL-1.3", + "latex2.0.0e": "Latex2e", + "latex2.0e": "Latex2e", + "latex2e": "Latex2e", + "leptonica": "Leptonica", + "lgpl2": "LGPL-2.0-only", + "lgpl2+": "LGPL-2.0-or-later", + "lgpl2.0": "LGPL-2.0-only", + "lgpl2.0+": "LGPL-2.0-or-later", + "lgpl2.0.0": "LGPL-2.0-only", + "lgpl2.0.0+": "LGPL-2.0-or-later", + "lgpl2.0.0only": "LGPL-2.0-only", + "lgpl2.0.0orlater": "LGPL-2.0-or-later", + "lgpl2.0only": "LGPL-2.0-only", + "lgpl2.0orlater": "LGPL-2.0-or-later", + "lgpl2.1": "LGPL-2.1-only", + "lgpl2.1+": "LGPL-2.1-or-later", + "lgpl2.1.0": "LGPL-2.1-only", + "lgpl2.1.0+": "LGPL-2.1-or-later", + "lgpl2.1.0only": "LGPL-2.1-only", + "lgpl2.1.0orlater": "LGPL-2.1-or-later", + "lgpl2.1only": "LGPL-2.1-only", + "lgpl2.1orlater": "LGPL-2.1-or-later", + "lgpl2only": "LGPL-2.0-only", + "lgpl2orlater": "LGPL-2.0-or-later", + "lgpl3": "LGPL-3.0-only", + "lgpl3+": "LGPL-3.0-or-later", + "lgpl3.0": "LGPL-3.0-only", + "lgpl3.0+": "LGPL-3.0-or-later", + "lgpl3.0.0": "LGPL-3.0-only", + "lgpl3.0.0+": "LGPL-3.0-or-later", + "lgpl3.0.0only": "LGPL-3.0-only", + "lgpl3.0.0orlater": "LGPL-3.0-or-later", + "lgpl3.0only": "LGPL-3.0-only", + "lgpl3.0orlater": "LGPL-3.0-or-later", + "lgpl3only": "LGPL-3.0-only", + "lgpl3orlater": "LGPL-3.0-or-later", + "lgpllr": "LGPLLR", + "libpng": "Libpng", + "libpng2": "libpng-2.0", + "libpng2.0": "libpng-2.0", + "libpng2.0.0": "libpng-2.0", + "libselinux1": "libselinux-1.0", + "libselinux1.0": "libselinux-1.0", + "libselinux1.0.0": "libselinux-1.0", + "libtiff": "libtiff", + "libutildavidnugent": "libutil-David-Nugent", + "liliqp1": "LiLiQ-P-1.1", + "liliqp1.1": "LiLiQ-P-1.1", + "liliqp1.1.0": "LiLiQ-P-1.1", + "liliqr1": "LiLiQ-R-1.1", + "liliqr1.1": "LiLiQ-R-1.1", + "liliqr1.1.0": "LiLiQ-R-1.1", + "liliqrplus1": "LiLiQ-Rplus-1.1", + "liliqrplus1.1": "LiLiQ-Rplus-1.1", + "liliqrplus1.1.0": "LiLiQ-Rplus-1.1", + "linuxmanpagescopyleft": "Linux-man-pages-copyleft", + "linuxopenib": "Linux-OpenIB", + "loop": "LOOP", + "lpl1": "LPL-1.0", + "lpl1.0": "LPL-1.0", + "lpl1.0.0": "LPL-1.0", + "lpl1.02": "LPL-1.02", + "lpl1.02.0": "LPL-1.02", + "lppl1": "LPPL-1.0", + "lppl1.0": "LPPL-1.0", + "lppl1.0.0": "LPPL-1.0", + "lppl1.1": "LPPL-1.1", + "lppl1.1.0": "LPPL-1.1", + "lppl1.2": "LPPL-1.2", + "lppl1.2.0": "LPPL-1.2", + "lppl1.3.0a": "LPPL-1.3a", + "lppl1.3.0c": "LPPL-1.3c", + "lppl1.3a": "LPPL-1.3a", + "lppl1.3c": "LPPL-1.3c", + "lppl1a": "LPPL-1.3a", + "lppl1c": "LPPL-1.3c", + "lzmasdk9": "LZMA-SDK-9.22", + "lzmasdk9.11.0to9.20": "LZMA-SDK-9.11-to-9.20", + "lzmasdk9.11to9.20": "LZMA-SDK-9.11-to-9.20", + "lzmasdk9.22": "LZMA-SDK-9.22", + "lzmasdk9.22.0": "LZMA-SDK-9.22", + "lzmasdk9to9.20": "LZMA-SDK-9.11-to-9.20", + "makeindex": "MakeIndex", + "martinbirgmeier": "Martin-Birgmeier", + "minpack": "Minpack", + "miros": "MirOS", + "mit": "MIT", + "mit0": "MIT-0", + "mitadvertising": "MIT-advertising", + "mitcmu": "MIT-CMU", + "mitenna": "MIT-enna", + "mitfeh": "MIT-feh", + "mitmodernvariant": "MIT-Modern-Variant", + "mitnfa": "MITNFA", + "mitopengroup": "MIT-open-group", + "mitwu": "MIT-Wu", + "motosoto": "Motosoto", + "mpich2": "mpich2", + "mpich2.0": "mpich2", + "mpich2.0.0": "mpich2", + "mpipermissive": "mpi-permissive", + "mpl1": "MPL-1.0", + "mpl1.0": "MPL-1.0", + "mpl1.0.0": "MPL-1.0", + "mpl1.1": "MPL-1.1", + "mpl1.1.0": "MPL-1.1", + "mpl2": "MPL-2.0", + "mpl2.0": "MPL-2.0", + "mpl2.0.0": "MPL-2.0", + "mpl2.0.0nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mpl2.0nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mpl2nocopyleftexception": "MPL-2.0-no-copyleft-exception", + "mplus": "mplus", + "mslpl": "MS-LPL", + "mspl": "MS-PL", + "msrl": "MS-RL", + "mtll": "MTLL", + "mulanpsl1": "MulanPSL-1.0", + "mulanpsl1.0": "MulanPSL-1.0", + "mulanpsl1.0.0": "MulanPSL-1.0", + "mulanpsl2": "MulanPSL-2.0", + "mulanpsl2.0": "MulanPSL-2.0", + "mulanpsl2.0.0": "MulanPSL-2.0", + "multics": "Multics", + "mup": "Mup", + "naist2003": "NAIST-2003", + "naist2003.0": "NAIST-2003", + "naist2003.0.0": "NAIST-2003", + "nasa1": "NASA-1.3", + "nasa1.3": "NASA-1.3", + "nasa1.3.0": "NASA-1.3", + "naumen": "Naumen", + "nbpl1": "NBPL-1.0", + "nbpl1.0": "NBPL-1.0", + "nbpl1.0.0": "NBPL-1.0", + "ncgluk2": "NCGL-UK-2.0", + "ncgluk2.0": "NCGL-UK-2.0", + "ncgluk2.0.0": "NCGL-UK-2.0", + "ncsa": "NCSA", + "netcdf": "NetCDF", + "netsnmp": "Net-SNMP", + "newsletr": "Newsletr", + "ngpl": "NGPL", + "nicta1": "NICTA-1.0", + "nicta1.0": "NICTA-1.0", + "nicta1.0.0": "NICTA-1.0", + "nistpd": "NIST-PD", + "nistpdfallback": "NIST-PD-fallback", + "nlod1": "NLOD-1.0", + "nlod1.0": "NLOD-1.0", + "nlod1.0.0": "NLOD-1.0", + "nlod2": "NLOD-2.0", + "nlod2.0": "NLOD-2.0", + "nlod2.0.0": "NLOD-2.0", + "nlpl": "NLPL", + "nokia": "Nokia", + "nosl": "NOSL", + "noweb": "Noweb", + "npl1": "NPL-1.0", + "npl1.0": "NPL-1.0", + "npl1.0.0": "NPL-1.0", + "npl1.1": "NPL-1.1", + "npl1.1.0": "NPL-1.1", + "nposl3": "NPOSL-3.0", + "nposl3.0": "NPOSL-3.0", + "nposl3.0.0": "NPOSL-3.0", + "nrl": "NRL", + "ntp": "NTP", + "ntp0": "NTP-0", + "nunit": "Nunit", + "occtpl": "OCCT-PL", + "oclc2": "OCLC-2.0", + "oclc2.0": "OCLC-2.0", + "oclc2.0.0": "OCLC-2.0", + "odbl1": "ODbL-1.0", + "odbl1.0": "ODbL-1.0", + "odbl1.0.0": "ODbL-1.0", + "odcby1": "ODC-By-1.0", + "odcby1.0": "ODC-By-1.0", + "odcby1.0.0": "ODC-By-1.0", + "offis": "OFFIS", + "ofl1": "OFL-1.0", + "ofl1.0": "OFL-1.0", + "ofl1.0.0": "OFL-1.0", + "ofl1.0.0norfn": "OFL-1.0-no-RFN", + "ofl1.0.0rfn": "OFL-1.0-RFN", + "ofl1.0norfn": "OFL-1.0-no-RFN", + "ofl1.0rfn": "OFL-1.0-RFN", + "ofl1.1": "OFL-1.1", + "ofl1.1.0": "OFL-1.1", + "ofl1.1.0norfn": "OFL-1.1-no-RFN", + "ofl1.1.0rfn": "OFL-1.1-RFN", + "ofl1.1norfn": "OFL-1.1-no-RFN", + "ofl1.1rfn": "OFL-1.1-RFN", + "ofl1norfn": "OFL-1.0-no-RFN", + "ofl1rfn": "OFL-1.0-RFN", + "ogc1": "OGC-1.0", + "ogc1.0": "OGC-1.0", + "ogc1.0.0": "OGC-1.0", + "ogdltaiwan1": "OGDL-Taiwan-1.0", + "ogdltaiwan1.0": "OGDL-Taiwan-1.0", + "ogdltaiwan1.0.0": "OGDL-Taiwan-1.0", + "oglcanada2": "OGL-Canada-2.0", + "oglcanada2.0": "OGL-Canada-2.0", + "oglcanada2.0.0": "OGL-Canada-2.0", + "ogluk1": "OGL-UK-1.0", + "ogluk1.0": "OGL-UK-1.0", + "ogluk1.0.0": "OGL-UK-1.0", + "ogluk2": "OGL-UK-2.0", + "ogluk2.0": "OGL-UK-2.0", + "ogluk2.0.0": "OGL-UK-2.0", + "ogluk3": "OGL-UK-3.0", + "ogluk3.0": "OGL-UK-3.0", + "ogluk3.0.0": "OGL-UK-3.0", + "ogtsl": "OGTSL", + "oldap1": "OLDAP-1.1", + "oldap1.1": "OLDAP-1.1", + "oldap1.1.0": "OLDAP-1.1", + "oldap1.2": "OLDAP-1.2", + "oldap1.2.0": "OLDAP-1.2", + "oldap1.3": "OLDAP-1.3", + "oldap1.3.0": "OLDAP-1.3", + "oldap1.4": "OLDAP-1.4", + "oldap1.4.0": "OLDAP-1.4", + "oldap2": "OLDAP-2.0", + "oldap2.0": "OLDAP-2.0", + "oldap2.0.0": "OLDAP-2.0", + "oldap2.0.1": "OLDAP-2.0.1", + "oldap2.1": "OLDAP-2.1", + "oldap2.1.0": "OLDAP-2.1", + "oldap2.2": "OLDAP-2.2", + "oldap2.2.0": "OLDAP-2.2", + "oldap2.2.1": "OLDAP-2.2.1", + "oldap2.2.2": "OLDAP-2.2.2", + "oldap2.3": "OLDAP-2.3", + "oldap2.3.0": "OLDAP-2.3", + "oldap2.4": "OLDAP-2.4", + "oldap2.4.0": "OLDAP-2.4", + "oldap2.5": "OLDAP-2.5", + "oldap2.5.0": "OLDAP-2.5", + "oldap2.6": "OLDAP-2.6", + "oldap2.6.0": "OLDAP-2.6", + "oldap2.7": "OLDAP-2.7", + "oldap2.7.0": "OLDAP-2.7", + "oldap2.8": "OLDAP-2.8", + "oldap2.8.0": "OLDAP-2.8", + "oml": "OML", + "openpbs2": "OpenPBS-2.3", + "openpbs2.3": "OpenPBS-2.3", + "openpbs2.3.0": "OpenPBS-2.3", + "openssl": "OpenSSL", + "opl1": "OPL-1.0", + "opl1.0": "OPL-1.0", + "opl1.0.0": "OPL-1.0", + "opubl1": "OPUBL-1.0", + "opubl1.0": "OPUBL-1.0", + "opubl1.0.0": "OPUBL-1.0", + "osetpl2": "OSET-PL-2.1", + "osetpl2.1": "OSET-PL-2.1", + "osetpl2.1.0": "OSET-PL-2.1", + "osl1": "OSL-1.0", + "osl1.0": "OSL-1.0", + "osl1.0.0": "OSL-1.0", + "osl1.1": "OSL-1.1", + "osl1.1.0": "OSL-1.1", + "osl2": "OSL-2.0", + "osl2.0": "OSL-2.0", + "osl2.0.0": "OSL-2.0", + "osl2.1": "OSL-2.1", + "osl2.1.0": "OSL-2.1", + "osl3": "OSL-3.0", + "osl3.0": "OSL-3.0", + "osl3.0.0": "OSL-3.0", + "ouda1": "O-UDA-1.0", + "ouda1.0": "O-UDA-1.0", + "ouda1.0.0": "O-UDA-1.0", + "parity6": "Parity-6.0.0", + "parity6.0": "Parity-6.0.0", + "parity6.0.0": "Parity-6.0.0", + "parity7": "Parity-7.0.0", + "parity7.0": "Parity-7.0.0", + "parity7.0.0": "Parity-7.0.0", + "pddl1": "PDDL-1.0", + "pddl1.0": "PDDL-1.0", + "pddl1.0.0": "PDDL-1.0", + "php3": "PHP-3.0", + "php3.0": "PHP-3.0", + "php3.0.0": "PHP-3.0", + "php3.01": "PHP-3.01", + "php3.01.0": "PHP-3.01", + "plexus": "Plexus", + "polyformnoncommercial1": "PolyForm-Noncommercial-1.0.0", + "polyformnoncommercial1.0": "PolyForm-Noncommercial-1.0.0", + "polyformnoncommercial1.0.0": "PolyForm-Noncommercial-1.0.0", + "polyformsmallbusiness1": "PolyForm-Small-Business-1.0.0", + "polyformsmallbusiness1.0": "PolyForm-Small-Business-1.0.0", + "polyformsmallbusiness1.0.0": "PolyForm-Small-Business-1.0.0", + "postgresql": "PostgreSQL", + "psf2": "PSF-2.0", + "psf2.0": "PSF-2.0", + "psf2.0.0": "PSF-2.0", + "psfrag": "psfrag", + "psutils": "psutils", + "python2": "Python-2.0", + "python2.0": "Python-2.0", + "python2.0.0": "Python-2.0", + "python2.0.1": "Python-2.0.1", + "qhull": "Qhull", + "qpl1": "QPL-1.0", + "qpl1.0": "QPL-1.0", + "qpl1.0.0": "QPL-1.0", + "qpl1.0.0inria2004": "QPL-1.0-INRIA-2004", + "qpl1.0inria2004": "QPL-1.0-INRIA-2004", + "qpl1inria2004": "QPL-1.0-INRIA-2004", + "rdisc": "Rdisc", + "rhecos1": "RHeCos-1.1", + "rhecos1.1": "RHeCos-1.1", + "rhecos1.1.0": "RHeCos-1.1", + "rpl1": "RPL-1.1", + "rpl1.1": "RPL-1.1", + "rpl1.1.0": "RPL-1.1", + "rpl1.5": "RPL-1.5", + "rpl1.5.0": "RPL-1.5", + "rpsl1": "RPSL-1.0", + "rpsl1.0": "RPSL-1.0", + "rpsl1.0.0": "RPSL-1.0", + "rsamd": "RSA-MD", + "rscpl": "RSCPL", + "ruby": "Ruby", + "saxpath": "Saxpath", + "saxpd": "SAX-PD", + "scea": "SCEA", + "schemereport": "SchemeReport", + "sendmail": "Sendmail", + "sendmail8": "Sendmail-8.23", + "sendmail8.23": "Sendmail-8.23", + "sendmail8.23.0": "Sendmail-8.23", + "sgib1": "SGI-B-1.0", + "sgib1.0": "SGI-B-1.0", + "sgib1.0.0": "SGI-B-1.0", + "sgib1.1": "SGI-B-1.1", + "sgib1.1.0": "SGI-B-1.1", + "sgib2": "SGI-B-2.0", + "sgib2.0": "SGI-B-2.0", + "sgib2.0.0": "SGI-B-2.0", + "shl0.5": "SHL-0.5", + "shl0.5.0": "SHL-0.5", + "shl0.51": "SHL-0.51", + "shl0.51.0": "SHL-0.51", + "simpl2": "SimPL-2.0", + "simpl2.0": "SimPL-2.0", + "simpl2.0.0": "SimPL-2.0", + "sissl": "SISSL", + "sissl1": "SISSL-1.2", + "sissl1.2": "SISSL-1.2", + "sissl1.2.0": "SISSL-1.2", + "sleepycat": "Sleepycat", + "smlnj": "SMLNJ", + "smppl": "SMPPL", + "snia": "SNIA", + "snprintf": "snprintf", + "spencer86": "Spencer-86", + "spencer86.0": "Spencer-86", + "spencer86.0.0": "Spencer-86", + "spencer94": "Spencer-94", + "spencer94.0": "Spencer-94", + "spencer94.0.0": "Spencer-94", + "spencer99": "Spencer-99", + "spencer99.0": "Spencer-99", + "spencer99.0.0": "Spencer-99", + "spl1": "SPL-1.0", + "spl1.0": "SPL-1.0", + "spl1.0.0": "SPL-1.0", + "sshopenssh": "SSH-OpenSSH", + "sshshort": "SSH-short", + "sspl1": "SSPL-1.0", + "sspl1.0": "SSPL-1.0", + "sspl1.0.0": "SSPL-1.0", + "standardmlnj": "SMLNJ", + "sugarcrm1": "SugarCRM-1.1.3", + "sugarcrm1.1": "SugarCRM-1.1.3", + "sugarcrm1.1.3": "SugarCRM-1.1.3", + "sunpro": "SunPro", + "swl": "SWL", + "symlinks": "Symlinks", + "taprohl1": "TAPR-OHL-1.0", + "taprohl1.0": "TAPR-OHL-1.0", + "taprohl1.0.0": "TAPR-OHL-1.0", + "tcl": "TCL", + "tcpwrappers": "TCP-wrappers", + "tmate": "TMate", + "torque1": "TORQUE-1.1", + "torque1.1": "TORQUE-1.1", + "torque1.1.0": "TORQUE-1.1", + "tosl": "TOSL", + "tpdl": "TPDL", + "tpl1": "TPL-1.0", + "tpl1.0": "TPL-1.0", + "tpl1.0.0": "TPL-1.0", + "ttwl": "TTWL", + "tuberlin1": "TU-Berlin-1.0", + "tuberlin1.0": "TU-Berlin-1.0", + "tuberlin1.0.0": "TU-Berlin-1.0", + "tuberlin2": "TU-Berlin-2.0", + "tuberlin2.0": "TU-Berlin-2.0", + "tuberlin2.0.0": "TU-Berlin-2.0", + "ucar": "UCAR", + "ucl1": "UCL-1.0", + "ucl1.0": "UCL-1.0", + "ucl1.0.0": "UCL-1.0", + "unicodedfs2015": "Unicode-DFS-2015", + "unicodedfs2015.0": "Unicode-DFS-2015", + "unicodedfs2015.0.0": "Unicode-DFS-2015", + "unicodedfs2016": "Unicode-DFS-2016", + "unicodedfs2016.0": "Unicode-DFS-2016", + "unicodedfs2016.0.0": "Unicode-DFS-2016", + "unicodetou": "Unicode-TOU", + "unlicense": "Unlicense", + "upl1": "UPL-1.0", + "upl1.0": "UPL-1.0", + "upl1.0.0": "UPL-1.0", + "vim": "Vim", + "vostrom": "VOSTROM", + "vsl1": "VSL-1.0", + "vsl1.0": "VSL-1.0", + "vsl1.0.0": "VSL-1.0", + "w3.0.0c": "W3C", + "w3.0.0c19980720": "W3C-19980720", + "w3.0.0c20150513": "W3C-20150513", + "w3.0.0m": "w3m", + "w3.0c": "W3C", + "w3.0c19980720": "W3C-19980720", + "w3.0c20150513": "W3C-20150513", + "w3.0m": "w3m", + "w3c": "W3C", + "w3c19980720": "W3C-19980720", + "w3c20150513": "W3C-20150513", + "w3m": "w3m", + "watcom1": "Watcom-1.0", + "watcom1.0": "Watcom-1.0", + "watcom1.0.0": "Watcom-1.0", + "wsuipa": "Wsuipa", + "wtfpl": "WTFPL", + "wxwindows": "wxWindows", + "x11": "X11", + "x11.0": "X11", + "x11.0.0": "X11", + "x11.0.0distributemodificationsvariant": "X11-distribute-modifications-variant", + "x11.0distributemodificationsvariant": "X11-distribute-modifications-variant", + "x11distributemodificationsvariant": "X11-distribute-modifications-variant", + "xerox": "Xerox", + "xfree861": "XFree86-1.1", + "xfree861.1": "XFree86-1.1", + "xfree861.1.0": "XFree86-1.1", + "xinetd": "xinetd", + "xlock": "xlock", + "xnet": "Xnet", + "xpp": "xpp", + "xskat": "XSkat", + "ypl1": "YPL-1.0", + "ypl1.0": "YPL-1.0", + "ypl1.0.0": "YPL-1.0", + "ypl1.1": "YPL-1.1", + "ypl1.1.0": "YPL-1.1", + "zed": "Zed", + "zend2": "Zend-2.0", + "zend2.0": "Zend-2.0", + "zend2.0.0": "Zend-2.0", + "zimbra1": "Zimbra-1.3", + "zimbra1.3": "Zimbra-1.3", + "zimbra1.3.0": "Zimbra-1.3", + "zimbra1.4": "Zimbra-1.4", + "zimbra1.4.0": "Zimbra-1.4", + "zlib": "Zlib", + "zlibacknowledgement": "zlib-acknowledgement", + "zpl1": "ZPL-1.1", + "zpl1.1": "ZPL-1.1", + "zpl1.1.0": "ZPL-1.1", + "zpl2": "ZPL-2.0", + "zpl2.0": "ZPL-2.0", + "zpl2.0.0": "ZPL-2.0", + "zpl2.1": "ZPL-2.1", + "zpl2.1.0": "ZPL-2.1", } diff --git a/internal/spdxlicense/license_list_test.go b/internal/spdxlicense/license_list_test.go index 7751f1a7c82..e50111023f9 100644 --- a/internal/spdxlicense/license_list_test.go +++ b/internal/spdxlicense/license_list_test.go @@ -9,8 +9,8 @@ import ( func TestLicenceListIDs(t *testing.T) { // do a sanity check on the generated data assert.Equal(t, "0BSD", licenseIDs["0bsd"]) - assert.Equal(t, "ZPL-2.1", licenseIDs["zpl-2.1"]) - assert.Equal(t, "GPL-2.0-only", licenseIDs["gpl-2"]) - assert.Equal(t, "GPL-2.0-or-later", licenseIDs["gpl-2+"]) + assert.Equal(t, "ZPL-2.1", licenseIDs["zpl2.1"]) + assert.Equal(t, "GPL-2.0-only", licenseIDs["gpl2"]) + assert.Equal(t, "GPL-2.0-or-later", licenseIDs["gpl2+"]) assert.NotEmpty(t, Version) } diff --git a/internal/spdxlicense/license_test.go b/internal/spdxlicense/license_test.go index 23a54a87cf3..e1444a62c6c 100644 --- a/internal/spdxlicense/license_test.go +++ b/internal/spdxlicense/license_test.go @@ -6,83 +6,70 @@ import ( "github.com/stretchr/testify/assert" ) -func TestIDParse(t *testing.T) { +func TestSPDXIDRecognition(t *testing.T) { var tests = []struct { shortName string id string - other string found bool }{ { "GPL-1-only", "GPL-1.0-only", - "", + true, + }, + { + "gpl1", + "GPL-1.0-only", + true, + }, + { + "gpl-1", + "GPL-1.0-only", true, }, { "GPL-2", "GPL-2.0-only", - "", true, }, { "GPL-2+", "GPL-2.0-or-later", - "", true, }, { "GPL-3.0.0-or-later", "GPL-3.0-or-later", - "", true, }, { "GPL-3-with-autoconf-exception", "GPL-3.0-with-autoconf-exception", - "", true, }, { "CC-by-nc-3-de", "CC-BY-NC-3.0-DE", - "", true, }, // the below few cases are NOT expected, however, seem unavoidable given the current approach - { - "w3c-20150513.0.0", - "W3C-20150513", - "", - true, - }, { "spencer-86.0.0", "Spencer-86", - "", true, }, { "unicode-dfs-2015.0.0", "Unicode-DFS-2015", - "", true, }, { "Unknown", "", - "Unknown", - true, - }, - { - " ", - "", - "", false, }, { - "AND", - "", + " ", "", false, }, @@ -90,10 +77,9 @@ func TestIDParse(t *testing.T) { for _, test := range tests { t.Run(test.shortName, func(t *testing.T) { - value, other, exists := ID(test.shortName) + value, exists := ID(test.shortName) assert.Equal(t, test.found, exists) assert.Equal(t, test.id, value) - assert.Equal(t, test.other, other) }) } } diff --git a/syft/formats/common/cyclonedxhelpers/licenses.go b/syft/formats/common/cyclonedxhelpers/licenses.go index 7518b0976b1..ed2580fd10f 100644 --- a/syft/formats/common/cyclonedxhelpers/licenses.go +++ b/syft/formats/common/cyclonedxhelpers/licenses.go @@ -10,14 +10,21 @@ import ( func encodeLicenses(p pkg.Package) *cyclonedx.Licenses { lc := cyclonedx.Licenses{} for _, licenseName := range p.Licenses { - if value, other, exists := spdxlicense.ID(licenseName); exists { + if value, exists := spdxlicense.ID(licenseName); exists { lc = append(lc, cyclonedx.LicenseChoice{ License: &cyclonedx.License{ - ID: value, - Name: other, + ID: value, }, }) + continue } + + // not found so append the licenseName as is + lc = append(lc, cyclonedx.LicenseChoice{ + License: &cyclonedx.License{ + Name: licenseName, + }, + }) } if len(lc) > 0 { return &lc diff --git a/syft/formats/common/spdxhelpers/license.go b/syft/formats/common/spdxhelpers/license.go index 68220183831..9494d3b0730 100644 --- a/syft/formats/common/spdxhelpers/license.go +++ b/syft/formats/common/spdxhelpers/license.go @@ -39,12 +39,12 @@ func License(p pkg.Package) string { func parseLicenses(raw []string) (parsedLicenses []string) { for _, l := range raw { - if value, other, exists := spdxlicense.ID(l); exists { - parsed := value - if other != "" { - parsed = spdxlicense.LicenseRefPrefix + other - } - parsedLicenses = append(parsedLicenses, parsed) + if value, exists := spdxlicense.ID(l); exists { + parsedLicenses = append(parsedLicenses, value) + } else { + // we did not find a valid SPDX license ID so treat as separate license + otherLicense := spdxlicense.LicenseRefPrefix + l + parsedLicenses = append(parsedLicenses, otherLicense) } } return