From e5b46402f8d2ee6ea745d1d7a02f2c5eb8b917a3 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Tue, 4 Dec 2018 14:13:37 +0000 Subject: [PATCH] Fix #308: Licenses --- .gitignore | 1 + api/config/api_urls.py | 1 + api/funkwhale_api/federation/serializers.py | 6 + api/funkwhale_api/music/factories.py | 34 +- api/funkwhale_api/music/filters.py | 1 + api/funkwhale_api/music/licenses.py | 363 ++ .../management/commands/check_licenses.py | 34 + api/funkwhale_api/music/metadata.py | 29 +- .../migrations/0034_auto_20181127_0325.py | 36 + .../migrations/0035_auto_20181203_1515.py | 24 + api/funkwhale_api/music/models.py | 46 + api/funkwhale_api/music/serializers.py | 19 + api/funkwhale_api/music/tasks.py | 5 + api/funkwhale_api/music/views.py | 27 +- api/requirements/test.txt | 1 + api/tests/federation/test_serializers.py | 4 +- api/tests/music/licenses.json | 4539 +++++++++++++++++ api/tests/music/test.mp3 | Bin 297745 -> 297745 bytes api/tests/music/test.ogg | Bin 3459481 -> 3459481 bytes api/tests/music/test.opus | Bin 3019841 -> 3024001 bytes api/tests/music/test_licenses.py | 193 + api/tests/music/test_metadata.py | 13 + api/tests/music/test_models.py | 12 + api/tests/music/test_serializers.py | 35 +- api/tests/music/test_tasks.py | 12 +- api/tests/music/test_views.py | 31 +- changes/changelog.d/308.feature | 25 + front/src/App.vue | 69 +- front/src/components/library/Track.vue | 101 +- 29 files changed, 5595 insertions(+), 66 deletions(-) create mode 100644 api/funkwhale_api/music/licenses.py create mode 100644 api/funkwhale_api/music/management/commands/check_licenses.py create mode 100644 api/funkwhale_api/music/migrations/0034_auto_20181127_0325.py create mode 100644 api/funkwhale_api/music/migrations/0035_auto_20181203_1515.py create mode 100644 api/tests/music/licenses.json create mode 100644 api/tests/music/test_licenses.py create mode 100644 changes/changelog.d/308.feature diff --git a/.gitignore b/.gitignore index 398338166..44459f0f8 100644 --- a/.gitignore +++ b/.gitignore @@ -94,3 +94,4 @@ docs/swagger _build front/src/translations.json front/locales/en_US/LC_MESSAGES/app.po +*.prof diff --git a/api/config/api_urls.py b/api/config/api_urls.py index fd076c8e2..16f21d346 100644 --- a/api/config/api_urls.py +++ b/api/config/api_urls.py @@ -19,6 +19,7 @@ router.register(r"libraries", views.LibraryViewSet, "libraries") router.register(r"listen", views.ListenViewSet, "listen") router.register(r"artists", views.ArtistViewSet, "artists") router.register(r"albums", views.AlbumViewSet, "albums") +router.register(r"licenses", views.LicenseViewSet, "licenses") router.register(r"playlists", playlists_views.PlaylistViewSet, "playlists") router.register( r"playlist-tracks", playlists_views.PlaylistTrackViewSet, "playlist-tracks" diff --git a/api/funkwhale_api/federation/serializers.py b/api/funkwhale_api/federation/serializers.py index 9f4bad010..40d4833c8 100644 --- a/api/funkwhale_api/federation/serializers.py +++ b/api/funkwhale_api/federation/serializers.py @@ -731,6 +731,8 @@ class TrackSerializer(MusicEntitySerializer): position = serializers.IntegerField(min_value=0, allow_null=True, required=False) artists = serializers.ListField(child=ArtistSerializer(), min_length=1) album = AlbumSerializer() + license = serializers.URLField(allow_null=True, required=False) + copyright = serializers.CharField(allow_null=True, required=False) def to_representation(self, instance): d = { @@ -740,6 +742,10 @@ class TrackSerializer(MusicEntitySerializer): "published": instance.creation_date.isoformat(), "musicbrainzId": str(instance.mbid) if instance.mbid else None, "position": instance.position, + "license": instance.local_license["identifiers"][0] + if instance.local_license + else None, + "copyright": instance.copyright if instance.copyright else None, "artists": [ ArtistSerializer( instance.artist, context={"include_ap_context": False} diff --git a/api/funkwhale_api/music/factories.py b/api/funkwhale_api/music/factories.py index 0ec3fdb22..a06ada808 100644 --- a/api/funkwhale_api/music/factories.py +++ b/api/funkwhale_api/music/factories.py @@ -4,9 +4,9 @@ import factory from funkwhale_api.factories import ManyToManyFromList, registry from funkwhale_api.federation import factories as federation_factories +from funkwhale_api.music import licenses from funkwhale_api.users import factories as users_factories - SAMPLES_PATH = os.path.join( os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))), "tests", @@ -30,6 +30,29 @@ def playable_factory(field): return inner +def deduce_from_conf(field): + @factory.lazy_attribute + def inner(self): + return licenses.LICENSES_BY_ID[self.code][field] + + return inner + + +@registry.register +class LicenseFactory(factory.django.DjangoModelFactory): + code = "cc-by-4.0" + url = deduce_from_conf("url") + commercial = deduce_from_conf("commercial") + redistribute = deduce_from_conf("redistribute") + copyleft = deduce_from_conf("copyleft") + attribution = deduce_from_conf("attribution") + derivative = deduce_from_conf("derivative") + + class Meta: + model = "music.License" + django_get_or_create = ("code",) + + @registry.register class ArtistFactory(factory.django.DjangoModelFactory): name = factory.Faker("name") @@ -70,6 +93,15 @@ class TrackFactory(factory.django.DjangoModelFactory): class Meta: model = "music.Track" + @factory.post_generation + def license(self, created, extracted, **kwargs): + if not created: + return + + if extracted: + self.license = LicenseFactory(code=extracted) + self.save() + @registry.register class UploadFactory(factory.django.DjangoModelFactory): diff --git a/api/funkwhale_api/music/filters.py b/api/funkwhale_api/music/filters.py index a0635368d..437b9222f 100644 --- a/api/funkwhale_api/music/filters.py +++ b/api/funkwhale_api/music/filters.py @@ -34,6 +34,7 @@ class TrackFilter(filters.FilterSet): "playable": ["exact"], "artist": ["exact"], "album": ["exact"], + "license": ["exact"], } def filter_playable(self, queryset, name, value): diff --git a/api/funkwhale_api/music/licenses.py b/api/funkwhale_api/music/licenses.py new file mode 100644 index 000000000..5690a912f --- /dev/null +++ b/api/funkwhale_api/music/licenses.py @@ -0,0 +1,363 @@ +import logging +import re + +from django.db import transaction + +from . import models + +logger = logging.getLogger(__name__) + +MODEL_FIELDS = [ + "redistribute", + "derivative", + "attribution", + "copyleft", + "commercial", + "url", +] + + +@transaction.atomic +def load(data): + """ + Load/update database objects with our hardcoded data + """ + existing = models.License.objects.all() + existing_by_code = {e.code: e for e in existing} + to_create = [] + + for row in data: + try: + license = existing_by_code[row["code"]] + except KeyError: + logger.info("Loading new license: {}".format(row["code"])) + to_create.append( + models.License(code=row["code"], **{f: row[f] for f in MODEL_FIELDS}) + ) + else: + logger.info("Updating license: {}".format(row["code"])) + stored = [getattr(license, f) for f in MODEL_FIELDS] + wanted = [row[f] for f in MODEL_FIELDS] + if wanted == stored: + continue + # the object in database needs an update + for f in MODEL_FIELDS: + setattr(license, f, row[f]) + + license.save() + + models.License.objects.bulk_create(to_create) + return sorted(models.License.objects.all(), key=lambda o: o.code) + + +_cache = None + + +def match(*values): + """ + Given a string, extracted from music file tags, return corresponding License + instance, if found + """ + global _cache + for value in values: + if not value: + continue + + # we are looking for the first url in our value + # This regex is not perfect, but it's good enough for now + urls = re.findall( + r"http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+", + value, + ) + if not urls: + logger.debug('Impossible to guess license from string "{}"'.format(value)) + continue + url = urls[0] + if _cache: + existing = _cache + else: + existing = load(LICENSES) + _cache = existing + for license in existing: + if license.conf is None: + continue + for i in license.conf["identifiers"]: + if match_urls(url, i): + return license + + +def match_urls(*urls): + """ + We want to ensure the two url match but don't care for protocol + or trailing slashes + """ + urls = [u.rstrip("/") for u in urls] + urls = [u.lstrip("http://") for u in urls] + urls = [u.lstrip("https://") for u in urls] + return len(set(urls)) == 1 + + +def get_cc_license(version, perks, country=None, country_name=None): + if len(perks) == 0: + raise ValueError("No perks!") + + url_template = "//creativecommons.org/licenses/{type}/{version}/" + + code_parts = [] + name_parts = [] + perks_data = [ + ("by", "Attribution"), + ("nc", "NonCommercial"), + ("sa", "ShareAlike"), + ("nd", "NoDerivatives"), + ] + for perk, name in perks_data: + if perk in perks: + code_parts.append(perk) + name_parts.append(name) + url = url_template.format(version=version, type="-".join(code_parts)) + code_parts.append(version) + name = "Creative commons - {perks} {version}".format( + perks="-".join(name_parts), version=version + ) + if country: + code_parts.append(country) + name += " {}".format(country_name) + url += country + "/" + data = { + "name": name, + "code": "cc-{}".format("-".join(code_parts)), + "redistribute": True, + "commercial": "nc" not in perks, + "derivative": "nd" not in perks, + "copyleft": "sa" in perks, + "attribution": "by" in perks, + "url": "https:" + url, + "identifiers": ["http:" + url], + } + + return data + + +COUNTRIES = { + "ar": "Argentina", + "au": "Australia", + "at": "Austria", + "be": "Belgium", + "br": "Brazil", + "bg": "Bulgaria", + "ca": "Canada", + "cl": "Chile", + "cn": "China Mainland", + "co": "Colombia", + "cr": "Costa Rica", + "hr": "Croatia", + "cz": "Czech Republic", + "dk": "Denmark", + "ec": "Ecuador", + "eg": "Egypt", + "ee": "Estonia", + "fi": "Finland", + "fr": "France", + "de": "Germany", + "gr": "Greece", + "gt": "Guatemala", + "hk": "Hong Kong", + "hu": "Hungary", + "igo": "IGO", + "in": "India", + "ie": "Ireland", + "il": "Israel", + "it": "Italy", + "jp": "Japan", + "lu": "Luxembourg", + "mk": "Macedonia", + "my": "Malaysia", + "mt": "Malta", + "mx": "Mexico", + "nl": "Netherlands", + "nz": "New Zealand", + "no": "Norway", + "pe": "Peru", + "ph": "Philippines", + "pl": "Poland", + "pt": "Portugal", + "pr": "Puerto Rico", + "ro": "Romania", + "rs": "Serbia", + "sg": "Singapore", + "si": "Slovenia", + "za": "South Africa", + "kr": "South Korea", + "es": "Spain", + "se": "Sweden", + "ch": "Switzerland", + "tw": "Taiwan", + "th": "Thailand", + "uk": "UK: England & Wales", + "scotland": "UK: Scotland", + "ug": "Uganda", + "us": "United States", + "ve": "Venezuela", + "vn": "Vietnam", +} +CC_30_COUNTRIES = [ + "at", + "au", + "br", + "ch", + "cl", + "cn", + "cr", + "cz", + "de", + "ec", + "ee", + "eg", + "es", + "fr", + "gr", + "gt", + "hk", + "hr", + "ie", + "igo", + "it", + "lu", + "nl", + "no", + "nz", + "ph", + "pl", + "pr", + "pt", + "ro", + "rs", + "sg", + "th", + "tw", + "ug", + "us", + "ve", + "vn", + "za", +] + +CC_25_COUNTRIES = [ + "ar", + "bg", + "ca", + "co", + "dk", + "hu", + "il", + "in", + "mk", + "mt", + "mx", + "my", + "pe", + "scotland", +] + +LICENSES = [ + # a non-exhaustive list: http://musique-libre.org/doc/le-tableau-des-licences-libres-et-ouvertes-de-dogmazic/ + { + "code": "cc0-1.0", + "name": "CC0 - Public domain", + "redistribute": True, + "derivative": True, + "commercial": True, + "attribution": False, + "copyleft": False, + "url": "https://creativecommons.org/publicdomain/zero/1.0/", + "identifiers": [ + # note the http here. + # This is the kind of URL that is embedded in music files metadata + "http://creativecommons.org/publicdomain/zero/1.0/" + ], + }, + # Creative commons version 4.0 + get_cc_license(version="4.0", perks=["by"]), + get_cc_license(version="4.0", perks=["by", "sa"]), + get_cc_license(version="4.0", perks=["by", "nc"]), + get_cc_license(version="4.0", perks=["by", "nc", "sa"]), + get_cc_license(version="4.0", perks=["by", "nc", "nd"]), + get_cc_license(version="4.0", perks=["by", "nd"]), + # Creative commons version 3.0 + get_cc_license(version="3.0", perks=["by"]), + get_cc_license(version="3.0", perks=["by", "sa"]), + get_cc_license(version="3.0", perks=["by", "nc"]), + get_cc_license(version="3.0", perks=["by", "nc", "sa"]), + get_cc_license(version="3.0", perks=["by", "nc", "nd"]), + get_cc_license(version="3.0", perks=["by", "nd"]), + # Creative commons version 2.5 + get_cc_license(version="2.5", perks=["by"]), + get_cc_license(version="2.5", perks=["by", "sa"]), + get_cc_license(version="2.5", perks=["by", "nc"]), + get_cc_license(version="2.5", perks=["by", "nc", "sa"]), + get_cc_license(version="2.5", perks=["by", "nc", "nd"]), + get_cc_license(version="2.5", perks=["by", "nd"]), + # Creative commons version 2.0 + get_cc_license(version="2.0", perks=["by"]), + get_cc_license(version="2.0", perks=["by", "sa"]), + get_cc_license(version="2.0", perks=["by", "nc"]), + get_cc_license(version="2.0", perks=["by", "nc", "sa"]), + get_cc_license(version="2.0", perks=["by", "nc", "nd"]), + get_cc_license(version="2.0", perks=["by", "nd"]), + # Creative commons version 1.0 + get_cc_license(version="1.0", perks=["by"]), + get_cc_license(version="1.0", perks=["by", "sa"]), + get_cc_license(version="1.0", perks=["by", "nc"]), + get_cc_license(version="1.0", perks=["by", "nc", "sa"]), + get_cc_license(version="1.0", perks=["by", "nc", "nd"]), + get_cc_license(version="1.0", perks=["by", "nd"]), +] + +# generate ported (by country) CC licenses: + +for country in CC_30_COUNTRIES: + name = COUNTRIES[country] + LICENSES += [ + get_cc_license(version="3.0", perks=["by"], country=country, country_name=name), + get_cc_license( + version="3.0", perks=["by", "sa"], country=country, country_name=name + ), + get_cc_license( + version="3.0", perks=["by", "nc"], country=country, country_name=name + ), + get_cc_license( + version="3.0", perks=["by", "nc", "sa"], country=country, country_name=name + ), + get_cc_license( + version="3.0", perks=["by", "nc", "nd"], country=country, country_name=name + ), + get_cc_license( + version="3.0", perks=["by", "nd"], country=country, country_name=name + ), + ] + + +for country in CC_25_COUNTRIES: + name = COUNTRIES[country] + LICENSES += [ + get_cc_license(version="2.5", perks=["by"], country=country, country_name=name), + get_cc_license( + version="2.5", perks=["by", "sa"], country=country, country_name=name + ), + get_cc_license( + version="2.5", perks=["by", "nc"], country=country, country_name=name + ), + get_cc_license( + version="2.5", perks=["by", "nc", "sa"], country=country, country_name=name + ), + get_cc_license( + version="2.5", perks=["by", "nc", "nd"], country=country, country_name=name + ), + get_cc_license( + version="2.5", perks=["by", "nd"], country=country, country_name=name + ), + ] + +LICENSES = sorted(LICENSES, key=lambda l: l["code"]) +LICENSES_BY_ID = {l["code"]: l for l in LICENSES} diff --git a/api/funkwhale_api/music/management/commands/check_licenses.py b/api/funkwhale_api/music/management/commands/check_licenses.py new file mode 100644 index 000000000..b0b398acf --- /dev/null +++ b/api/funkwhale_api/music/management/commands/check_licenses.py @@ -0,0 +1,34 @@ +from django.core.management.base import BaseCommand, CommandError +import requests.exceptions + +from funkwhale_api.music import licenses + + +class Command(BaseCommand): + help = "Check that specified licenses URLs are actually reachable" + + def handle(self, *args, **options): + errored = [] + objs = licenses.LICENSES + total = len(objs) + for i, data in enumerate(objs): + self.stderr.write("{}/{} Checking {}...".format(i + 1, total, data["code"])) + response = requests.get(data["url"]) + try: + response.raise_for_status() + except requests.exceptions.RequestException: + self.stderr.write("!!! Error while fetching {}!".format(data["code"])) + errored.append((data, response)) + + if errored: + self.stdout.write("{} licenses were not reachable!".format(len(errored))) + for row, response in errored: + self.stdout.write( + "- {}: error {} at url {}".format( + row["code"], response.status_code, row["url"] + ) + ) + + raise CommandError() + else: + self.stdout.write("All licenses are valid and reachable :)") diff --git a/api/funkwhale_api/music/metadata.py b/api/funkwhale_api/music/metadata.py index 112782e41..52315d905 100644 --- a/api/funkwhale_api/music/metadata.py +++ b/api/funkwhale_api/music/metadata.py @@ -25,10 +25,18 @@ def get_id3_tag(f, k): if k == "pictures": return f.tags.getall("APIC") # First we try to grab the standard key - try: - return f.tags[k].text[0] - except KeyError: - pass + possible_attributes = [("text", True), ("url", False)] + for attr, select_first in possible_attributes: + try: + v = getattr(f.tags[k], attr) + if select_first: + v = v[0] + return v + except KeyError: + break + except AttributeError: + continue + # then we fallback on parsing non standard tags all_tags = f.tags.getall("TXXX") try: @@ -162,6 +170,8 @@ CONF = { "musicbrainz_artistid": {}, "musicbrainz_albumartistid": {}, "musicbrainz_recordingid": {"field": "musicbrainz_trackid"}, + "license": {}, + "copyright": {}, }, }, "OggVorbis": { @@ -183,6 +193,8 @@ CONF = { "musicbrainz_artistid": {}, "musicbrainz_albumartistid": {}, "musicbrainz_recordingid": {"field": "musicbrainz_trackid"}, + "license": {}, + "copyright": {}, }, }, "OggTheora": { @@ -201,6 +213,9 @@ CONF = { "musicbrainz_artistid": {"field": "MusicBrainz Artist Id"}, "musicbrainz_albumartistid": {"field": "MusicBrainz Album Artist Id"}, "musicbrainz_recordingid": {"field": "MusicBrainz Track Id"}, + # somehow, I cannot successfully create an ogg theora file + # with the proper license field + # "license": {"field": "license"}, }, }, "MP3": { @@ -221,6 +236,8 @@ CONF = { "getter": get_mp3_recording_id, }, "pictures": {}, + "license": {"field": "WCOP"}, + "copyright": {"field": "TCOP"}, }, }, "FLAC": { @@ -242,6 +259,8 @@ CONF = { "musicbrainz_recordingid": {"field": "musicbrainz_trackid"}, "test": {}, "pictures": {}, + "license": {}, + "copyright": {}, }, }, } @@ -257,6 +276,8 @@ ALL_FIELDS = [ "musicbrainz_artistid", "musicbrainz_albumartistid", "musicbrainz_recordingid", + "license", + "copyright", ] diff --git a/api/funkwhale_api/music/migrations/0034_auto_20181127_0325.py b/api/funkwhale_api/music/migrations/0034_auto_20181127_0325.py new file mode 100644 index 000000000..a5f6dab31 --- /dev/null +++ b/api/funkwhale_api/music/migrations/0034_auto_20181127_0325.py @@ -0,0 +1,36 @@ +# Generated by Django 2.0.9 on 2018-11-27 03:25 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('music', '0033_auto_20181023_1837'), + ] + + operations = [ + migrations.CreateModel( + name='License', + fields=[ + ('code', models.CharField(max_length=100, primary_key=True, serialize=False)), + ('url', models.URLField(max_length=500)), + ('copyleft', models.BooleanField()), + ('commercial', models.BooleanField()), + ('attribution', models.BooleanField()), + ('derivative', models.BooleanField()), + ('redistribute', models.BooleanField()), + ], + ), + migrations.AlterField( + model_name='uploadversion', + name='mimetype', + field=models.CharField(choices=[('audio/ogg', 'ogg'), ('audio/mpeg', 'mp3'), ('audio/x-flac', 'flac'), ('audio/flac', 'flac')], max_length=50), + ), + migrations.AddField( + model_name='track', + name='license', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='tracks', to='music.License'), + ), + ] diff --git a/api/funkwhale_api/music/migrations/0035_auto_20181203_1515.py b/api/funkwhale_api/music/migrations/0035_auto_20181203_1515.py new file mode 100644 index 000000000..17314d53b --- /dev/null +++ b/api/funkwhale_api/music/migrations/0035_auto_20181203_1515.py @@ -0,0 +1,24 @@ +# Generated by Django 2.0.9 on 2018-12-03 15:15 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('music', '0034_auto_20181127_0325'), + ] + + operations = [ + migrations.AddField( + model_name='track', + name='copyright', + field=models.CharField(blank=True, max_length=500, null=True), + ), + migrations.AlterField( + model_name='track', + name='license', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='tracks', to='music.License'), + ), + ] diff --git a/api/funkwhale_api/music/models.py b/api/funkwhale_api/music/models.py index d2bf7dd88..a8f4530b4 100644 --- a/api/funkwhale_api/music/models.py +++ b/api/funkwhale_api/music/models.py @@ -113,6 +113,33 @@ class APIModelMixin(models.Model): return super().save(**kwargs) +class License(models.Model): + code = models.CharField(primary_key=True, max_length=100) + url = models.URLField(max_length=500) + + # if true, license is a copyleft license, meaning that derivative + # work must be shared under the same license + copyleft = models.BooleanField() + # if true, commercial use of the work is allowed + commercial = models.BooleanField() + # if true, attribution to the original author is required when reusing + # the work + attribution = models.BooleanField() + # if true, derivative work are allowed + derivative = models.BooleanField() + # if true, redistribution of the wor is allowed + redistribute = models.BooleanField() + + @property + def conf(self): + from . import licenses + + for row in licenses.LICENSES: + if self.code == row["code"]: + return row + logger.warning("%s do not match any registered license", self.code) + + class ArtistQuerySet(models.QuerySet): def with_albums_count(self): return self.annotate(_albums_count=models.Count("albums")) @@ -430,6 +457,14 @@ class Track(APIModelMixin): work = models.ForeignKey( Work, related_name="tracks", null=True, blank=True, on_delete=models.CASCADE ) + license = models.ForeignKey( + License, + null=True, + blank=True, + on_delete=models.DO_NOTHING, + related_name="tracks", + ) + copyright = models.CharField(max_length=500, null=True, blank=True) federation_namespace = "tracks" musicbrainz_model = "recording" api = musicbrainz.api.recordings @@ -547,6 +582,17 @@ class Track(APIModelMixin): def listen_url(self): return reverse("api:v1:listen-detail", kwargs={"uuid": self.uuid}) + @property + def local_license(self): + """ + Since license primary keys are strings, and we can get the data + from our hardcoded licenses.LICENSES list, there is no need + for extra SQL joins / queries. + """ + from . import licenses + + return licenses.LICENSES_BY_ID.get(self.license_id) + class UploadQuerySet(models.QuerySet): def playable_by(self, actor, include=True): diff --git a/api/funkwhale_api/music/serializers.py b/api/funkwhale_api/music/serializers.py index 12f41f2d7..228f1c231 100644 --- a/api/funkwhale_api/music/serializers.py +++ b/api/funkwhale_api/music/serializers.py @@ -14,6 +14,21 @@ from . import filters, models, tasks cover_field = VersatileImageFieldSerializer(allow_null=True, sizes="square") +class LicenseSerializer(serializers.Serializer): + id = serializers.SerializerMethodField() + url = serializers.URLField() + code = serializers.CharField() + name = serializers.CharField() + redistribute = serializers.BooleanField() + derivative = serializers.BooleanField() + commercial = serializers.BooleanField() + attribution = serializers.BooleanField() + copyleft = serializers.BooleanField() + + def get_id(self, obj): + return obj["identifiers"][0] + + class ArtistAlbumSerializer(serializers.ModelSerializer): tracks_count = serializers.SerializerMethodField() cover = cover_field @@ -76,6 +91,8 @@ class AlbumTrackSerializer(serializers.ModelSerializer): "uploads", "listen_url", "duration", + "copyright", + "license", ) def get_uploads(self, obj): @@ -179,6 +196,8 @@ class TrackSerializer(serializers.ModelSerializer): "lyrics", "uploads", "listen_url", + "copyright", + "license", ) def get_lyrics(self, obj): diff --git a/api/funkwhale_api/music/tasks.py b/api/funkwhale_api/music/tasks.py index 7008b12fc..16fe0573c 100644 --- a/api/funkwhale_api/music/tasks.py +++ b/api/funkwhale_api/music/tasks.py @@ -16,6 +16,7 @@ from funkwhale_api.federation import routes from funkwhale_api.federation import library as lb from funkwhale_api.taskapp import celery +from . import licenses from . import lyrics as lyrics_utils from . import models from . import metadata @@ -276,6 +277,8 @@ def federation_audio_track_to_metadata(payload): "artist": payload["artists"][0]["name"], "album_artist": payload["album"]["artists"][0]["name"], "date": payload["album"].get("released"), + "license": payload.get("license"), + "copyright": payload.get("copyright"), # musicbrainz "musicbrainz_recordingid": str(musicbrainz_recordingid) if musicbrainz_recordingid @@ -496,6 +499,8 @@ def get_track_from_import_metadata(data): "position": track_number, "fid": track_fid, "from_activity_id": from_activity_id, + "license": licenses.match(data.get("license"), data.get("copyright")), + "copyright": data.get("copyright"), } if data.get("fdate"): defaults["creation_date"] = data.get("fdate") diff --git a/api/funkwhale_api/music/views.py b/api/funkwhale_api/music/views.py index 744fd43dd..022b60f05 100644 --- a/api/funkwhale_api/music/views.py +++ b/api/funkwhale_api/music/views.py @@ -22,7 +22,7 @@ from funkwhale_api.federation.authentication import SignatureAuthentication from funkwhale_api.federation import api_serializers as federation_api_serializers from funkwhale_api.federation import routes -from . import filters, models, serializers, tasks, utils +from . import filters, licenses, models, serializers, tasks, utils logger = logging.getLogger(__name__) @@ -481,3 +481,28 @@ class Search(views.APIView): ) return qs.filter(query_obj)[: self.max_results] + + +class LicenseViewSet(viewsets.ReadOnlyModelViewSet): + permission_classes = [common_permissions.ConditionalAuthentication] + serializer_class = serializers.LicenseSerializer + queryset = models.License.objects.all().order_by("code") + lookup_value_regex = ".*" + + def get_queryset(self): + # ensure our licenses are up to date in DB + licenses.load(licenses.LICENSES) + return super().get_queryset() + + def get_serializer(self, *args, **kwargs): + if len(args) == 0: + return super().get_serializer(*args, **kwargs) + + # our serializer works with license dict, not License instances + # so we pass those instead + instance_or_qs = args[0] + try: + first_arg = instance_or_qs.conf + except AttributeError: + first_arg = [i.conf for i in instance_or_qs if i.conf] + return super().get_serializer(*((first_arg,) + args[1:]), **kwargs) diff --git a/api/requirements/test.txt b/api/requirements/test.txt index 20a14abea..568214003 100644 --- a/api/requirements/test.txt +++ b/api/requirements/test.txt @@ -12,3 +12,4 @@ pytest-xdist pytest-cov pytest-env requests-mock +pytest-profiling diff --git a/api/tests/federation/test_serializers.py b/api/tests/federation/test_serializers.py index d3441df5d..c313d96a2 100644 --- a/api/tests/federation/test_serializers.py +++ b/api/tests/federation/test_serializers.py @@ -632,7 +632,7 @@ def test_activity_pub_album_serializer_to_ap(factories): def test_activity_pub_track_serializer_to_ap(factories): - track = factories["music.Track"]() + track = factories["music.Track"](license="cc-by-4.0", copyright="test") expected = { "@context": serializers.AP_CONTEXT, "published": track.creation_date.isoformat(), @@ -641,6 +641,8 @@ def test_activity_pub_track_serializer_to_ap(factories): "id": track.fid, "name": track.title, "position": track.position, + "license": track.license.conf["identifiers"][0], + "copyright": "test", "artists": [ serializers.ArtistSerializer( track.artist, context={"include_ap_context": False} diff --git a/api/tests/music/licenses.json b/api/tests/music/licenses.json new file mode 100644 index 000000000..5a2ecd132 --- /dev/null +++ b/api/tests/music/licenses.json @@ -0,0 +1,4539 @@ +[ + { + "name": "Creative commons - Attribution 1.0", + "code": "cc-by-1.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by/1.0/" + ] + }, + { + "name": "Creative commons - Attribution 2.0", + "code": "cc-by-2.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.0/" + ] + }, + { + "name": "Creative commons - Attribution 2.5", + "code": "cc-by-2.5", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Argentina", + "code": "cc-by-2.5-ar", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Bulgaria", + "code": "cc-by-2.5-bg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Canada", + "code": "cc-by-2.5-ca", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Colombia", + "code": "cc-by-2.5-co", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Denmark", + "code": "cc-by-2.5-dk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Hungary", + "code": "cc-by-2.5-hu", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Israel", + "code": "cc-by-2.5-il", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 India", + "code": "cc-by-2.5-in", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Macedonia", + "code": "cc-by-2.5-mk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Malta", + "code": "cc-by-2.5-mt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Mexico", + "code": "cc-by-2.5-mx", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Malaysia", + "code": "cc-by-2.5-my", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 Peru", + "code": "cc-by-2.5-pe", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution 2.5 UK: Scotland", + "code": "cc-by-2.5-scotland", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution 3.0", + "code": "cc-by-3.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Austria", + "code": "cc-by-3.0-at", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Australia", + "code": "cc-by-3.0-au", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Brazil", + "code": "cc-by-3.0-br", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Switzerland", + "code": "cc-by-3.0-ch", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Chile", + "code": "cc-by-3.0-cl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 China Mainland", + "code": "cc-by-3.0-cn", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Costa Rica", + "code": "cc-by-3.0-cr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Czech Republic", + "code": "cc-by-3.0-cz", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Germany", + "code": "cc-by-3.0-de", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Ecuador", + "code": "cc-by-3.0-ec", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Estonia", + "code": "cc-by-3.0-ee", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Egypt", + "code": "cc-by-3.0-eg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Spain", + "code": "cc-by-3.0-es", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 France", + "code": "cc-by-3.0-fr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Greece", + "code": "cc-by-3.0-gr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Guatemala", + "code": "cc-by-3.0-gt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Hong Kong", + "code": "cc-by-3.0-hk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Croatia", + "code": "cc-by-3.0-hr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Ireland", + "code": "cc-by-3.0-ie", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 IGO", + "code": "cc-by-3.0-igo", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Italy", + "code": "cc-by-3.0-it", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Luxembourg", + "code": "cc-by-3.0-lu", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Netherlands", + "code": "cc-by-3.0-nl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Norway", + "code": "cc-by-3.0-no", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 New Zealand", + "code": "cc-by-3.0-nz", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Philippines", + "code": "cc-by-3.0-ph", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Poland", + "code": "cc-by-3.0-pl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Puerto Rico", + "code": "cc-by-3.0-pr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Portugal", + "code": "cc-by-3.0-pt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Romania", + "code": "cc-by-3.0-ro", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Serbia", + "code": "cc-by-3.0-rs", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Singapore", + "code": "cc-by-3.0-sg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Thailand", + "code": "cc-by-3.0-th", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Taiwan", + "code": "cc-by-3.0-tw", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Uganda", + "code": "cc-by-3.0-ug", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 United States", + "code": "cc-by-3.0-us", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Venezuela", + "code": "cc-by-3.0-ve", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 Vietnam", + "code": "cc-by-3.0-vn", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution 3.0 South Africa", + "code": "cc-by-3.0-za", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution 4.0", + "code": "cc-by-4.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by/4.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 1.0", + "code": "cc-by-nc-1.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/1.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.0", + "code": "cc-by-nc-2.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5", + "code": "cc-by-nc-2.5", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Argentina", + "code": "cc-by-nc-2.5-ar", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Bulgaria", + "code": "cc-by-nc-2.5-bg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Canada", + "code": "cc-by-nc-2.5-ca", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Colombia", + "code": "cc-by-nc-2.5-co", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Denmark", + "code": "cc-by-nc-2.5-dk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Hungary", + "code": "cc-by-nc-2.5-hu", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Israel", + "code": "cc-by-nc-2.5-il", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 India", + "code": "cc-by-nc-2.5-in", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Macedonia", + "code": "cc-by-nc-2.5-mk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Malta", + "code": "cc-by-nc-2.5-mt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Mexico", + "code": "cc-by-nc-2.5-mx", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Malaysia", + "code": "cc-by-nc-2.5-my", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 Peru", + "code": "cc-by-nc-2.5-pe", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 2.5 UK: Scotland", + "code": "cc-by-nc-2.5-scotland", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0", + "code": "cc-by-nc-3.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Austria", + "code": "cc-by-nc-3.0-at", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Australia", + "code": "cc-by-nc-3.0-au", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Brazil", + "code": "cc-by-nc-3.0-br", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Switzerland", + "code": "cc-by-nc-3.0-ch", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Chile", + "code": "cc-by-nc-3.0-cl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 China Mainland", + "code": "cc-by-nc-3.0-cn", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Costa Rica", + "code": "cc-by-nc-3.0-cr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Czech Republic", + "code": "cc-by-nc-3.0-cz", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Germany", + "code": "cc-by-nc-3.0-de", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Ecuador", + "code": "cc-by-nc-3.0-ec", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Estonia", + "code": "cc-by-nc-3.0-ee", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Egypt", + "code": "cc-by-nc-3.0-eg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Spain", + "code": "cc-by-nc-3.0-es", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 France", + "code": "cc-by-nc-3.0-fr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Greece", + "code": "cc-by-nc-3.0-gr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Guatemala", + "code": "cc-by-nc-3.0-gt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Hong Kong", + "code": "cc-by-nc-3.0-hk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Croatia", + "code": "cc-by-nc-3.0-hr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Ireland", + "code": "cc-by-nc-3.0-ie", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 IGO", + "code": "cc-by-nc-3.0-igo", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Italy", + "code": "cc-by-nc-3.0-it", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Luxembourg", + "code": "cc-by-nc-3.0-lu", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Netherlands", + "code": "cc-by-nc-3.0-nl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Norway", + "code": "cc-by-nc-3.0-no", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 New Zealand", + "code": "cc-by-nc-3.0-nz", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Philippines", + "code": "cc-by-nc-3.0-ph", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Poland", + "code": "cc-by-nc-3.0-pl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Puerto Rico", + "code": "cc-by-nc-3.0-pr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Portugal", + "code": "cc-by-nc-3.0-pt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Romania", + "code": "cc-by-nc-3.0-ro", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Serbia", + "code": "cc-by-nc-3.0-rs", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Singapore", + "code": "cc-by-nc-3.0-sg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Thailand", + "code": "cc-by-nc-3.0-th", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Taiwan", + "code": "cc-by-nc-3.0-tw", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Uganda", + "code": "cc-by-nc-3.0-ug", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 United States", + "code": "cc-by-nc-3.0-us", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Venezuela", + "code": "cc-by-nc-3.0-ve", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 Vietnam", + "code": "cc-by-nc-3.0-vn", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 3.0 South Africa", + "code": "cc-by-nc-3.0-za", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial 4.0", + "code": "cc-by-nc-4.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc/4.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 1.0", + "code": "cc-by-nc-nd-1.0", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/1.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.0", + "code": "cc-by-nc-nd-2.0", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5", + "code": "cc-by-nc-nd-2.5", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Argentina", + "code": "cc-by-nc-nd-2.5-ar", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Bulgaria", + "code": "cc-by-nc-nd-2.5-bg", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Canada", + "code": "cc-by-nc-nd-2.5-ca", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Colombia", + "code": "cc-by-nc-nd-2.5-co", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Denmark", + "code": "cc-by-nc-nd-2.5-dk", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Hungary", + "code": "cc-by-nc-nd-2.5-hu", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Israel", + "code": "cc-by-nc-nd-2.5-il", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 India", + "code": "cc-by-nc-nd-2.5-in", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Macedonia", + "code": "cc-by-nc-nd-2.5-mk", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Malta", + "code": "cc-by-nc-nd-2.5-mt", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Mexico", + "code": "cc-by-nc-nd-2.5-mx", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Malaysia", + "code": "cc-by-nc-nd-2.5-my", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 Peru", + "code": "cc-by-nc-nd-2.5-pe", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 2.5 UK: Scotland", + "code": "cc-by-nc-nd-2.5-scotland", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0", + "code": "cc-by-nc-nd-3.0", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Austria", + "code": "cc-by-nc-nd-3.0-at", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Australia", + "code": "cc-by-nc-nd-3.0-au", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Brazil", + "code": "cc-by-nc-nd-3.0-br", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Switzerland", + "code": "cc-by-nc-nd-3.0-ch", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Chile", + "code": "cc-by-nc-nd-3.0-cl", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 China Mainland", + "code": "cc-by-nc-nd-3.0-cn", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Costa Rica", + "code": "cc-by-nc-nd-3.0-cr", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Czech Republic", + "code": "cc-by-nc-nd-3.0-cz", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Germany", + "code": "cc-by-nc-nd-3.0-de", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Ecuador", + "code": "cc-by-nc-nd-3.0-ec", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Estonia", + "code": "cc-by-nc-nd-3.0-ee", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Egypt", + "code": "cc-by-nc-nd-3.0-eg", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Spain", + "code": "cc-by-nc-nd-3.0-es", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 France", + "code": "cc-by-nc-nd-3.0-fr", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Greece", + "code": "cc-by-nc-nd-3.0-gr", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Guatemala", + "code": "cc-by-nc-nd-3.0-gt", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Hong Kong", + "code": "cc-by-nc-nd-3.0-hk", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Croatia", + "code": "cc-by-nc-nd-3.0-hr", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Ireland", + "code": "cc-by-nc-nd-3.0-ie", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 IGO", + "code": "cc-by-nc-nd-3.0-igo", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Italy", + "code": "cc-by-nc-nd-3.0-it", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Luxembourg", + "code": "cc-by-nc-nd-3.0-lu", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Netherlands", + "code": "cc-by-nc-nd-3.0-nl", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Norway", + "code": "cc-by-nc-nd-3.0-no", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 New Zealand", + "code": "cc-by-nc-nd-3.0-nz", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Philippines", + "code": "cc-by-nc-nd-3.0-ph", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Poland", + "code": "cc-by-nc-nd-3.0-pl", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Puerto Rico", + "code": "cc-by-nc-nd-3.0-pr", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Portugal", + "code": "cc-by-nc-nd-3.0-pt", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Romania", + "code": "cc-by-nc-nd-3.0-ro", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Serbia", + "code": "cc-by-nc-nd-3.0-rs", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Singapore", + "code": "cc-by-nc-nd-3.0-sg", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Thailand", + "code": "cc-by-nc-nd-3.0-th", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Taiwan", + "code": "cc-by-nc-nd-3.0-tw", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Uganda", + "code": "cc-by-nc-nd-3.0-ug", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 United States", + "code": "cc-by-nc-nd-3.0-us", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Venezuela", + "code": "cc-by-nc-nd-3.0-ve", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 Vietnam", + "code": "cc-by-nc-nd-3.0-vn", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 3.0 South Africa", + "code": "cc-by-nc-nd-3.0-za", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-NoDerivatives 4.0", + "code": "cc-by-nc-nd-4.0", + "redistribute": true, + "commercial": false, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-nd/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-nd/4.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 1.0", + "code": "cc-by-nc-sa-1.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/1.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.0", + "code": "cc-by-nc-sa-2.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5", + "code": "cc-by-nc-sa-2.5", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Argentina", + "code": "cc-by-nc-sa-2.5-ar", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Bulgaria", + "code": "cc-by-nc-sa-2.5-bg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Canada", + "code": "cc-by-nc-sa-2.5-ca", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Colombia", + "code": "cc-by-nc-sa-2.5-co", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Denmark", + "code": "cc-by-nc-sa-2.5-dk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Hungary", + "code": "cc-by-nc-sa-2.5-hu", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Israel", + "code": "cc-by-nc-sa-2.5-il", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 India", + "code": "cc-by-nc-sa-2.5-in", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Macedonia", + "code": "cc-by-nc-sa-2.5-mk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Malta", + "code": "cc-by-nc-sa-2.5-mt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Mexico", + "code": "cc-by-nc-sa-2.5-mx", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Malaysia", + "code": "cc-by-nc-sa-2.5-my", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 Peru", + "code": "cc-by-nc-sa-2.5-pe", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 2.5 UK: Scotland", + "code": "cc-by-nc-sa-2.5-scotland", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0", + "code": "cc-by-nc-sa-3.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Austria", + "code": "cc-by-nc-sa-3.0-at", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Australia", + "code": "cc-by-nc-sa-3.0-au", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Brazil", + "code": "cc-by-nc-sa-3.0-br", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Switzerland", + "code": "cc-by-nc-sa-3.0-ch", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Chile", + "code": "cc-by-nc-sa-3.0-cl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 China Mainland", + "code": "cc-by-nc-sa-3.0-cn", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Costa Rica", + "code": "cc-by-nc-sa-3.0-cr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Czech Republic", + "code": "cc-by-nc-sa-3.0-cz", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Germany", + "code": "cc-by-nc-sa-3.0-de", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Ecuador", + "code": "cc-by-nc-sa-3.0-ec", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Estonia", + "code": "cc-by-nc-sa-3.0-ee", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Egypt", + "code": "cc-by-nc-sa-3.0-eg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Spain", + "code": "cc-by-nc-sa-3.0-es", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 France", + "code": "cc-by-nc-sa-3.0-fr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Greece", + "code": "cc-by-nc-sa-3.0-gr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Guatemala", + "code": "cc-by-nc-sa-3.0-gt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Hong Kong", + "code": "cc-by-nc-sa-3.0-hk", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Croatia", + "code": "cc-by-nc-sa-3.0-hr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Ireland", + "code": "cc-by-nc-sa-3.0-ie", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 IGO", + "code": "cc-by-nc-sa-3.0-igo", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Italy", + "code": "cc-by-nc-sa-3.0-it", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Luxembourg", + "code": "cc-by-nc-sa-3.0-lu", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Netherlands", + "code": "cc-by-nc-sa-3.0-nl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Norway", + "code": "cc-by-nc-sa-3.0-no", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 New Zealand", + "code": "cc-by-nc-sa-3.0-nz", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Philippines", + "code": "cc-by-nc-sa-3.0-ph", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Poland", + "code": "cc-by-nc-sa-3.0-pl", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Puerto Rico", + "code": "cc-by-nc-sa-3.0-pr", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Portugal", + "code": "cc-by-nc-sa-3.0-pt", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Romania", + "code": "cc-by-nc-sa-3.0-ro", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Serbia", + "code": "cc-by-nc-sa-3.0-rs", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Singapore", + "code": "cc-by-nc-sa-3.0-sg", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Thailand", + "code": "cc-by-nc-sa-3.0-th", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Taiwan", + "code": "cc-by-nc-sa-3.0-tw", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Uganda", + "code": "cc-by-nc-sa-3.0-ug", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 United States", + "code": "cc-by-nc-sa-3.0-us", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Venezuela", + "code": "cc-by-nc-sa-3.0-ve", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 Vietnam", + "code": "cc-by-nc-sa-3.0-vn", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 3.0 South Africa", + "code": "cc-by-nc-sa-3.0-za", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution-NonCommercial-ShareAlike 4.0", + "code": "cc-by-nc-sa-4.0", + "redistribute": true, + "commercial": false, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nc-sa/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nc-sa/4.0/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 1.0", + "code": "cc-by-nd-1.0", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/1.0/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.0", + "code": "cc-by-nd-2.0", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.0/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5", + "code": "cc-by-nd-2.5", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Argentina", + "code": "cc-by-nd-2.5-ar", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Bulgaria", + "code": "cc-by-nd-2.5-bg", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Canada", + "code": "cc-by-nd-2.5-ca", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Colombia", + "code": "cc-by-nd-2.5-co", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Denmark", + "code": "cc-by-nd-2.5-dk", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Hungary", + "code": "cc-by-nd-2.5-hu", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Israel", + "code": "cc-by-nd-2.5-il", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 India", + "code": "cc-by-nd-2.5-in", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Macedonia", + "code": "cc-by-nd-2.5-mk", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Malta", + "code": "cc-by-nd-2.5-mt", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Mexico", + "code": "cc-by-nd-2.5-mx", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Malaysia", + "code": "cc-by-nd-2.5-my", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 Peru", + "code": "cc-by-nd-2.5-pe", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 2.5 UK: Scotland", + "code": "cc-by-nd-2.5-scotland", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0", + "code": "cc-by-nd-3.0", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Austria", + "code": "cc-by-nd-3.0-at", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Australia", + "code": "cc-by-nd-3.0-au", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Brazil", + "code": "cc-by-nd-3.0-br", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Switzerland", + "code": "cc-by-nd-3.0-ch", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Chile", + "code": "cc-by-nd-3.0-cl", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 China Mainland", + "code": "cc-by-nd-3.0-cn", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Costa Rica", + "code": "cc-by-nd-3.0-cr", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Czech Republic", + "code": "cc-by-nd-3.0-cz", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Germany", + "code": "cc-by-nd-3.0-de", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Ecuador", + "code": "cc-by-nd-3.0-ec", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Estonia", + "code": "cc-by-nd-3.0-ee", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Egypt", + "code": "cc-by-nd-3.0-eg", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Spain", + "code": "cc-by-nd-3.0-es", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 France", + "code": "cc-by-nd-3.0-fr", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Greece", + "code": "cc-by-nd-3.0-gr", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Guatemala", + "code": "cc-by-nd-3.0-gt", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Hong Kong", + "code": "cc-by-nd-3.0-hk", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Croatia", + "code": "cc-by-nd-3.0-hr", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Ireland", + "code": "cc-by-nd-3.0-ie", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 IGO", + "code": "cc-by-nd-3.0-igo", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Italy", + "code": "cc-by-nd-3.0-it", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Luxembourg", + "code": "cc-by-nd-3.0-lu", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Netherlands", + "code": "cc-by-nd-3.0-nl", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Norway", + "code": "cc-by-nd-3.0-no", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 New Zealand", + "code": "cc-by-nd-3.0-nz", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Philippines", + "code": "cc-by-nd-3.0-ph", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Poland", + "code": "cc-by-nd-3.0-pl", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Puerto Rico", + "code": "cc-by-nd-3.0-pr", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Portugal", + "code": "cc-by-nd-3.0-pt", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Romania", + "code": "cc-by-nd-3.0-ro", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Serbia", + "code": "cc-by-nd-3.0-rs", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Singapore", + "code": "cc-by-nd-3.0-sg", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Thailand", + "code": "cc-by-nd-3.0-th", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Taiwan", + "code": "cc-by-nd-3.0-tw", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Uganda", + "code": "cc-by-nd-3.0-ug", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 United States", + "code": "cc-by-nd-3.0-us", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Venezuela", + "code": "cc-by-nd-3.0-ve", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 Vietnam", + "code": "cc-by-nd-3.0-vn", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 3.0 South Africa", + "code": "cc-by-nd-3.0-za", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution-NoDerivatives 4.0", + "code": "cc-by-nd-4.0", + "redistribute": true, + "commercial": true, + "derivative": false, + "copyleft": false, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-nd/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-nd/4.0/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 1.0", + "code": "cc-by-sa-1.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/1.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/1.0/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.0", + "code": "cc-by-sa-2.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.0/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5", + "code": "cc-by-sa-2.5", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Argentina", + "code": "cc-by-sa-2.5-ar", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/ar/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/ar/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Bulgaria", + "code": "cc-by-sa-2.5-bg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/bg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/bg/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Canada", + "code": "cc-by-sa-2.5-ca", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/ca/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/ca/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Colombia", + "code": "cc-by-sa-2.5-co", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/co/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/co/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Denmark", + "code": "cc-by-sa-2.5-dk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/dk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/dk/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Hungary", + "code": "cc-by-sa-2.5-hu", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/hu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/hu/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Israel", + "code": "cc-by-sa-2.5-il", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/il/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/il/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 India", + "code": "cc-by-sa-2.5-in", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/in/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/in/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Macedonia", + "code": "cc-by-sa-2.5-mk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/mk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/mk/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Malta", + "code": "cc-by-sa-2.5-mt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/mt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/mt/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Mexico", + "code": "cc-by-sa-2.5-mx", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/mx/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/mx/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Malaysia", + "code": "cc-by-sa-2.5-my", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/my/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/my/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 Peru", + "code": "cc-by-sa-2.5-pe", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/pe/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/pe/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 2.5 UK: Scotland", + "code": "cc-by-sa-2.5-scotland", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/2.5/scotland/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/2.5/scotland/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0", + "code": "cc-by-sa-3.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Austria", + "code": "cc-by-sa-3.0-at", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/at/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/at/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Australia", + "code": "cc-by-sa-3.0-au", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/au/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/au/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Brazil", + "code": "cc-by-sa-3.0-br", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/br/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/br/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Switzerland", + "code": "cc-by-sa-3.0-ch", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ch/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ch/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Chile", + "code": "cc-by-sa-3.0-cl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/cl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/cl/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 China Mainland", + "code": "cc-by-sa-3.0-cn", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/cn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/cn/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Costa Rica", + "code": "cc-by-sa-3.0-cr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/cr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/cr/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Czech Republic", + "code": "cc-by-sa-3.0-cz", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/cz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/cz/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Germany", + "code": "cc-by-sa-3.0-de", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/de/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/de/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Ecuador", + "code": "cc-by-sa-3.0-ec", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ec/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ec/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Estonia", + "code": "cc-by-sa-3.0-ee", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ee/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ee/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Egypt", + "code": "cc-by-sa-3.0-eg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/eg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/eg/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Spain", + "code": "cc-by-sa-3.0-es", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/es/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/es/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 France", + "code": "cc-by-sa-3.0-fr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/fr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/fr/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Greece", + "code": "cc-by-sa-3.0-gr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/gr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/gr/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Guatemala", + "code": "cc-by-sa-3.0-gt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/gt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/gt/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Hong Kong", + "code": "cc-by-sa-3.0-hk", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/hk/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/hk/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Croatia", + "code": "cc-by-sa-3.0-hr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/hr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/hr/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Ireland", + "code": "cc-by-sa-3.0-ie", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ie/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ie/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 IGO", + "code": "cc-by-sa-3.0-igo", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/igo/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/igo/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Italy", + "code": "cc-by-sa-3.0-it", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/it/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/it/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Luxembourg", + "code": "cc-by-sa-3.0-lu", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/lu/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/lu/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Netherlands", + "code": "cc-by-sa-3.0-nl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/nl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/nl/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Norway", + "code": "cc-by-sa-3.0-no", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/no/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/no/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 New Zealand", + "code": "cc-by-sa-3.0-nz", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/nz/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/nz/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Philippines", + "code": "cc-by-sa-3.0-ph", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ph/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ph/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Poland", + "code": "cc-by-sa-3.0-pl", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/pl/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/pl/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Puerto Rico", + "code": "cc-by-sa-3.0-pr", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/pr/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/pr/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Portugal", + "code": "cc-by-sa-3.0-pt", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/pt/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/pt/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Romania", + "code": "cc-by-sa-3.0-ro", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ro/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ro/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Serbia", + "code": "cc-by-sa-3.0-rs", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/rs/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/rs/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Singapore", + "code": "cc-by-sa-3.0-sg", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/sg/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/sg/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Thailand", + "code": "cc-by-sa-3.0-th", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/th/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/th/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Taiwan", + "code": "cc-by-sa-3.0-tw", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/tw/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/tw/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Uganda", + "code": "cc-by-sa-3.0-ug", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ug/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ug/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 United States", + "code": "cc-by-sa-3.0-us", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/us/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/us/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Venezuela", + "code": "cc-by-sa-3.0-ve", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/ve/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/ve/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 Vietnam", + "code": "cc-by-sa-3.0-vn", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/vn/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/vn/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 3.0 South Africa", + "code": "cc-by-sa-3.0-za", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/3.0/za/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/3.0/za/" + ] + }, + { + "name": "Creative commons - Attribution-ShareAlike 4.0", + "code": "cc-by-sa-4.0", + "redistribute": true, + "commercial": true, + "derivative": true, + "copyleft": true, + "attribution": true, + "url": "https://creativecommons.org/licenses/by-sa/4.0/", + "identifiers": [ + "http://creativecommons.org/licenses/by-sa/4.0/" + ] + }, + { + "code": "cc0-1.0", + "name": "CC0 - Public domain", + "redistribute": true, + "derivative": true, + "commercial": true, + "attribution": false, + "copyleft": false, + "url": "https://creativecommons.org/publicdomain/zero/1.0/", + "identifiers": [ + "http://creativecommons.org/publicdomain/zero/1.0/" + ] + } +] \ No newline at end of file diff --git a/api/tests/music/test.mp3 b/api/tests/music/test.mp3 index 6c1f52a35f665306af4959bb5ed024d2abea544a..8e7c0adbbc1a36f51bd32cf4be12c8e3326f1007 100644 GIT binary patch delta 67 zcmbO@O=#jYp$SV^7#SECCvI?)boLKmU|~*c?_u=KQR|KbCtAn Sl`sM^6A&|R=PF@g7Y6`~8P`6bJBp7)oi=Gz1b_AefeKnm9>~)Kj{F?2K=gcs~R4PS5 z*HqfEDQTZfCa2<&H*lw+yC;sL=y*?(27&8D-pn2NlZihKYkn}2{`Q2@o6~CONOG+% z@tmO2GNzf9cA#|>y{#}xn)ODrTHmQQo)<2Z`c$!!Qk=A?P8FN7ewPwI8oL31m)XxR zp<=6+)@4L@qACBDSzp{lPSIOEWB#SGn@8~97dfPKrA2jOoP_?dJH0SoHG3Uq^~vj3 z+(}nBNx$VkGdp}OLk^emjF}7@Yqn~WMm#2onWd;NZ6e1FajnxcTGS$qB4UHKHHEaj zkrz2fqTvobhj)d2?q!vtVlmBTgbrs;Fcc30&mHlPf;|7cjU$!$@AOt7`6C|xZzf;K z%FTFR)$I0h!9zxDf8zR6H(4)kO?D!3e3^KgBs~8vY!u#`r4ME)4H?LS0GHr0EWj05 zgsZRw%aDT=$ipfW;2IR+I^2MGZW(UE8mz-DxD9up0(U`#d$0kUa33DPLwE#_;R!s2 WXRrlTsDT7^Xh0LTznUfa#rYo<|F=H? delta 550 zcmXxfPfrs;7zXg}b_)oFS}H~Ul`2Y6sdn2XA(2TKwv%RYw@Y@1XisF5)~1O;0>}wZ z9!xmVyeB>f2e}bWd;k(+;wSLJ)vM1e;qXg#-ko{onKQc4&fs**_*=RC-ItzGNF)-p zZqyoCd<4Q3JQTLS-IPI#efpTjQ2LU)btkk#W{zU*@(tlK@7uxGz0R&0#2aM5?GGWd z=(}E^mj1bx!Jj&pf>kSKwOm;(n=2|!1vR(54G}OiPFLsR1ZMT`Ch5djrhhskQ=7?* zV1H-_&X#0ubht}L+8SMH({!n?(zRjHAFV_eNuKjW-Qld>>-G+#FGa7@?nM-76YtfN z{J?2AP42b?58^6040#}(P%_aziuT*Z#(uBURd=aw_f^dPolVEdHA)-Sc>G3H^P#tP zZl(%ZT2Jl#@bf?YyaqZX!GIJDz#t64BN&DeNW&(+n+ipQ ziU+U8L3#;z68r|{CgMquehn{v0x$ZXSn=XFFblt7XXcq_c7~n#^nN5h|1uI^(fN-j z&%*f6e>{UhbxuhOg20|CX_Ml`G7VaBC@CNK{$Z-!YI>c}+f42E``t}dZT7rIzxBjx z2EHG3!a~q{te(b%>Z8Ma*icJ_qRNiM1Ur$}UP}wP86>UR=6$oGTXm}2WWA`Z^G2Im zRClObuTc{8_q`s=Nn6<|^f-oX)?8vW`kmRofsU)YyABEV_FBzWqs_ictC=Xe%eqU) zN%O^xymmK&CQIL@7TGxngRa*Zyp4pE!N<4t~Rd#o_sZBIilN0QRyv1U&&fdr|C5Zs`RZKElNeHh|JzL{3Brq^@^Yw%Ab||Leg@9MIXDj&;37=HG(_MMMBy^bz!iwWRfxkZBp?ZM oFb@l`2upAcmLUacxDGcU12R^b+8AqTf%4e}p`O5t7f7fe=QZvX%Q delta 554 zcmYk&IZFdU7zW_%;eEuIc*G+f@roL8b%lUVFg+KQF6mZ|MT`~~{%df>tXyWh-y^L}&sbT2(z-%FRQe&yovrs@;VT6r_5hCCjR zh^e#7KD=1WWYlIxI+Nm7mTasyqR7*nnu`hBu!+`$Z^SdZjYSIJ1c69^m}yHX*v$Qw{Mh6A_WR zy$#rG8&+bK6EjyTh=Q~bZb$7Wrp+nO*rb@x?{4kp_I0dKGoDF`55+H@UH72 zDpf<`R-q!N_{aYZ%d@MD6iYkXhfXnVC6*E?YGxU=+}Pqx>2QNMslP*N{$|nP7mB4u=Ab|`Ds89vfPy@A42ldbZjnD+m;Dr|OK`Z#d>DLDB&;gwg ogf8fY9_WP-^g%xiz#xQS2!>$
- +
-

Choose your instance

+

+ Choose your instance +

-

You need to select an instance in order to continue

+

+ You need to select an instance in order to continue +

- +
-

Suggested choices

+

+ Suggested choices +

{{ url }} @@ -22,20 +36,20 @@
@@ -213,17 +227,17 @@ export default { // as resolve order is not deterministric in webpack // and we end up with CSS rules not applied, // see https://github.com/webpack/webpack/issues/215 -@import 'semantic/semantic.css'; -@import 'style/vendor/media'; +@import "semantic/semantic.css"; +@import "style/vendor/media"; - -html, body { +html, +body { @include media("desktop") { margin-left: 350px !important; margin-top: 50px; @@ -240,7 +255,6 @@ html, body { transform: none !important; } - .main.pusher > .ui.secondary.menu { margin-left: 0; margin-right: 0; @@ -282,7 +296,8 @@ html, body { .main-pusher { padding: 1.5rem 0; } -.ui.stripe.segment, #footer { +.ui.stripe.segment, +#footer { padding: 2em; @include media(">tablet") { padding: 4em; @@ -300,7 +315,7 @@ html, body { } .button.icon.tiny { - padding: 0.5em !important; + padding: 0.5em !important; } .sidebar { @@ -332,11 +347,10 @@ html, body { .ui.icon.header .circular.icon { display: flex; justify-content: center; - } -.segment-content .button{ - margin: 0.5em; +.segment-content .button { + margin: 0.5em; } a { @@ -365,7 +379,7 @@ button.reset { /* Corrects font smoothing for webkit */ -webkit-font-smoothing: inherit; -moz-osx-font-smoothing: inherit; - /* Corrects inability to style clickable `input` types in iOS */ + /* Corrects inability to style clickable `input` types in iOS */ -webkit-appearance: none; text-align: inherit; } @@ -375,4 +389,7 @@ button.reset { padding: 0.5em; text-align: left; } +[role="button"] { + cursor: pointer; +} diff --git a/front/src/components/library/Track.vue b/front/src/components/library/Track.vue index 707ba27ff..4aeecdf39 100644 --- a/front/src/components/library/Track.vue +++ b/front/src/components/library/Track.vue @@ -4,23 +4,33 @@