From 6bda5b463e71600ec8829b52060de206e7f931ad Mon Sep 17 00:00:00 2001 From: Ziedelth Date: Mon, 25 Mar 2024 20:41:18 +0100 Subject: [PATCH 1/2] Change calendar calculation --- build.gradle.kts | 2 +- .../kotlin/fr/shikkanime/entities/Anime.kt | 2 +- .../repositories/EpisodeRepository.kt | 8 ++--- .../fr/shikkanime/services/AnimeService.kt | 30 +++++++++---------- .../fr/shikkanime/services/EpisodeService.kt | 5 ++-- .../assets/css/purged/bootstrap.min.css | 2 +- .../resources/templates/site/calendar.ftl | 14 ++++----- 7 files changed, 28 insertions(+), 35 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 12d35530..4f2d15c3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,7 +26,7 @@ val junitVersion = "5.10.2" val h2Version = "2.2.224" plugins { - kotlin("jvm") version "1.9.23" + kotlin("jvm") version "2.0.0-Beta5" id("io.ktor.plugin") version "2.3.9" jacoco id("org.sonarqube") version "4.4.1.3373" diff --git a/src/main/kotlin/fr/shikkanime/entities/Anime.kt b/src/main/kotlin/fr/shikkanime/entities/Anime.kt index 21920f8e..407d0429 100644 --- a/src/main/kotlin/fr/shikkanime/entities/Anime.kt +++ b/src/main/kotlin/fr/shikkanime/entities/Anime.kt @@ -36,7 +36,7 @@ class Anime( var banner: String? = null, @Column(nullable = true, columnDefinition = "VARCHAR(2000)") var description: String? = null, - @ManyToMany + @ManyToMany(fetch = FetchType.LAZY) @JoinTable( name = "anime_simulcast", joinColumns = [JoinColumn(name = "anime_uuid")], diff --git a/src/main/kotlin/fr/shikkanime/repositories/EpisodeRepository.kt b/src/main/kotlin/fr/shikkanime/repositories/EpisodeRepository.kt index 8a306f8e..a239905a 100644 --- a/src/main/kotlin/fr/shikkanime/repositories/EpisodeRepository.kt +++ b/src/main/kotlin/fr/shikkanime/repositories/EpisodeRepository.kt @@ -162,22 +162,20 @@ class EpisodeRepository : AbstractRepository() { countryCode: CountryCode, start: ZonedDateTime, end: ZonedDateTime, - blacklisted: List, ): List { return inTransaction { entityManager -> createReadOnlyQuery( entityManager, """ - FROM Episode e - WHERE e.anime.countryCode = :countryCode AND e.releaseDateTime BETWEEN :start AND :end AND e.anime.uuid NOT IN :blacklisted - ORDER BY e.releaseDateTime ASC + FROM Episode e + WHERE e.anime.countryCode = :countryCode AND e.releaseDateTime BETWEEN :start AND :end + ORDER BY e.releaseDateTime ASC, LOWER(e.anime.name) ASC """.trimIndent(), getEntityClass() ) .setParameter("countryCode", countryCode) .setParameter("start", start) .setParameter("end", end) - .setParameter("blacklisted", blacklisted) .resultList .initialize() } diff --git a/src/main/kotlin/fr/shikkanime/services/AnimeService.kt b/src/main/kotlin/fr/shikkanime/services/AnimeService.kt index 69c7c7d3..b5faf84b 100644 --- a/src/main/kotlin/fr/shikkanime/services/AnimeService.kt +++ b/src/main/kotlin/fr/shikkanime/services/AnimeService.kt @@ -51,31 +51,29 @@ class AnimeService : AbstractService() { fun findAllUUIDAndImage() = animeRepository.findAllUUIDAndImage() fun getWeeklyAnimes(startOfWeekDay: LocalDate, countryCode: CountryCode): List { - return startOfWeekDay.datesUntil(startOfWeekDay.plusDays(7)).map { - val start = ZonedDateTime.parse("${it}T00:00:00Z") - val end = ZonedDateTime.parse("${it}T23:59:59Z") - val dateTitle = - it.format(DateTimeFormatter.ofPattern("EEEE", Locale.of(countryCode.locale.split("-")[0], countryCode.locale.split("-")[1]))).capitalizeWords() - val list = episodeService.findAllByDateRange(countryCode, start, end, emptyList()).toMutableList() - - list.addAll( - episodeService.findAllByDateRange( - countryCode, - start.minusDays(7), - end.minusDays(7), - list.mapNotNull { anime -> anime.uuid }) - ) + val start = ZonedDateTime.parse("${startOfWeekDay.minusDays(7)}T00:00:00Z") + val end = ZonedDateTime.parse("${startOfWeekDay.plusDays(7)}T23:59:59Z") + val list = episodeService.findAllByDateRange(countryCode, start, end).toMutableList() + + return startOfWeekDay.datesUntil(startOfWeekDay.plusDays(7)).map { date -> + val dateTitle = date.format( + DateTimeFormatter.ofPattern( + "EEEE", + Locale.of(countryCode.locale.split("-")[0], countryCode.locale.split("-")[1]) + ) + ).capitalizeWords() + val episodes = list.filter { it.releaseDateTime.dayOfWeek == date.dayOfWeek } WeeklyAnimesDto( dateTitle, AbstractConverter.convert( - list.distinctBy { episode -> episode.anime?.uuid }, + episodes.distinctBy { episode -> episode.anime?.uuid }, EpisodeDto::class.java ).map { episodeDto -> WeeklyAnimeDto( episodeDto.anime, episodeDto.releaseDateTime, - AbstractConverter.convert(list.filter { episode -> episode.anime?.uuid == episodeDto.anime.uuid } + AbstractConverter.convert(episodes.filter { episode -> episode.anime?.uuid == episodeDto.anime.uuid } .map { episode -> episode.platform!! } .distinct(), PlatformDto::class.java) ) diff --git a/src/main/kotlin/fr/shikkanime/services/EpisodeService.kt b/src/main/kotlin/fr/shikkanime/services/EpisodeService.kt index 1f1ea67b..da970b27 100644 --- a/src/main/kotlin/fr/shikkanime/services/EpisodeService.kt +++ b/src/main/kotlin/fr/shikkanime/services/EpisodeService.kt @@ -54,9 +54,8 @@ class EpisodeService : AbstractService() { fun findAllByDateRange( countryCode: CountryCode, start: ZonedDateTime, - end: ZonedDateTime, - blacklisted: List - ) = episodeRepository.findAllByDateRange(countryCode, start, end, blacklisted) + end: ZonedDateTime + ) = episodeRepository.findAllByDateRange(countryCode, start, end) fun addImage(uuid: UUID, image: String, bypass: Boolean = false) { ImageService.add(uuid, ImageService.Type.IMAGE, image, 640, 360, bypass) diff --git a/src/main/resources/assets/css/purged/bootstrap.min.css b/src/main/resources/assets/css/purged/bootstrap.min.css index 6b17f25d..ffb7dfa9 100644 --- a/src/main/resources/assets/css/purged/bootstrap.min.css +++ b/src/main/resources/assets/css/purged/bootstrap.min.css @@ -2,4 +2,4 @@ * Bootstrap v5.3.2 (https://getbootstrap.com/) * Copyright 2011-2023 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}ol,ul{padding-left:2rem}ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}b,strong{font-weight:bolder}.small,small{font-size:.875em}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,pre{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.list-unstyled{padding-left:0;list-style:none}.img-fluid{max-width:100%;height:auto}.container,.container-fluid{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}@media (min-width:1400px){.container{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.col-6{flex:0 0 auto;width:50%}.col-12{flex:0 0 auto;width:100%}.g-3{--bs-gutter-x:1rem}.g-3{--bs-gutter-y:1rem}@media (min-width:768px){.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), 0.05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#4d5154;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.15),0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:0 0;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}}.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-color: ;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.offcanvas{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-text-top{vertical-align:text-top!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-flex{display:flex!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.top-0{top:0!important}.bottom-0{bottom:0!important}.start-0{left:0!important}.end-0{right:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.w-50{width:50%!important}.w-100{width:100%!important}.h-100{height:100%!important}.mh-100{max-height:100%!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.align-items-center{align-items:center!important}.align-content-center{align-content:center!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-5{margin-top:3rem!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-3{margin-bottom:1rem!important}.ms-0{margin-left:0!important}.ms-auto{margin-left:auto!important}.p-1{padding:.25rem!important}.p-3{padding:1rem!important}.p-5{padding:3rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.pb-0{padding-bottom:0!important}.fw-bold{font-weight:700!important}.lh-1{line-height:1!important}.text-start{text-align:left!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}@media (min-width:768px){.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mt-md-0{margin-top:0!important}.mb-md-0{margin-bottom:0!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.text-md-end{text-align:right!important}} \ No newline at end of file + */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}ol,ul{padding-left:2rem}ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}b,strong{font-weight:bolder}.small,small{font-size:.875em}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,pre{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.list-unstyled{padding-left:0;list-style:none}.img-fluid{max-width:100%;height:auto}.container,.container-fluid{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}@media (min-width:1400px){.container{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.col-6{flex:0 0 auto;width:50%}.col-12{flex:0 0 auto;width:100%}.g-3{--bs-gutter-x:1rem}.g-3{--bs-gutter-y:1rem}@media (min-width:768px){.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), 0.05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#4d5154;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.15),0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:0 0;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}}.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-color: ;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.offcanvas{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-text-top{vertical-align:text-top!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-flex{display:flex!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.top-0{top:0!important}.bottom-0{bottom:0!important}.start-0{left:0!important}.end-0{right:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.w-50{width:50%!important}.w-100{width:100%!important}.h-100{height:100%!important}.mh-100{max-height:100%!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.align-items-center{align-items:center!important}.align-content-center{align-content:center!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-5{margin-top:3rem!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.ms-0{margin-left:0!important}.ms-auto{margin-left:auto!important}.p-1{padding:.25rem!important}.p-3{padding:1rem!important}.p-5{padding:3rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.pb-0{padding-bottom:0!important}.fw-bold{font-weight:700!important}.lh-1{line-height:1!important}.text-start{text-align:left!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}@media (min-width:768px){.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mt-md-0{margin-top:0!important}.mb-md-0{margin-bottom:0!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.text-md-end{text-align:right!important}} \ No newline at end of file diff --git a/src/main/resources/templates/site/calendar.ftl b/src/main/resources/templates/site/calendar.ftl index b4c1a237..352eb84e 100644 --- a/src/main/resources/templates/site/calendar.ftl +++ b/src/main/resources/templates/site/calendar.ftl @@ -28,7 +28,7 @@ class="img-fluid" width="640" height="360"> -
+
<#list release.platforms as platform>
- -
-
- - ${release.anime.shortName} - +
+ ${release.anime.shortName} + +
From c0d27d99005ba959673cbd8c2d544f964513a84d Mon Sep 17 00:00:00 2001 From: Ziedelth Date: Tue, 26 Mar 2024 11:22:32 +0100 Subject: [PATCH 2/2] Move ADN simulcast detection on regex config --- .../entities/enums/ConfigPropertyKey.kt | 1 + .../AnimationDigitalNetworkPlatform.kt | 34 +- .../db/changelog/2024/03/06-changelog.xml | 24 + .../db/changelog/db.changelog-master.xml | 1 + .../AnimationDigitalNetworkPlatformTest.kt | 34 + .../api-2024-04-10T08-00-00Z.json | 5051 +++++++++++++++++ 6 files changed, 5136 insertions(+), 9 deletions(-) create mode 100644 src/main/resources/db/changelog/2024/03/06-changelog.xml create mode 100644 src/test/resources/animation_digital_network/api-2024-04-10T08-00-00Z.json diff --git a/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt b/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt index 988268d1..0b968683 100644 --- a/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt +++ b/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt @@ -28,4 +28,5 @@ enum class ConfigPropertyKey(val key: String) { ANALYTICS_API("analytics_api"), ANALYTICS_SCRIPT("analytics_script"), CRUNCHYROLL_FETCH_API_SIZE("crunchyroll_fetch_api_size"), + ANIMATION_DITIGAL_NETWORK_SIMULCAST_DETECTION_REGEX("animation_digital_network_simulcast_detection_regex"), } \ No newline at end of file diff --git a/src/main/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatform.kt b/src/main/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatform.kt index 6253d4df..29247598 100644 --- a/src/main/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatform.kt +++ b/src/main/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatform.kt @@ -2,15 +2,15 @@ package fr.shikkanime.platforms import com.google.gson.JsonArray import com.google.gson.JsonObject +import com.google.inject.Inject import fr.shikkanime.entities.Anime import fr.shikkanime.entities.Episode -import fr.shikkanime.entities.enums.CountryCode -import fr.shikkanime.entities.enums.EpisodeType -import fr.shikkanime.entities.enums.LangType -import fr.shikkanime.entities.enums.Platform +import fr.shikkanime.entities.enums.* import fr.shikkanime.exceptions.AnimeException import fr.shikkanime.exceptions.AnimeNotSimulcastedException import fr.shikkanime.platforms.configuration.AnimationDigitalNetworkConfiguration +import fr.shikkanime.services.caches.ConfigCacheService +import fr.shikkanime.utils.ObjectParser import fr.shikkanime.utils.ObjectParser.getAsBoolean import fr.shikkanime.utils.ObjectParser.getAsInt import fr.shikkanime.utils.ObjectParser.getAsLong @@ -23,6 +23,9 @@ import java.util.logging.Level class AnimationDigitalNetworkPlatform : AbstractPlatform>() { + @Inject + private lateinit var configCacheService: ConfigCacheService + override fun getPlatform(): Platform = Platform.ANIM override fun getConfigurationClass() = AnimationDigitalNetworkConfiguration::class.java @@ -31,11 +34,24 @@ class AnimationDigitalNetworkPlatform : return AnimationDigitalNetworkWrapper.getLatestVideos(zonedDateTime.toLocalDate()) } + private fun parseAPIContent( + bypassFileContent: File?, + countryCode: CountryCode, + zonedDateTime: ZonedDateTime + ): List { + return if (bypassFileContent != null && bypassFileContent.exists()) { + ObjectParser.fromJson(bypassFileContent.readText()).getAsJsonArray("videos").map { it.asJsonObject } + } else getApiContent( + countryCode, + zonedDateTime + ) + } + override fun fetchEpisodes(zonedDateTime: ZonedDateTime, bypassFileContent: File?): List { val list = mutableListOf() configuration!!.availableCountries.forEach { countryCode -> - val api = getApiContent(countryCode, zonedDateTime) + val api = parseAPIContent(bypassFileContent, countryCode, zonedDateTime) api.forEach { try { @@ -86,10 +102,10 @@ class AnimationDigitalNetworkPlatform : val descriptionLowercase = animeDescription.lowercase() - isSimulcasted = isSimulcasted || descriptionLowercase.startsWith("(premier épisode ") || - descriptionLowercase.startsWith("(diffusion des ") || - descriptionLowercase.startsWith("(diffusion du premier épisode") || - descriptionLowercase.startsWith("(diffusion de l'épisode 1 le") + isSimulcasted = isSimulcasted || + configCacheService.getValueAsString(ConfigPropertyKey.ANIMATION_DITIGAL_NETWORK_SIMULCAST_DETECTION_REGEX)?.let { + Regex(it).containsMatchIn(descriptionLowercase) + } == true if (!isSimulcasted) throw AnimeNotSimulcastedException("Anime is not simulcasted") diff --git a/src/main/resources/db/changelog/2024/03/06-changelog.xml b/src/main/resources/db/changelog/2024/03/06-changelog.xml new file mode 100644 index 00000000..52ca2559 --- /dev/null +++ b/src/main/resources/db/changelog/2024/03/06-changelog.xml @@ -0,0 +1,24 @@ + + + + + + + + SELECT COUNT(*) + FROM config + WHERE property_key = 'animation_digital_network_simulcast_detection_regex' + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/db/changelog/db.changelog-master.xml b/src/main/resources/db/changelog/db.changelog-master.xml index fba7c78b..126f1697 100644 --- a/src/main/resources/db/changelog/db.changelog-master.xml +++ b/src/main/resources/db/changelog/db.changelog-master.xml @@ -35,4 +35,5 @@ + \ No newline at end of file diff --git a/src/test/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatformTest.kt b/src/test/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatformTest.kt index bc04ade9..07c25579 100644 --- a/src/test/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatformTest.kt +++ b/src/test/kotlin/fr/shikkanime/platforms/AnimationDigitalNetworkPlatformTest.kt @@ -1,15 +1,20 @@ package fr.shikkanime.platforms +import fr.shikkanime.entities.Config +import fr.shikkanime.entities.enums.ConfigPropertyKey import fr.shikkanime.entities.enums.CountryCode import fr.shikkanime.entities.enums.LangType import fr.shikkanime.platforms.configuration.PlatformSimulcast +import fr.shikkanime.services.ConfigService import fr.shikkanime.utils.Constant +import fr.shikkanime.utils.MapCache import jakarta.inject.Inject import org.junit.jupiter.api.AfterEach import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertNotNull import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test +import java.io.File import java.time.ZonedDateTime import java.util.* @@ -17,6 +22,9 @@ class AnimationDigitalNetworkPlatformTest { @Inject lateinit var platform: AnimationDigitalNetworkPlatform + @Inject + lateinit var configService: ConfigService + @BeforeEach fun setUp() { Constant.injector.injectMembers(this) @@ -31,6 +39,8 @@ class AnimationDigitalNetworkPlatformTest { platform.configuration!!.availableCountries.remove(CountryCode.FR) platform.configuration!!.simulcasts.removeIf { it.name == "Pon no Michi" } platform.reset() + configService.deleteAll() + MapCache.invalidate(Config::class.java) } @Test @@ -117,4 +127,28 @@ class AnimationDigitalNetworkPlatformTest { assertEquals("Urusei Yatsura", episodes[2].anime?.name) assertNotNull(episodes[2].description) } + + @Test + fun `fetchEpisodes for 2024-04-10`() { + configService.save( + Config( + propertyKey = ConfigPropertyKey.ANIMATION_DITIGAL_NETWORK_SIMULCAST_DETECTION_REGEX.key, + propertyValue = "\\((premier épisode |diffusion des épisodes |diffusion du premier épisode|diffusion de l'épisode 1 le)" + ) + ) + MapCache.invalidate(Config::class.java) + + val s = "2024-04-10T08:00:00Z" + val zonedDateTime = ZonedDateTime.parse(s) + + val episodes = platform.fetchEpisodes( + zonedDateTime, + File( + ClassLoader.getSystemClassLoader().getResource("animation_digital_network/api-${s.replace(':', '-')}.json")?.file + ?: throw Exception("File not found") + ) + ) + + assertEquals(true, episodes.isEmpty()) + } } \ No newline at end of file diff --git a/src/test/resources/animation_digital_network/api-2024-04-10T08-00-00Z.json b/src/test/resources/animation_digital_network/api-2024-04-10T08-00-00Z.json new file mode 100644 index 00000000..f886bd7e --- /dev/null +++ b/src/test/resources/animation_digital_network/api-2024-04-10T08-00-00Z.json @@ -0,0 +1,5051 @@ +{ + "videos": [ + { + "id": 25091, + "title": "Sword Art Online - Épisode 1", + "name": "The World of Guns", + "number": "Épisode 1", + "shortNumber": "1", + "season": "2", + "reference": "swordartonline_tv2_0001", + "type": "EPS", + "order": 26, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps1_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps1_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25091-episode-1-the-world-of-guns", + "urlPath": "/video/sword-art-online/25091-episode-1-the-world-of-guns", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25091", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25092, + "title": "Sword Art Online - Épisode 2", + "name": "Cold-Hearted Sniper", + "number": "Épisode 2", + "shortNumber": "2", + "season": "2", + "reference": "swordartonline_tv2_0002", + "type": "EPS", + "order": 27, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps2_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps2_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25092-episode-2-cold-hearted-sniper", + "urlPath": "/video/sword-art-online/25092-episode-2-cold-hearted-sniper", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25092", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25093, + "title": "Sword Art Online - Épisode 3", + "name": "Memories of Blood", + "number": "Épisode 3", + "shortNumber": "3", + "season": "2", + "reference": "swordartonline_tv2_0003", + "type": "EPS", + "order": 28, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps3_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps3_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25093-episode-3-memories-of-blood", + "urlPath": "/video/sword-art-online/25093-episode-3-memories-of-blood", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25093", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25094, + "title": "Sword Art Online - Épisode 4", + "name": "GGO", + "number": "Épisode 4", + "shortNumber": "4", + "season": "2", + "reference": "swordartonline_tv2_0004", + "type": "EPS", + "order": 29, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps4_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps4_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25094-episode-4-ggo", + "urlPath": "/video/sword-art-online/25094-episode-4-ggo", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25094", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25095, + "title": "Sword Art Online - Épisode 5", + "name": "Guns and Swords", + "number": "Épisode 5", + "shortNumber": "5", + "season": "2", + "reference": "swordartonline_tv2_0005", + "type": "EPS", + "order": 30, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps5_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps5_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25095-episode-5-guns-and-swords", + "urlPath": "/video/sword-art-online/25095-episode-5-guns-and-swords", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25095", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25096, + "title": "Sword Art Online - Épisode 6", + "name": "Showdown in the Wilderness", + "number": "Épisode 6", + "shortNumber": "6", + "season": "2", + "reference": "swordartonline_tv2_0006", + "type": "EPS", + "order": 31, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps6_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps6_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25096-episode-6-showdown-in-the-wilderness", + "urlPath": "/video/sword-art-online/25096-episode-6-showdown-in-the-wilderness", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25096", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25097, + "title": "Sword Art Online - Épisode 7", + "name": "Crimson Memories", + "number": "Épisode 7", + "shortNumber": "7", + "season": "2", + "reference": "swordartonline_tv2_0007", + "type": "EPS", + "order": 32, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps7_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps7_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25097-episode-7-crimson-memories", + "urlPath": "/video/sword-art-online/25097-episode-7-crimson-memories", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25097", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25098, + "title": "Sword Art Online - Épisode 8", + "name": "Bullet of Bullets", + "number": "Épisode 8", + "shortNumber": "8", + "season": "2", + "reference": "swordartonline_tv2_0008", + "type": "EPS", + "order": 33, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps8_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps8_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25098-episode-8-bullet-of-bullets", + "urlPath": "/video/sword-art-online/25098-episode-8-bullet-of-bullets", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25098", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25099, + "title": "Sword Art Online - Épisode 9", + "name": "Death Gun", + "number": "Épisode 9", + "shortNumber": "9", + "season": "2", + "reference": "swordartonline_tv2_0009", + "type": "EPS", + "order": 34, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps9_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps9_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25099-episode-9-death-gun", + "urlPath": "/video/sword-art-online/25099-episode-9-death-gun", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25099", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25100, + "title": "Sword Art Online - Épisode 10", + "name": "Death Chaser", + "number": "Épisode 10", + "shortNumber": "10", + "season": "2", + "reference": "swordartonline_tv2_0010", + "type": "EPS", + "order": 35, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps10_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps10_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25100-episode-10-death-chaser", + "urlPath": "/video/sword-art-online/25100-episode-10-death-chaser", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25100", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25101, + "title": "Sword Art Online - Épisode 11", + "name": "What It Means to Be Strong", + "number": "Épisode 11", + "shortNumber": "11", + "season": "2", + "reference": "swordartonline_tv2_0011", + "type": "EPS", + "order": 36, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps11_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps11_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25101-episode-11-what-it-means-to-be-strong", + "urlPath": "/video/sword-art-online/25101-episode-11-what-it-means-to-be-strong", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25101", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25102, + "title": "Sword Art Online - Épisode 12", + "name": "Bullet of a Phantom", + "number": "Épisode 12", + "shortNumber": "12", + "season": "2", + "reference": "swordartonline_tv2_0012", + "type": "EPS", + "order": 37, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps12_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps12_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25102-episode-12-bullet-of-a-phantom", + "urlPath": "/video/sword-art-online/25102-episode-12-bullet-of-a-phantom", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25102", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25103, + "title": "Sword Art Online - Épisode 13", + "name": "Phantom Bullet", + "number": "Épisode 13", + "shortNumber": "13", + "season": "2", + "reference": "swordartonline_tv2_0013", + "type": "EPS", + "order": 38, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps13_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps13_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25103-episode-13-phantom-bullet", + "urlPath": "/video/sword-art-online/25103-episode-13-phantom-bullet", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25103", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25104, + "title": "Sword Art Online - Épisode 14", + "name": "One Little Step", + "number": "Épisode 14", + "shortNumber": "14", + "season": "2", + "reference": "swordartonline_tv2_0014", + "type": "EPS", + "order": 39, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps14_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps14_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25104-episode-14-one-little-step", + "urlPath": "/video/sword-art-online/25104-episode-14-one-little-step", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25104", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25105, + "title": "Sword Art Online - Épisode 15", + "name": "The Queen of the Lake", + "number": "Épisode 15", + "shortNumber": "15", + "season": "2", + "reference": "swordartonline_tv2_0015", + "type": "EPS", + "order": 40, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps15_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps15_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25105-episode-15-the-queen-of-the-lake", + "urlPath": "/video/sword-art-online/25105-episode-15-the-queen-of-the-lake", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25105", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25106, + "title": "Sword Art Online - Épisode 16", + "name": "The King of the Giants", + "number": "Épisode 16", + "shortNumber": "16", + "season": "2", + "reference": "swordartonline_tv2_0016", + "type": "EPS", + "order": 41, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps16_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps16_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25106-episode-16-the-king-of-the-giants", + "urlPath": "/video/sword-art-online/25106-episode-16-the-king-of-the-giants", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25106", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25107, + "title": "Sword Art Online - Épisode 17", + "name": "Excalibur", + "number": "Épisode 17", + "shortNumber": "17", + "season": "2", + "reference": "swordartonline_tv2_0017", + "type": "EPS", + "order": 42, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps17_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps17_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25107-episode-17-excalibur", + "urlPath": "/video/sword-art-online/25107-episode-17-excalibur", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25107", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25108, + "title": "Sword Art Online - Épisode 18", + "name": "Forest House", + "number": "Épisode 18", + "shortNumber": "18", + "season": "2", + "reference": "swordartonline_tv2_0018", + "type": "EPS", + "order": 43, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps18_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps18_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25108-episode-18-forest-house", + "urlPath": "/video/sword-art-online/25108-episode-18-forest-house", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25108", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25109, + "title": "Sword Art Online - Épisode 19", + "name": "Sleeping Knights", + "number": "Épisode 19", + "shortNumber": "19", + "season": "2", + "reference": "swordartonline_tv2_0019", + "type": "EPS", + "order": 44, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps19_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps19_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25109-episode-19-sleeping-knights", + "urlPath": "/video/sword-art-online/25109-episode-19-sleeping-knights", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25109", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25110, + "title": "Sword Art Online - Épisode 20", + "name": "Sleeping Knights", + "number": "Épisode 20", + "shortNumber": "20", + "season": "2", + "reference": "swordartonline_tv2_0020", + "type": "EPS", + "order": 45, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps20_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps20_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25110-episode-20-sleeping-knights", + "urlPath": "/video/sword-art-online/25110-episode-20-sleeping-knights", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25110", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25111, + "title": "Sword Art Online - Épisode 21", + "name": "The Monument of the Swordsmen", + "number": "Épisode 21", + "shortNumber": "21", + "season": "2", + "reference": "swordartonline_tv2_0021", + "type": "EPS", + "order": 46, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps21_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps21_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25111-episode-21-the-monument-of-the-swordsmen", + "urlPath": "/video/sword-art-online/25111-episode-21-the-monument-of-the-swordsmen", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25111", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25112, + "title": "Sword Art Online - Épisode 22", + "name": "The End of the Journey", + "number": "Épisode 22", + "shortNumber": "22", + "season": "2", + "reference": "swordartonline_tv2_0022", + "type": "EPS", + "order": 47, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps22_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps22_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25112-episode-22-the-end-of-the-journey", + "urlPath": "/video/sword-art-online/25112-episode-22-the-end-of-the-journey", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25112", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25113, + "title": "Sword Art Online - Épisode 23", + "name": "Beginning of a Dream", + "number": "Épisode 23", + "shortNumber": "23", + "season": "2", + "reference": "swordartonline_tv2_0023", + "type": "EPS", + "order": 48, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps23_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps23_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25113-episode-23-beginning-of-a-dream", + "urlPath": "/video/sword-art-online/25113-episode-23-beginning-of-a-dream", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25113", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25114, + "title": "Sword Art Online - Épisode 24", + "name": "Mother's Rosario", + "number": "Épisode 24", + "shortNumber": "24", + "season": "2", + "reference": "swordartonline_tv2_0024", + "type": "EPS", + "order": 49, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps24_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv2/web/eps24_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25114-episode-24-mother-s-rosario", + "urlPath": "/video/sword-art-online/25114-episode-24-mother-s-rosario", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25114", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25066, + "title": "Sword Art Online - Épisode 1", + "name": "Le Monde de l'épée", + "number": "Épisode 1", + "shortNumber": "1", + "season": "1", + "reference": "swordartonline_tv_0001", + "type": "EPS", + "order": 1, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps1_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps1_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25066-episode-1-le-monde-de-l-epee", + "urlPath": "/video/sword-art-online/25066-episode-1-le-monde-de-l-epee", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25066", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25067, + "title": "Sword Art Online - Épisode 2", + "name": "Beater", + "number": "Épisode 2", + "shortNumber": "2", + "season": "1", + "reference": "swordartonline_tv_0002", + "type": "EPS", + "order": 2, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps2_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps2_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25067-episode-2-beater", + "urlPath": "/video/sword-art-online/25067-episode-2-beater", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25067", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25068, + "title": "Sword Art Online - Épisode 3", + "name": "Le Renne au nez rouge", + "number": "Épisode 3", + "shortNumber": "3", + "season": "1", + "reference": "swordartonline_tv_0003", + "type": "EPS", + "order": 3, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps3_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps3_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25068-episode-3-le-renne-au-nez-rouge", + "urlPath": "/video/sword-art-online/25068-episode-3-le-renne-au-nez-rouge", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25068", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25069, + "title": "Sword Art Online - Épisode 4", + "name": "L'Épéiste noir", + "number": "Épisode 4", + "shortNumber": "4", + "season": "1", + "reference": "swordartonline_tv_0004", + "type": "EPS", + "order": 4, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps4_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps4_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25069-episode-4-l-epeiste-noir", + "urlPath": "/video/sword-art-online/25069-episode-4-l-epeiste-noir", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25069", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25070, + "title": "Sword Art Online - Épisode 5", + "name": "Incident interne", + "number": "Épisode 5", + "shortNumber": "5", + "season": "1", + "reference": "swordartonline_tv_0005", + "type": "EPS", + "order": 5, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps5_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps5_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25070-episode-5-incident-interne", + "urlPath": "/video/sword-art-online/25070-episode-5-incident-interne", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25070", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25071, + "title": "Sword Art Online - Épisode 6", + "name": "Le Fantôme vengeur", + "number": "Épisode 6", + "shortNumber": "6", + "season": "1", + "reference": "swordartonline_tv_0006", + "type": "EPS", + "order": 6, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps6_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps6_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25071-episode-6-le-fantome-vengeur", + "urlPath": "/video/sword-art-online/25071-episode-6-le-fantome-vengeur", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25071", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25072, + "title": "Sword Art Online - Épisode 7", + "name": "La Température du cœur", + "number": "Épisode 7", + "shortNumber": "7", + "season": "1", + "reference": "swordartonline_tv_0007", + "type": "EPS", + "order": 7, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps7_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps7_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25072-episode-7-la-temperature-du-coeur", + "urlPath": "/video/sword-art-online/25072-episode-7-la-temperature-du-coeur", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25072", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25073, + "title": "Sword Art Online - Épisode 8", + "name": "La Danse de l'épée noire et blanche", + "number": "Épisode 8", + "shortNumber": "8", + "season": "1", + "reference": "swordartonline_tv_0008", + "type": "EPS", + "order": 8, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps8_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps8_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25073-episode-8-la-danse-de-l-epee-noire-et-blanche", + "urlPath": "/video/sword-art-online/25073-episode-8-la-danse-de-l-epee-noire-et-blanche", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25073", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25074, + "title": "Sword Art Online - Épisode 9", + "name": "Le Démon aux yeux azur", + "number": "Épisode 9", + "shortNumber": "9", + "season": "1", + "reference": "swordartonline_tv_0009", + "type": "EPS", + "order": 9, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps9_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps9_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25074-episode-9-le-demon-aux-yeux-azur", + "urlPath": "/video/sword-art-online/25074-episode-9-le-demon-aux-yeux-azur", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25074", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25075, + "title": "Sword Art Online - Épisode 10", + "name": "Intentions meurtrières rouge sang", + "number": "Épisode 10", + "shortNumber": "10", + "season": "1", + "reference": "swordartonline_tv_0010", + "type": "EPS", + "order": 10, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps10_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps10_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25075-episode-10-intentions-meurtrieres-rouge-sang", + "urlPath": "/video/sword-art-online/25075-episode-10-intentions-meurtrieres-rouge-sang", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25075", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25076, + "title": "Sword Art Online - Épisode 11", + "name": "La petite fille de la rosée du matin", + "number": "Épisode 11", + "shortNumber": "11", + "season": "1", + "reference": "swordartonline_tv_0011", + "type": "EPS", + "order": 11, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps11_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps11_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25076-episode-11-la-petite-fille-de-la-rosee-du-matin", + "urlPath": "/video/sword-art-online/25076-episode-11-la-petite-fille-de-la-rosee-du-matin", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25076", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25077, + "title": "Sword Art Online - Épisode 12", + "name": "Le Cœur de Yui", + "number": "Épisode 12", + "shortNumber": "12", + "season": "1", + "reference": "swordartonline_tv_0012", + "type": "EPS", + "order": 12, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps12_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps12_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25077-episode-12-le-coeur-de-yui", + "urlPath": "/video/sword-art-online/25077-episode-12-le-coeur-de-yui", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25077", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25078, + "title": "Sword Art Online - Épisode 13", + "name": "Les Abîmes de l'enfer", + "number": "Épisode 13", + "shortNumber": "13", + "season": "1", + "reference": "swordartonline_tv_0013", + "type": "EPS", + "order": 13, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps13_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps13_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25078-episode-13-les-abimes-de-l-enfer", + "urlPath": "/video/sword-art-online/25078-episode-13-les-abimes-de-l-enfer", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25078", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25079, + "title": "Sword Art Online - Épisode 14", + "name": "La Fin du monde", + "number": "Épisode 14", + "shortNumber": "14", + "season": "1", + "reference": "swordartonline_tv_0014", + "type": "EPS", + "order": 14, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps14_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps14_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25079-episode-14-la-fin-du-monde", + "urlPath": "/video/sword-art-online/25079-episode-14-la-fin-du-monde", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25079", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25080, + "title": "Sword Art Online - Épisode 15", + "name": "Le Retour", + "number": "Épisode 15", + "shortNumber": "15", + "season": "1", + "reference": "swordartonline_tv_0015", + "type": "EPS", + "order": 15, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps15_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps15_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25080-episode-15-le-retour", + "urlPath": "/video/sword-art-online/25080-episode-15-le-retour", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25080", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25081, + "title": "Sword Art Online - Épisode 16", + "name": "Le Pays des fées", + "number": "Épisode 16", + "shortNumber": "16", + "season": "1", + "reference": "swordartonline_tv_0016", + "type": "EPS", + "order": 16, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps16_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps16_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25081-episode-16-le-pays-des-fees", + "urlPath": "/video/sword-art-online/25081-episode-16-le-pays-des-fees", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25081", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25082, + "title": "Sword Art Online - Épisode 17", + "name": "La Reine prisonnière", + "number": "Épisode 17", + "shortNumber": "17", + "season": "1", + "reference": "swordartonline_tv_0017", + "type": "EPS", + "order": 17, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps17_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps17_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25082-episode-17-la-reine-prisonniere", + "urlPath": "/video/sword-art-online/25082-episode-17-la-reine-prisonniere", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25082", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25083, + "title": "Sword Art Online - Épisode 18", + "name": "L'Arbre du Monde", + "number": "Épisode 18", + "shortNumber": "18", + "season": "1", + "reference": "swordartonline_tv_0018", + "type": "EPS", + "order": 18, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps18_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps18_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25083-episode-18-l-arbre-du-monde", + "urlPath": "/video/sword-art-online/25083-episode-18-l-arbre-du-monde", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25083", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25084, + "title": "Sword Art Online - Épisode 19", + "name": "Ruger Corridor", + "number": "Épisode 19", + "shortNumber": "19", + "season": "1", + "reference": "swordartonline_tv_0019", + "type": "EPS", + "order": 19, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps19_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps19_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25084-episode-19-ruger-corridor", + "urlPath": "/video/sword-art-online/25084-episode-19-ruger-corridor", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25084", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25085, + "title": "Sword Art Online - Épisode 20", + "name": "Le Général impétueux", + "number": "Épisode 20", + "shortNumber": "20", + "season": "1", + "reference": "swordartonline_tv_0020", + "type": "EPS", + "order": 20, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps20_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps20_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25085-episode-20-le-general-impetueux", + "urlPath": "/video/sword-art-online/25085-episode-20-le-general-impetueux", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25085", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25086, + "title": "Sword Art Online - Épisode 21", + "name": "La Vérité sur Alfheim", + "number": "Épisode 21", + "shortNumber": "21", + "season": "1", + "reference": "swordartonline_tv_0021", + "type": "EPS", + "order": 21, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps21_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps21_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25086-episode-21-la-verite-sur-alfheim", + "urlPath": "/video/sword-art-online/25086-episode-21-la-verite-sur-alfheim", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25086", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25087, + "title": "Sword Art Online - Épisode 22", + "name": "La Grande Quête", + "number": "Épisode 22", + "shortNumber": "22", + "season": "1", + "reference": "swordartonline_tv_0022", + "type": "EPS", + "order": 22, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps22_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps22_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25087-episode-22-la-grande-quete", + "urlPath": "/video/sword-art-online/25087-episode-22-la-grande-quete", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25087", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25088, + "title": "Sword Art Online - Épisode 23", + "name": "Le Lien", + "number": "Épisode 23", + "shortNumber": "23", + "season": "1", + "reference": "swordartonline_tv_0023", + "type": "EPS", + "order": 23, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps23_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps23_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25088-episode-23-le-lien", + "urlPath": "/video/sword-art-online/25088-episode-23-le-lien", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25088", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25089, + "title": "Sword Art Online - Épisode 24", + "name": "Le Briseur de métal", + "number": "Épisode 24", + "shortNumber": "24", + "season": "1", + "reference": "swordartonline_tv_0024", + "type": "EPS", + "order": 24, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps24_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps24_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25089-episode-24-le-briseur-de-metal", + "urlPath": "/video/sword-art-online/25089-episode-24-le-briseur-de-metal", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25089", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + }, + { + "id": 25090, + "title": "Sword Art Online - Épisode 25", + "name": "La Graine du monde", + "number": "Épisode 25", + "shortNumber": "25", + "season": "1", + "reference": "swordartonline_tv_0025", + "type": "EPS", + "order": 25, + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps25_320x180.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/eps25_640x360.jpg", + "summary": null, + "releaseDate": "2024-04-10T07:00:00Z", + "duration": 1440, + "url": "https://animationdigitalnetwork.fr/video/sword-art-online/25090-episode-25-la-graine-du-monde", + "urlPath": "/video/sword-art-online/25090-episode-25-la-graine-du-monde", + "embeddedUrl": "https://animationdigitalnetwork.fr/embedded/sword-art-online/25090", + "languages": [ + "vostf" + ], + "qualities": [ + "sd" + ], + "rating": 3, + "ratingsCount": 10, + "commentsCount": 0, + "available": false, + "download": false, + "free": false, + "freeWithAds": false, + "show": { + "id": 442, + "title": "Sword Art Online", + "type": "EPS", + "originalTitle": "ソードアート・オンライン", + "shortTitle": "Sword Art Online", + "reference": "swordartonline_tv", + "age": "10+", + "languages": [ + "vostf" + ], + "summary": "(Diffusion des saisons 1 et 2 en VOSTFR et en VF le 10 avril) - Bienvenue dans le jeu en ligne Sword Art Online. Kirito adore les MMORPG et fait partie des 10 000 privilégiés ayant réussi à se procurer ce jeu qui fonctionne avec un système de réalité virtuelle directe. Ainsi, le joueur met un casque et entre dans le jeu, maniant son avatar avec sa pensée. Kirito avait déjà testé la version Bêta et se débrouille mieux que d’autres. Sword Art fait la part belle aux combats et ne possède pas de magie. Mais tous paniquent quand ils apprennent qu’ils ne peuvent plus sortir du jeu. La seule façon de se déconnecter est de le finir en arrivant au niveau 100. De plus, si le joueur perd tous ses points de vie, il meurt également dans la réalité ! Quel est le but du créateur du jeu ?", + "image": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_175x250.jpg", + "image2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/affiche_350x500.jpg", + "imageHorizontal": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_320x180.jpg", + "imageHorizontal2x": "https://image.animationdigitalnetwork.fr/license/swordartonline/tv/web/license_640x360.jpg", + "url": "https://animationdigitalnetwork.fr/video/sword-art-online", + "urlPath": "/video/sword-art-online", + "episodeCount": 0, + "genres": [ + "Animation japonaise", + "Action", + "Drame", + "Fantastique", + "Romance", + "Isekai" + ], + "copyright": "©REKI KAWAHARA/ASCII MEDIA WORKS/SAO Project.", + "rating": 3, + "ratingsCount": 1, + "commentsCount": 2, + "qualities": [ + "sd" + ], + "simulcast": false, + "free": false, + "available": true, + "download": false, + "basedOn": "Light Novel", + "tagline": "Saisons 1 et 2 disponibles le 10 avril !", + "firstReleaseYear": "2012", + "productionStudio": "A-1 Pictures", + "countryOfOrigin": "Japon", + "productionTeam": [ + { + "role": "Réalisateur", + "name": "Tomohiko Ito" + }, + { + "role": "Scénariste", + "name": "Yukie Sugawara" + }, + { + "role": "Auteur", + "name": "Reki Kawahara" + }, + { + "role": "Character designer original", + "name": "abec" + }, + { + "role": "Compositeur", + "name": "Yuki Kajiura" + }, + { + "role": "Directeur artistique", + "name": "Yusuke Takeda" + } + ], + "nextVideoReleaseDate": "2024-04-10T07:00:00Z" + } + } + ] +} \ No newline at end of file