diff --git a/css/auth.css b/css/auth.css new file mode 100644 index 0000000..89750c8 --- /dev/null +++ b/css/auth.css @@ -0,0 +1,61 @@ +* { + background-color: #272727; +} + +body { + text-align: center; + display: flex; + justify-content: center; + align-items: center; + height: 100vh; +} + +.container-auth { + border-radius: 10px; + padding: 20px; + text-align: center; + max-width: 400px; + width: 100%; +} + +h1 { + font-weight: bold; + font-size: 24px; + line-height: 30px; + font-weight: 600; +} + +h2 { + font-weight: 400; + font-size: 16px; + line-height: 20px; + color: #fa777c; +} + +label { + font-weight: 700; + font-size: 12px; + color: #b5bac1; + line-height: 16px; +} + +input { + color: #fff; + width: 100%; + height: 30px; + border-radius: 5px; + padding: 5px; +} + +button { + font-weight: 500; + font-size: 16px; + line-height: 24px; + color: #fff; + margin-top: 10px; + padding: 10px 20px; + cursor: pointer; + border-radius: 10px; + width: 100%; + margin-bottom: 10px; +} \ No newline at end of file diff --git a/css/contrats.css b/css/contrats.css new file mode 100644 index 0000000..de9ccf6 --- /dev/null +++ b/css/contrats.css @@ -0,0 +1,8 @@ +#title{ + text-align: center; + margin-bottom: 100px; +} +.card{ + display: grid; + grid-template-columns: 1fr 1fr 1fr; +} \ No newline at end of file diff --git a/css/global.css b/css/global.css new file mode 100644 index 0000000..72a1a2d --- /dev/null +++ b/css/global.css @@ -0,0 +1,114 @@ +* { + font-family: "Inter", sans-serif; + box-sizing: border-box; + overflow: hidden; + background-color: #272727; +} + +body, +html { + height: 100%; + display: flex; + flex-direction: column; +} + +.modal-header, +.modal-title, +.modal-body, +#contratID{ + color: black; + background-color: white; +} + +/* Menu */ +.menu { + display: flex; + align-items: center; + justify-content: space-between; +} + +.title-section { + color: white; + display: flex; + align-items: center; + padding-left: 10px; +} + +.title-section img { + max-width: 80px; + max-height: 50px; +} + +.page-change-a { + padding-right: 10px; +} + +.page-change-button a { + margin: 2px; + color: black; + background-color: white; + border: 2px solid white; + border-radius: 10px; + + text-decoration: none; +} + +.page-change-button a:hover { + border-color: #eab308; + background-color: #eab308; + transition: all 1s; +} + +main { + flex: 1; +} + +/* Footer */ +footer { + color: white; +} + +footer p { + display: flex; + justify-content: center; + margin-bottom: 0px; +} + +h5{ + color: red; +} + +/* Canvas system +#canvas-system { + border: 1px solid white; +} + +/* Login modal */ +/* #loginModal { + position: fixed; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + padding: 20px; + border-radius: 8px; + box-shadow: 0 0 10px black; + z-index: 1000; + + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} */ + +/* #loginModal p { + margin-top: -10px; +} + +#loginModal input { + margin-bottom: 10px; +} */ + + +.card-title{ + color: white; +} \ No newline at end of file diff --git a/css/style.css b/css/style.css deleted file mode 100644 index d2b1e49..0000000 --- a/css/style.css +++ /dev/null @@ -1,87 +0,0 @@ -canvas { - width: 50%; - border: 2px solid black; - border-radius: 5px; -} - - - -* { - /* Pour que les tailles soient correctes */ - box-sizing: border-box; - } - - body { - /* Pour coller le menu au bord, sans espace */ - margin: 0; - } - - .menu { - /* Pour que le menu reste en place quand on scroll */ - position: fixed; - /* Pour que le menu ne soit pas sur le texte et que ce dernier puisse être sélectionné */ - width: 0px; - } - - main { - /* Pour que le texte ne soit pas sous le menu */ - margin-left: 50px; - width: 500px; - text-align: justify; - } - - #hamburger { - /* Pour que la checkbox ne s'affiche pas */ - display: none; - } - - #hamburger-logo { - /* Pour que le curseur soit un pointeur */ - cursor: pointer; - background: black; - width: 200px; - display: block; - color: white; - /* Pour que le menu hamburger s'affiche toujours */ - text-align: right; - /* Pour que le menu hamburger soit "rangé" par défaut */ - transform: translateX(-168px); - padding: 10px; - } - - nav { - display: flex; - flex-direction: column; - background: black; - overflow: hidden; - width: 200px; - /* Pour que les liens soient "rangés" par défaut */ - transform: translateX(-200px); - } - - #hamburger-logo, - nav { - /* Pour qu'il y ait une animation */ - transition: 0.7s; - } - - /* Lorsque #hamburger est coché, le #hamburger-logo et le nav qui sont dans le même parent changent de propriété */ - #hamburger:checked ~ #hamburger-logo, - #hamburger:checked ~ nav { - /* Changement de la position pour afficher les menus */ - transform: translate(0); - } - - nav a { - color: white; - text-decoration: none; - padding: 10px; - } - - nav a:hover { - background: #444; - } - - - - \ No newline at end of file diff --git a/images/contrat.jpg b/img/contrat.jpg similarity index 100% rename from images/contrat.jpg rename to img/contrat.jpg diff --git a/img/logo.png b/img/logo.png new file mode 100644 index 0000000..bd2485d Binary files /dev/null and b/img/logo.png differ diff --git a/js/agents.js b/js/agents.js index 15e4899..f5a9e4c 100644 --- a/js/agents.js +++ b/js/agents.js @@ -1,7 +1,7 @@ // Copyright © 2023 Entreprise SpaceTarders 'use strict' import { listSystems, getSystem, listWaypointsInSystem } from "./system.js" -let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ' +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" export function getAgent() { const settings = { async: true, diff --git a/js/contrat.js b/js/contrat.js index 4515557..283da84 100644 --- a/js/contrat.js +++ b/js/contrat.js @@ -1,6 +1,6 @@ // Copyright © 2023 Entreprise SpaceTarders 'use strict' -let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ" +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" export function CreateCardContrat(contrats){ $('#contrats').empty() @@ -10,18 +10,24 @@ export function CreateCardContrat(contrats){ const card = `
- +
-
${contrat.factionSymbol}
-

${contrat.accepted}

- - +
${contrat.factionSymbol}
+

${contrat.accepted}

+ +
` - $('#contrats').append(card) + + $('#contrats').append(card) + $('#btn-infos').on('click', async function(){ + await getInfosContrat($(this).attr('contratID')); + + }) }) } +{/* */} export function listContrats(){ const settings = { async: true, @@ -58,4 +64,33 @@ export async function getContrat(contratId){ }); return contrat; -} \ No newline at end of file +} + +export async function getInfosContrat(contratId){ + + let contrat; + await $.ajax(`https://api.spacetraders.io/v2/my/contracts/${contratId}`, { + method: 'GET', + headers: { + Accept: 'application/json', + Authorization: `Bearer ${token}` + }, + success: function(contrat){ + console.log(contrat); + window.contratID.innerText = `ID Contrat : ${contratId}` + window.exampleModalLabel.innerText = `${contrat.factionSymbol}` + + + }, + error: function(error){ + console.log(error); + } + }); + + return contrat; + +} + + + + diff --git a/js/faction.js b/js/faction.js index c1c8afc..8871f13 100644 --- a/js/faction.js +++ b/js/faction.js @@ -1,6 +1,6 @@ // Copyright © 2023 Entreprise SpaceTarders 'use strict' -let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ' +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" export async function listFactions(limit, pages){ let factions = []; diff --git a/js/main.js b/js/main.js index 664737f..c563ab6 100644 --- a/js/main.js +++ b/js/main.js @@ -3,53 +3,21 @@ import { createAgent, getAgent } from "./agents.js"; import { listSystems, getSystem, listWaypointsInSystem } from "./system.js"; import {getFaction, listFactions} from "./faction.js"; -import {getContrat, listContrats, CreateCardContrat} from "./contrat.js"; - - - -let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ"; -let offset = { - x: 10, - y: 10 -}; -function initGame() { - const settings = { - async: true, - crossDomain: true, - url: 'https://api.spacetraders.io/v2/register', - method: 'POST', - headers: { - 'Content-Type': 'application/json', - Accept: 'application/json' - }, - processData: false, - data: '{\n "faction": "COSMIC",\n "symbol": "",\n "email": ""\n}' - }; - - $.ajax(settings).done(function (response) { - console.log(response); - }); -} - -getAgent() - -function getWayPoint(wayPoint) { - const settings = { - async: true, - crossDomain: true, - url: `https://api.spacetraders.io/v2/systems/systemSymbol/waypoints/waypointSymbol`, - method: 'GET', - headers: { - Accept: 'application/json' - } - }; - - $.ajax(settings).done(function (response) { - console.log(response); - }); -}; - -let contrat = listContrats() +import {getContrat, listContrats, CreateCardContrat, getInfosContrat} from "./contrat.js"; + + + +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" + +$(document).ready(async function(){ + let contrat = listContrats() + if (document.URL.includes('contrats.html')) { + + return; + } + +}) + diff --git a/js/system.js b/js/system.js index f19a9f7..64ade18 100644 --- a/js/system.js +++ b/js/system.js @@ -1,6 +1,6 @@ // Copyright © 2023 Entreprise SpaceTarders 'use strict' -let token = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ' +let token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" const lienSysteme = 'https://api.spacetraders.io/v2/systems' export async function listSystems(limit, pages){ diff --git a/templates/contrats.html b/templates/contrats.html index 8dc852b..f088d0c 100644 --- a/templates/contrats.html +++ b/templates/contrats.html @@ -1,37 +1,77 @@ + - - - - - - - - + + + + + + + + + + + + + + - Space traders - - - - -
- + SpaceTraders + + + -

Mes contrats

+
+

Mes contrats

+ + + +
- + + + \ No newline at end of file diff --git a/templates/index.html b/templates/index.html index 051729c..ab370a3 100644 --- a/templates/index.html +++ b/templates/index.html @@ -1,39 +1,55 @@ - - - - - - - - + + + + + + + + + + + + + + + + - Space traders - - - - -
- - -
- + SpaceTraders + + + - -
- - \ No newline at end of file +

Page accueil

+ + + + diff --git a/token b/token index 3fd298f..7ac72ef 100644 --- a/token +++ b/token @@ -1 +1 @@ -eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS4yIiwicmVzZXRfZGF0ZSI6IjIwMjMtMTEtMTgiLCJpYXQiOjE3MDE0MzUxMTAsInN1YiI6ImFnZW50LXRva2VuIn0.AKe66yRJWV457_U-C5w0z03zwoPJIOyFgnef_nQXjXLtacyYxeYkcilv-5nRcsk1BsI1NkV2mT6Hg_WbevvxJzfIVSq1ZDQAUyA-sxM7qro3-kFfHWgy7FrCGEoKRTGRbFSo6yuKhvygAY6cZFsEAW6i9ayq893JFWeFNM-xfXDrnNI52VOQzWVJzYdhyi7jSsmUfw3vXf9OuXjaMPP3qpmCLpuElWGnqSyQBdLs7y7rN3MmkYH0E5ZPrYmBmdqk10QkJ_bruf2AgU808Q9lgw013qMVoDHwb-83_LrWjzYuIBQQBpfRIyMQrLaum-uEHsIECBg5D3M_OTFmy7htqQ \ No newline at end of file +"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudGlmaWVyIjoiUlVCRU4iLCJ2ZXJzaW9uIjoidjIuMS40IiwicmVzZXRfZGF0ZSI6IjIwMjMtMTItMDIiLCJpYXQiOjE3MDIwMzg1ODgsInN1YiI6ImFnZW50LXRva2VuIn0.Brl1Mm9K7bG7kLfWGiU6M0WFvOXy-sV3T_p9-c-v97XMFvsmA85lpdKzeaAyVpOPMF4uM08HqxWb9mEGbag5whX0LPk39B_vjKeQVB9cjpjDsaElQz2HuWIUlB33eOQTyt_LKdQYnY7Jqh2HLopMbzK5sjeaGYzjoWILCuZXjqQkp5b0M_0EvXqCgDn1PpEb_MXSLkTpSQ1xa6hCaGjf6fE3KfTgRxEGpIunAeLRq1edaN4fU7TFU0SWSJZ1HO9CMfxA7eZt274sw4Wiea6LpwlPsGOMf1HFVl2sWdpbdIwdaFHyKpUAHWOGORKBB4B9G77wFLcOukwQMOQYOFL48Q" \ No newline at end of file