diff --git a/pom.xml b/pom.xml index 58c26ea2..475bd7c7 100644 --- a/pom.xml +++ b/pom.xml @@ -29,7 +29,7 @@ fr.litarvan openauth - 1.1.3 + 1.1.6 net.minecraft diff --git a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/LoginPanel.java b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/LoginPanel.java index 1c46687a..81550eed 100644 --- a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/LoginPanel.java +++ b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/LoginPanel.java @@ -1,25 +1,16 @@ package rip.athena.client.gui.menu.altmanager.panels; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import fr.litarvan.openauth.microsoft.LoginFrame; -import fr.litarvan.openauth.microsoft.MicrosoftAuthResult; -import fr.litarvan.openauth.microsoft.MicrosoftAuthenticationException; -import fr.litarvan.openauth.microsoft.MicrosoftAuthenticator; -import javafx.embed.swing.JFXPanel; -import javafx.scene.Scene; -import javafx.scene.web.WebView; +import fr.litarvan.openauth.microsoft.*; import net.minecraft.client.Minecraft; -import net.minecraft.util.ResourceLocation; import net.minecraft.util.Session; -import org.apache.commons.io.IOUtils; import org.lwjgl.input.Keyboard; import rip.athena.client.Athena; import rip.athena.client.account.Account; import rip.athena.client.account.AccountType; import rip.athena.client.gui.menu.altmanager.Panel; import rip.athena.client.gui.menu.altmanager.button.AltButton; -import rip.athena.client.gui.menu.altmanager.helpers.AltManagerUtils; +import rip.athena.client.gui.menu.altmanager.panels.auth.AthenaAuth; +import rip.athena.client.gui.menu.altmanager.panels.auth.MicrosoftAuthResult; import rip.athena.client.utils.animations.Animation; import rip.athena.client.utils.animations.Direction; import rip.athena.client.utils.animations.impl.DecelerateAnimation; @@ -28,9 +19,6 @@ import rip.athena.client.utils.render.*; import rip.athena.client.utils.render.TextField; import java.awt.*; -import java.io.IOException; -import java.net.HttpURLConnection; -import java.net.URL; import java.util.ArrayList; import java.util.List; @@ -154,10 +142,9 @@ public class LoginPanel extends Panel { if (hoveringMicrosoft && button == 0) { new Thread(() -> { - MicrosoftAuthenticator authenticator = new MicrosoftAuthenticator(); + AthenaAuth authenticator = new AthenaAuth(); - TextField username = textFields.get(0); - String email = username.getText(); + String email = textFields.get(0).getText(); String password = textFields.get(1).getText(); if (email.contains(":")) { String[] split = email.split(":"); @@ -169,7 +156,7 @@ public class LoginPanel extends Panel { try { Athena.INSTANCE.getLog().info(email + password); - MicrosoftAuthResult acc = authenticator.loginWithCredentials(email, password); + MicrosoftAuthResult acc = authenticator.loginWithWebview(); Minecraft.getMinecraft().session = new Session(acc.getProfile().getName(), acc.getProfile().getId(), acc.getAccessToken(), "legacy"); @@ -181,7 +168,7 @@ public class LoginPanel extends Panel { Athena.INSTANCE.getLog().info("Success: Logged into " + acc.getProfile().getName()); } catch (MicrosoftAuthenticationException e) { - e.printStackTrace(); + throw new RuntimeException(e); } resetTextFields(); diff --git a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/AthenaAuth.java b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/AthenaAuth.java new file mode 100644 index 00000000..4987f017 --- /dev/null +++ b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/AthenaAuth.java @@ -0,0 +1,175 @@ +package rip.athena.client.gui.menu.altmanager.panels.auth; + +import fr.litarvan.openauth.microsoft.*; +import fr.litarvan.openauth.microsoft.model.request.MinecraftLoginRequest; +import fr.litarvan.openauth.microsoft.model.request.XSTSAuthorizationProperties; +import fr.litarvan.openauth.microsoft.model.request.XboxLiveLoginProperties; +import fr.litarvan.openauth.microsoft.model.request.XboxLoginRequest; +import fr.litarvan.openauth.microsoft.model.response.MinecraftLoginResponse; +import fr.litarvan.openauth.microsoft.model.response.MinecraftProfile; +import fr.litarvan.openauth.microsoft.model.response.MinecraftStoreResponse; +import fr.litarvan.openauth.microsoft.model.response.XboxLoginResponse; + +import java.io.UnsupportedEncodingException; +import java.net.CookieHandler; +import java.net.CookieManager; +import java.net.URLDecoder; +import java.util.Arrays; +import java.util.Base64; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionException; +import java.util.concurrent.ExecutionException; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + + +public class AthenaAuth { + public static final String MICROSOFT_AUTHORIZATION_ENDPOINT = "https://login.microsoftonline.com/consumers/oauth2/v2.0/authorize"; + public static final String MICROSOFT_TOKEN_ENDPOINT = "https://login.live.com/oauth20_token.srf"; + public static final String MICROSOFT_REDIRECTION_ENDPOINT = "https://login.live.com/oauth20_desktop.srf"; + + public static final String XBOX_LIVE_AUTH_HOST = "user.auth.xboxlive.com"; + public static final String XBOX_LIVE_CLIENT_ID = "000000004C12AE6F"; + public static final String XBOX_LIVE_SERVICE_SCOPE = "service::user.auth.xboxlive.com::MBI_SSL"; + + public static final String XBOX_LIVE_AUTHORIZATION_ENDPOINT = "https://user.auth.xboxlive.com/user/authenticate"; + public static final String XSTS_AUTHORIZATION_ENDPOINT = "https://xsts.auth.xboxlive.com/xsts/authorize"; + public static final String MINECRAFT_AUTH_ENDPOINT = "https://api.minecraftservices.com/authentication/login_with_xbox"; + + public static final String XBOX_LIVE_AUTH_RELAY = "http://auth.xboxlive.com"; + public static final String MINECRAFT_AUTH_RELAY = "rp://api.minecraftservices.com/"; + + public static final String MINECRAFT_STORE_ENDPOINT = "https://api.minecraftservices.com/entitlements/mcstore"; + public static final String MINECRAFT_PROFILE_ENDPOINT = "https://api.minecraftservices.com/minecraft/profile"; + + public static final String MINECRAFT_STORE_IDENTIFIER = "game_minecraft"; + private final HttpClient http; + + public AthenaAuth() { + this.http = new HttpClient(); + } + + public MicrosoftAuthResult loginWithWebview() throws MicrosoftAuthenticationException { + try { + return loginWithAsyncWebview().get(); + } catch (InterruptedException | ExecutionException e) { + throw new MicrosoftAuthenticationException(e); + } + } + + private CompletableFuture loginWithAsyncWebview() { + if(!System.getProperty("java.version").startsWith("1.")) + CookieHandler.setDefault(new CookieManager()); + + String url = String.format("%s?%s", MICROSOFT_AUTHORIZATION_ENDPOINT, http.buildParams(getLoginParams())); + LoginFrame frame = new LoginFrame(); + + return frame.start(url).thenApplyAsync(result -> { + try { + if(result != null) + return loginWithTokens(extractTokens(result),true); + else return null; + } catch (MicrosoftAuthenticationException e) { + throw new CompletionException(e); + } + }); + } + + private MicrosoftAuthResult loginWithTokens(AuthTokens tokens) throws MicrosoftAuthenticationException { + return loginWithTokens(tokens,true); + } + + public MicrosoftAuthResult loginWithTokens(AuthTokens tokens, boolean retrieveProfile) throws MicrosoftAuthenticationException { + XboxLoginResponse xboxLiveResponse = xboxLiveLogin(tokens.getAccessToken()); + XboxLoginResponse xstsResponse = xstsLogin(xboxLiveResponse.getToken()); + + String userHash = xstsResponse.getDisplayClaims().getUsers()[0].getUserHash(); + MinecraftLoginResponse minecraftResponse = minecraftLogin(userHash, xstsResponse.getToken()); + MinecraftStoreResponse storeResponse = http.getJson( + MINECRAFT_STORE_ENDPOINT, + minecraftResponse.getAccessToken(), + MinecraftStoreResponse.class + ); + + if (Arrays.stream(storeResponse.getItems()).noneMatch(item -> item.getName().equals(MINECRAFT_STORE_IDENTIFIER))) { + throw new MicrosoftAuthenticationException("Player didn't buy Minecraft Java Edition or did not migrate its account"); + } + MinecraftProfile profile = null; + if (retrieveProfile) { + profile = http.getJson( + MINECRAFT_PROFILE_ENDPOINT, + minecraftResponse.getAccessToken(), + MinecraftProfile.class + ); + } + + return new MicrosoftAuthResult( + profile, + minecraftResponse.getAccessToken(), + tokens.getRefreshToken(), + xboxLiveResponse.getDisplayClaims().getUsers()[0].getUserHash(), + Base64.getEncoder().encodeToString(minecraftResponse.getUsername().getBytes()) + ); + } + + protected XboxLoginResponse xboxLiveLogin(String accessToken) throws MicrosoftAuthenticationException { + XboxLiveLoginProperties properties = new XboxLiveLoginProperties("RPS", XBOX_LIVE_AUTH_HOST, accessToken); + XboxLoginRequest request = new XboxLoginRequest<>( + properties, XBOX_LIVE_AUTH_RELAY, "JWT" + ); + + return http.postJson(XBOX_LIVE_AUTHORIZATION_ENDPOINT, request, XboxLoginResponse.class); + } + + protected XboxLoginResponse xstsLogin(String xboxLiveToken) throws MicrosoftAuthenticationException { + XSTSAuthorizationProperties properties = new XSTSAuthorizationProperties("RETAIL", new String[]{xboxLiveToken}); + XboxLoginRequest request = new XboxLoginRequest<>( + properties, MINECRAFT_AUTH_RELAY, "JWT" + ); + + return http.postJson(XSTS_AUTHORIZATION_ENDPOINT, request, XboxLoginResponse.class); + } + + protected MinecraftLoginResponse minecraftLogin(String userHash, String xstsToken) throws MicrosoftAuthenticationException { + MinecraftLoginRequest request = new MinecraftLoginRequest(String.format("XBL3.0 x=%s;%s", userHash, xstsToken)); + return http.postJson(MINECRAFT_AUTH_ENDPOINT, request, MinecraftLoginResponse.class); + } + + protected Map getLoginParams() { + Map params = new HashMap<>(); + params.put("client_id", XBOX_LIVE_CLIENT_ID); + params.put("redirect_uri", MICROSOFT_REDIRECTION_ENDPOINT); + params.put("scope", XBOX_LIVE_SERVICE_SCOPE); + params.put("response_type", "token"); + + return params; + } + + protected AuthTokens extractTokens(String url) throws MicrosoftAuthenticationException { + return new AuthTokens(extractValue(url, "access_token"), extractValue(url, "refresh_token")); + } + + protected String extractValue(String url, String key) throws MicrosoftAuthenticationException { + String matched = match(key + "=([^&]*)", url); + if (matched == null) { + throw new MicrosoftAuthenticationException("Invalid credentials or tokens"); + } + + try { + return URLDecoder.decode(matched, "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw new MicrosoftAuthenticationException(e); + } + } + + protected String match(String regex, String content) { + Matcher matcher = Pattern.compile(regex).matcher(content); + if (!matcher.find()) { + return null; + } + + return matcher.group(1); + } +} diff --git a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/HttpClient.java b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/HttpClient.java new file mode 100644 index 00000000..fb8f3935 --- /dev/null +++ b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/HttpClient.java @@ -0,0 +1,216 @@ +/* + * Copyright 2015-2021 Adrien 'Litarvan' Navratil + * + * This file is part of OpenAuth. + + * OpenAuth is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * OpenAuth is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with OpenAuth. If not, see . + */ +package rip.athena.client.gui.menu.altmanager.panels.auth; + +import com.google.gson.Gson; +import fr.litarvan.openauth.microsoft.MicrosoftAuthenticationException; + +import java.io.*; +import java.net.HttpURLConnection; +import java.net.Proxy; +import java.net.URL; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.Map; + +public class HttpClient +{ + public static final String MIME_TYPE_JSON = "application/json"; + public static final String MIME_TYPE_URLENCODED_FORM = "application/x-www-form-urlencoded"; + + private final Gson gson; + private final Proxy proxy; + + public HttpClient() + { + this(Proxy.NO_PROXY); + } + public HttpClient(Proxy proxy) + { + this.gson = new Gson(); + this.proxy = proxy; + } + + + public String getText(String url, Map params) throws MicrosoftAuthenticationException + { + return readResponse(createConnection(url + '?' + buildParams(params))); + } + + public T getJson(String url, String token, Class responseClass) throws MicrosoftAuthenticationException + { + HttpURLConnection connection = createConnection(url); + connection.addRequestProperty("Authorization", "Bearer " + token); + connection.addRequestProperty("Accept", MIME_TYPE_JSON); + + return readJson(connection, responseClass); + } + + public HttpURLConnection postForm(String url, Map params) throws MicrosoftAuthenticationException + { + return post(url, MIME_TYPE_URLENCODED_FORM, "*/*", buildParams(params)); + } + + public T postJson(String url, Object request, Class responseClass) throws MicrosoftAuthenticationException + { + HttpURLConnection connection = post(url, MIME_TYPE_JSON, MIME_TYPE_JSON, gson.toJson(request)); + return readJson(connection, responseClass); + } + + public T postFormGetJson(String url, Map params, Class responseClass) throws MicrosoftAuthenticationException + { + return readJson(postForm(url, params), responseClass); + } + + + protected HttpURLConnection post(String url, String contentType, String accept, String data) throws MicrosoftAuthenticationException + { + HttpURLConnection connection = createConnection(url); + connection.setDoOutput(true); + connection.addRequestProperty("Content-Type", contentType); + connection.addRequestProperty("Accept", accept); + + try { + connection.setRequestMethod("POST"); + connection.getOutputStream().write(data.getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new MicrosoftAuthenticationException(e); + } + + return connection; + } + + protected T readJson(HttpURLConnection connection, Class responseType) throws MicrosoftAuthenticationException + { + return gson.fromJson(readResponse(connection), responseType); + } + + protected String readResponse(HttpURLConnection connection) throws MicrosoftAuthenticationException + { + String redirection = connection.getHeaderField("Location"); + if (redirection != null) { + return readResponse(createConnection(redirection)); + } + + StringBuilder response = new StringBuilder(); + + try + { + InputStream inputStream = connection.getInputStream(); + + // check if the url corresponds to a related authentication url + if(this.checkUrl(connection.getURL())) + { + // then patch the input stream like in the old MicrosoftPatchedHttpURLConnection class. + ByteArrayOutputStream buffer = new ByteArrayOutputStream(); + int n; + byte[] data = new byte[8192]; + + while ((n = inputStream.read(data, 0, data.length)) != -1) { + buffer.write(data, 0, n); + } + + byte[] patched = buffer + .toString("UTF-8") + .replaceAll("integrity ?=", "integrity.disabled=") + .replaceAll("setAttribute\\(\"integrity\"", "setAttribute(\"integrity.disabled\"") + .getBytes(StandardCharsets.UTF_8); + + inputStream = new ByteArrayInputStream(patched); + } + + try (BufferedReader br = new BufferedReader(new InputStreamReader(inputStream))) { + String line; + while ((line = br.readLine()) != null) { + response.append(line).append('\n'); + } + } catch (IOException e) { + throw new MicrosoftAuthenticationException(e); + } + } catch (IOException e) + { + throw new RuntimeException(e); + } + + return response.toString(); + } + + private boolean checkUrl(URL url) + { + return (("login.microsoftonline.com".equals(url.getHost()) && url.getPath().endsWith("/oauth2/authorize")) + || ("login.live.com".equals(url.getHost()) && "/oauth20_authorize.srf".equals(url.getPath())) + || ("login.live.com".equals(url.getHost()) && "/ppsecure/post.srf".equals(url.getPath())) + || ("login.microsoftonline.com".equals(url.getHost()) && "/login.srf".equals(url.getPath())) + || ("login.microsoftonline.com".equals(url.getHost()) && url.getPath().endsWith("/login")) + || ("login.microsoftonline.com".equals(url.getHost()) && url.getPath().endsWith("/SAS/ProcessAuth")) + || ("login.microsoftonline.com".equals(url.getHost()) && url.getPath().endsWith("/federation/oauth2")) + || ("login.microsoftonline.com".equals(url.getHost()) && url.getPath().endsWith("/oauth2/v2.0/authorize"))); + } + + protected HttpURLConnection followRedirects(HttpURLConnection connection) throws MicrosoftAuthenticationException + { + String redirection = connection.getHeaderField("Location"); + if (redirection != null) { + connection = followRedirects(createConnection(redirection)); + } + + return connection; + } + + protected String buildParams(Map params) + { + StringBuilder query = new StringBuilder(); + params.forEach((key, value) -> { + if (query.length() > 0) { + query.append('&'); + } + + try { + query.append(key).append('=').append(URLEncoder.encode(value, StandardCharsets.UTF_8.name())); + } catch (UnsupportedEncodingException ignored) { + // Can't happen + } + }); + + return query.toString(); + } + + protected HttpURLConnection createConnection(String url) throws MicrosoftAuthenticationException + { + HttpURLConnection connection; + try { + connection = (HttpURLConnection) new URL(url).openConnection(proxy); + } catch (IOException e) { + throw new MicrosoftAuthenticationException(e); + } + + String userAgent = "Mozilla/5.0 (XboxReplay; XboxLiveAuth/3.0) " + + "AppleWebKit/537.36 (KHTML, like Gecko) " + + "Chrome/71.0.3578.98 " + + "Safari/537.36"; + + connection.setConnectTimeout(30 * 1000); // 30s + connection.setReadTimeout(60 * 1000); // 60s + connection.setRequestProperty("Accept-Language", "en-US"); + connection.setRequestProperty("Accept-Charset", "UTF-8"); + connection.setRequestProperty("User-Agent", userAgent); + + return connection; + } +} diff --git a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/LoginFrame.java b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/LoginFrame.java new file mode 100644 index 00000000..0301b49c --- /dev/null +++ b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/LoginFrame.java @@ -0,0 +1,95 @@ +/* + * Copyright 2015-2021 Adrien 'Litarvan' Navratil + * + * This file is part of OpenAuth. + + * OpenAuth is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * OpenAuth is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with OpenAuth. If not, see . + */ +package rip.athena.client.gui.menu.altmanager.panels.auth; + +import javafx.application.Platform; +import javafx.embed.swing.JFXPanel; +import javafx.scene.Scene; +import javafx.scene.layout.VBox; +import javafx.scene.web.WebView; +import org.apache.http.protocol.RequestUserAgent; + +import javax.swing.*; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.util.concurrent.CompletableFuture; + +/* + * Had to use Swing here, JavaFX is meant to have an 'Application' but only one can exist. + * Creating one would break compatibility with JavaFX apps (which already have their own + * class), and letting the user do so would break compatibility with Swing apps. + * + * This method makes the frame compatible with pretty much everything. + */ + +public class LoginFrame extends JFrame +{ + private CompletableFuture future; + private boolean completed; + + public LoginFrame() + { + this.setTitle("Microsoft Authentication"); + this.setSize(750, 750); + this.setLocationRelativeTo(null); + this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + + this.setContentPane(new JFXPanel()); + } + + public CompletableFuture start(String url) + { + if (this.future != null) { + return this.future; + } + + this.future = new CompletableFuture<>(); + this.addWindowListener(new WindowAdapter() { + @Override + public void windowClosing(WindowEvent e) { + if(!completed) + future.complete(null); + } + }); + + Platform.runLater(() -> this.init(url)); + return this.future; + } + + protected void init(String url) { + WebView webView = new WebView(); + JFXPanel content = (JFXPanel) this.getContentPane(); + + content.setScene(new Scene(webView, this.getWidth(), this.getHeight())); + + webView.getEngine().locationProperty().addListener((observable, oldValue, newValue) -> { + if (newValue.contains("access_token")) { + this.future.complete(newValue); + completed = true; + this.dispose(); + } + }); + + webView.getEngine().setUserAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"); + webView.getEngine().load("github.com"); + System.out.println(url); + + this.setVisible(true); + } +} diff --git a/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/MicrosoftAuthResult.java b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/MicrosoftAuthResult.java new file mode 100644 index 00000000..1ef29d3c --- /dev/null +++ b/src/main/java/rip/athena/client/gui/menu/altmanager/panels/auth/MicrosoftAuthResult.java @@ -0,0 +1,91 @@ +/* + * Copyright 2015-2021 Adrien 'Litarvan' Navratil + * + * This file is part of OpenAuth. + + * OpenAuth is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * OpenAuth is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with OpenAuth. If not, see . + */ +package rip.athena.client.gui.menu.altmanager.panels.auth; + +import fr.litarvan.openauth.microsoft.model.response.MinecraftProfile; + +/** + * Microsoft authentication result + * + *

+ * This class contains the result of a successful Microsoft authentication: a player profile and its tokens (both + * access and refresh token). + *

+ * + * @author Litarvan + * @version 1.1.5 + */ +public class MicrosoftAuthResult +{ + private final MinecraftProfile profile; + private final String accessToken; + private final String refreshToken; + private final String xuid; + private final String clientId; + + public MicrosoftAuthResult(MinecraftProfile profile, String accessToken, String refreshToken, String xuid, String clientId) + { + this.profile = profile; + this.accessToken = accessToken; + this.refreshToken = refreshToken; + this.xuid = xuid; + this.clientId = clientId; + } + + /** + * @return The player Minecraft profile (contains its UUID and username) + */ + public MinecraftProfile getProfile() + { + return profile; + } + + /** + * @return The Minecraft access token + */ + public String getAccessToken() + { + return accessToken; + } + + /** + * @return The Microsoft refresh token that can be used to log the user back silently using + * + */ + public String getRefreshToken() + { + return refreshToken; + } + + /** + * @return The XUID of the player + */ + public String getXuid() + { + return this.xuid; + } + + /** + * @return The client ID of the player + */ + public String getClientId() + { + return this.clientId; + } +} diff --git a/workspace/logs/2023-06-26-1.log.gz b/workspace/logs/2023-06-26-1.log.gz index 57562038..b5800fa0 100644 Binary files a/workspace/logs/2023-06-26-1.log.gz and b/workspace/logs/2023-06-26-1.log.gz differ diff --git a/workspace/logs/2023-06-26-2.log.gz b/workspace/logs/2023-06-26-2.log.gz index 546b3bb8..0ded65ca 100644 Binary files a/workspace/logs/2023-06-26-2.log.gz and b/workspace/logs/2023-06-26-2.log.gz differ diff --git a/workspace/logs/2023-06-26-3.log.gz b/workspace/logs/2023-06-26-3.log.gz index 3bac1fcf..c5cc5880 100644 Binary files a/workspace/logs/2023-06-26-3.log.gz and b/workspace/logs/2023-06-26-3.log.gz differ diff --git a/workspace/logs/2023-06-26-4.log.gz b/workspace/logs/2023-06-26-4.log.gz index a4c78c81..6c899138 100644 Binary files a/workspace/logs/2023-06-26-4.log.gz and b/workspace/logs/2023-06-26-4.log.gz differ diff --git a/workspace/logs/2023-06-26-5.log.gz b/workspace/logs/2023-06-26-5.log.gz index a7f2c68b..5ea54fc8 100644 Binary files a/workspace/logs/2023-06-26-5.log.gz and b/workspace/logs/2023-06-26-5.log.gz differ diff --git a/workspace/logs/2023-06-26-6.log.gz b/workspace/logs/2023-06-26-6.log.gz index 56ba4d7e..13561702 100644 Binary files a/workspace/logs/2023-06-26-6.log.gz and b/workspace/logs/2023-06-26-6.log.gz differ diff --git a/workspace/logs/2023-06-26-7.log.gz b/workspace/logs/2023-06-26-7.log.gz index 3b5e92b4..34c3f93d 100644 Binary files a/workspace/logs/2023-06-26-7.log.gz and b/workspace/logs/2023-06-26-7.log.gz differ diff --git a/workspace/logs/latest.log b/workspace/logs/latest.log index e86e7008..4d9d8aa3 100644 --- a/workspace/logs/latest.log +++ b/workspace/logs/latest.log @@ -1,167 +1,146 @@ -[15:14:00] [Client thread/INFO]: Setting user: Player276 -[15:14:00] [Client thread/INFO]: (Session ID is token:0:Player276) -[15:14:01] [Client thread/INFO]: [OptiFine] *** Reflector Forge *** -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.Attributes -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: mods.betterfoliage.client.BetterFoliageClient -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.asm.transformers.BlamingTransformer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.world.ChunkWatchEvent$UnWatch -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.relauncher.CoreModManager -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.DimensionManager -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.GuiScreenEvent$DrawScreenEvent$Pre -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.GuiScreenEvent$DrawScreenEvent$Post -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.EntityViewRenderEvent$CameraSetup -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.EntityViewRenderEvent$FogColors -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.Event -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.EventBus -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.Event$Result -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.property.ExtendedBlockState -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.FMLClientHandler -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.FMLCommonHandler -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.biome.BiomeGenBase.getWaterColorMultiplier -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.addDestroyEffects -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.addHitEffects -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.canCreatureSpawn -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.canRenderInLayer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.doesSideBlockRendering -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.getBedDirection -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.getExtendedState -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.hasTileEntity -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isAir -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isBed -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isBedFoot -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isSideSolid -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.canRiderInteract -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Field not present: net.minecraft.entity.Entity.captureDrops -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Field not present: net.minecraft.entity.Entity.capturedDrops -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.shouldRenderInPass -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.shouldRiderSit -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.ForgeEventFactory -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.ForgeHooks -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.ForgeHooksClient -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.getDurabilityForDisplay -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.getModel -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.onEntitySwing -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.shouldCauseReequipAnimation -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.showDurabilityBar -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.ItemRecord.getRecordResource -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.ForgeModContainer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.potion.PotionEffect.isCurativeItem -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.canRenderBreaking -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.getRenderBoundingBox -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.hasFastRenderer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.shouldRenderInPass -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.preDrawBatch -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.drawBatch -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.vertex.VertexFormatElement$EnumUsage.preDraw -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.vertex.VertexFormatElement$EnumUsage.postDraw -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.World.countEntities -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.World.getPerWorldStorage -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getCloudRenderer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getSkyRenderer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getWeatherRenderer -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.GuiModList -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.IColoredBakedQuad -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.property.IExtendedBlockState -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.IRenderHandler -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.ISmartBlockModel -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.ItemModelMesherForge -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraft.launchwrapper.Launch -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.pipeline.LightUtil -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.MinecraftForge -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.MinecraftForgeClient -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.ModelLoader -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderBlockOverlayEvent$OverlayType -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.registry.RenderingRegistry -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderItemInFrameEvent -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Pre -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Post -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Specials$Pre -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Specials$Post -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.SplashProgress -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.world.WorldEvent$Load -[15:14:01] [Client thread/INFO]: [OptiFine] *** Reflector Vanilla *** -[15:14:01] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: optifine.OptiFineClassTransformer -[15:14:02] [Client thread/ERROR]: [Athena] Failed to load resource outside namespace (C:\Users\nitro\OneDrive\Desktop\programming\AthenaClient\Athena-Client\workspace\.\assets\minecraft\Athena\gui\settings.png).javax.imageio.IIOException: Can't read input file! -[15:14:02] [Client thread/WARN]: [Athena] Tried accessing non-existing module: theme -[15:14:02] [Client thread/WARN]: [Athena] Loaded config default with left over setting theme which is no longer used. -[15:14:02] [Client thread/WARN]: [Athena] Tried accessing non-existing module: cape -[15:14:02] [Client thread/WARN]: [Athena] Loaded config default with left over setting cape which is no longer used. -[15:14:02] [Client thread/INFO]: [Athena] rip.athena.client.cosmetics.cape.Cape@fa11fdaziue's headziue's head -[15:14:02] [Client thread/INFO]: LWJGL Version: 2.9.4 -[15:14:03] [Client thread/INFO]: [OptiFine] -[15:14:03] [Client thread/INFO]: [OptiFine] OptiFine_1.8.8_HD_U_H8 -[15:14:03] [Client thread/INFO]: [OptiFine] Build: null -[15:14:03] [Client thread/INFO]: [OptiFine] OS: Windows 10 (amd64) version 10.0 -[15:14:03] [Client thread/INFO]: [OptiFine] Java: 1.8.0_202, Oracle Corporation -[15:14:03] [Client thread/INFO]: [OptiFine] VM: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation -[15:14:03] [Client thread/INFO]: [OptiFine] LWJGL: 2.9.4 -[15:14:03] [Client thread/INFO]: [OptiFine] OpenGL: NVIDIA GeForce RTX 2060 SUPER/PCIe/SSE2, version 4.6.0 NVIDIA 536.23, NVIDIA Corporation -[15:14:03] [Client thread/INFO]: [OptiFine] OpenGL Version: 4.6.0 -[15:14:03] [Client thread/INFO]: [OptiFine] Maximum texture size: 32768x32768 -[15:14:03] [Thread-7/INFO]: [OptiFine] Checking for new version -[15:14:03] [Client thread/INFO]: [Shaders] ShadersMod version: 2.4.12 -[15:14:03] [Client thread/INFO]: [Shaders] OpenGL Version: 4.6.0 NVIDIA 536.23 -[15:14:03] [Client thread/INFO]: [Shaders] Vendor: NVIDIA Corporation -[15:14:03] [Client thread/INFO]: [Shaders] Renderer: NVIDIA GeForce RTX 2060 SUPER/PCIe/SSE2 -[15:14:03] [Client thread/INFO]: [Shaders] Capabilities: 2.0 2.1 3.0 3.2 4.0 -[15:14:03] [Client thread/INFO]: [Shaders] GL_MAX_DRAW_BUFFERS: 8 -[15:14:03] [Client thread/INFO]: [Shaders] GL_MAX_COLOR_ATTACHMENTS_EXT: 8 -[15:14:03] [Client thread/INFO]: [Shaders] GL_MAX_TEXTURE_IMAGE_UNITS: 32 -[15:14:03] [Client thread/INFO]: [Shaders] Load ShadersMod configuration. -[15:14:03] [Client thread/INFO]: [Shaders] Shaders can not be loaded, Fast Render is enabled. -[15:14:03] [Client thread/INFO]: [Shaders] No shaderpack loaded. -[15:14:03] [Thread-7/INFO]: [OptiFine] Version found: I7 -[15:14:03] [Client thread/INFO]: Reloading ResourceManager: Default, ! §bPotfast 5kay.zip -[15:14:03] [Client thread/INFO]: [OptiFine] *** Reloading textures *** -[15:14:03] [Client thread/INFO]: [OptiFine] Resource packs: ! §bPotfast 5kay.zip -[15:14:03] [Sound Library Loader/INFO]: Starting up SoundSystem... -[15:14:03] [Thread-8/INFO]: Initializing LWJGL OpenAL -[15:14:03] [Thread-8/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) -[15:14:03] [Thread-8/INFO]: OpenAL initialized. -[15:14:04] [Sound Library Loader/INFO]: Sound engine started -[15:14:04] [Client thread/INFO]: [OptiFine] Sprite size: 32 -[15:14:04] [Client thread/INFO]: [OptiFine] Mipmap levels: 5 -[15:14:04] [Client thread/INFO]: [OptiFine] Multitexture: false -[15:14:05] [Client thread/INFO]: Created: 2048x2048 textures-atlas -[15:14:05] [Client thread/INFO]: [OptiFine] *** Reloading custom textures *** -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky1.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky2.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky3.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare2.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky4.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare1.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky5.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare3.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky6.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky7.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_box.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky8.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_clouds.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky9.properties -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/night_skybox.png -[15:14:05] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky10.properties -[15:14:05] [Client thread/INFO]: [OptiFine] Enable face culling: acacia_leaves, birch_leaves, dark_oak_leaves, jungle_leaves, oak_leaves, spruce_leaves -[15:14:11] [Server thread/INFO]: Starting integrated minecraft server version 1.8.8 -[15:14:11] [Server thread/INFO]: Generating keypair -[15:14:12] [Server thread/INFO]: Preparing start region for level 0 -[15:14:12] [Server thread/INFO]: Changing view distance to 8, from 10 -[15:14:12] [Server thread/INFO]: Ntdi[local:E:76f9e1cb] logged in with entity id 97 at (733.1438735401466, 78.04097159015387, 375.5908084570898) -[15:14:12] [Server thread/INFO]: Ntdi joined the game -[15:14:13] [Client thread/INFO]: [CHAT] A new §eOptiFine§f version is available: §eHD Ultra I7§f -[15:15:22] [Server thread/INFO]: Ntdi has just earned the achievement [Taking Inventory] -[15:15:22] [Client thread/INFO]: [CHAT] Ntdi has just earned the achievement [Taking Inventory] -[15:16:05] [Server thread/INFO]: Saving and pausing game... -[15:16:05] [Server thread/INFO]: Saving chunks for level 'mcpworld'/Overworld -[15:16:05] [Server thread/INFO]: Saving chunks for level 'mcpworld'/Nether -[15:16:05] [Server thread/INFO]: Saving chunks for level 'mcpworld'/The End -[15:16:06] [Server thread/INFO]: Stopping server -[15:16:06] [Server thread/INFO]: Saving players -[15:16:06] [Server thread/INFO]: Saving worlds -[15:16:06] [Server thread/INFO]: Saving chunks for level 'mcpworld'/Overworld -[15:16:06] [Server thread/INFO]: Saving chunks for level 'mcpworld'/Nether -[15:16:06] [Server thread/INFO]: Saving chunks for level 'mcpworld'/The End -[15:16:08] [Client thread/INFO]: Stopping! -[15:16:08] [Client thread/INFO]: [Athena] Shutting down client -[15:16:08] [Client thread/INFO]: SoundSystem shutting down... -[15:16:08] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com +[17:26:33] [Client thread/INFO]: Setting user: Player451 +[17:26:33] [Client thread/INFO]: (Session ID is token:0:Player451) +[17:26:34] [Client thread/INFO]: [OptiFine] *** Reflector Forge *** +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.Attributes +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: mods.betterfoliage.client.BetterFoliageClient +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.asm.transformers.BlamingTransformer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.world.ChunkWatchEvent$UnWatch +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.relauncher.CoreModManager +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.DimensionManager +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.GuiScreenEvent$DrawScreenEvent$Pre +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.GuiScreenEvent$DrawScreenEvent$Post +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.EntityViewRenderEvent$CameraSetup +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.EntityViewRenderEvent$FogColors +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.Event +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.EventBus +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.eventhandler.Event$Result +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.property.ExtendedBlockState +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.FMLClientHandler +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.common.FMLCommonHandler +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.biome.BiomeGenBase.getWaterColorMultiplier +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.addDestroyEffects +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.addHitEffects +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.canCreatureSpawn +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.canRenderInLayer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.doesSideBlockRendering +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.getBedDirection +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.getExtendedState +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.hasTileEntity +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isAir +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isBed +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isBedFoot +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.block.Block.isSideSolid +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.canRiderInteract +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Field not present: net.minecraft.entity.Entity.captureDrops +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Field not present: net.minecraft.entity.Entity.capturedDrops +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.shouldRenderInPass +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.entity.Entity.shouldRiderSit +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.ForgeEventFactory +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.ForgeHooks +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.ForgeHooksClient +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.getDurabilityForDisplay +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.getModel +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.onEntitySwing +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.shouldCauseReequipAnimation +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.Item.showDurabilityBar +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.item.ItemRecord.getRecordResource +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.ForgeModContainer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.potion.PotionEffect.isCurativeItem +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.canRenderBreaking +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.getRenderBoundingBox +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.hasFastRenderer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.tileentity.TileEntity.shouldRenderInPass +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.preDrawBatch +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher.drawBatch +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.vertex.VertexFormatElement$EnumUsage.preDraw +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.client.renderer.vertex.VertexFormatElement$EnumUsage.postDraw +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.World.countEntities +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.World.getPerWorldStorage +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getCloudRenderer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getSkyRenderer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Method not present: net.minecraft.world.WorldProvider.getWeatherRenderer +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.GuiModList +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.IColoredBakedQuad +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.property.IExtendedBlockState +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.IRenderHandler +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.ISmartBlockModel +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.ItemModelMesherForge +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraft.launchwrapper.Launch +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.pipeline.LightUtil +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.common.MinecraftForge +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.MinecraftForgeClient +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.model.ModelLoader +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderBlockOverlayEvent$OverlayType +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.registry.RenderingRegistry +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderItemInFrameEvent +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Pre +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Post +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Specials$Pre +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.client.event.RenderLivingEvent$Specials$Post +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.fml.client.SplashProgress +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: net.minecraftforge.event.world.WorldEvent$Load +[17:26:34] [Client thread/INFO]: [OptiFine] *** Reflector Vanilla *** +[17:26:34] [Client thread/INFO]: [OptiFine] (Reflector) Class not present: optifine.OptiFineClassTransformer +[17:26:39] [Client thread/ERROR]: [Athena] Failed to load resource outside namespace (C:\Users\nitro\OneDrive\Desktop\programming\AthenaClient\Athena-Client\workspace\.\assets\minecraft\Athena\gui\settings.png).javax.imageio.IIOException: Can't read input file! +[17:26:39] [Client thread/WARN]: [Athena] Tried accessing non-existing module: theme +[17:26:39] [Client thread/WARN]: [Athena] Loaded config default with left over setting theme which is no longer used. +[17:26:39] [Client thread/WARN]: [Athena] Tried accessing non-existing module: cape +[17:26:39] [Client thread/WARN]: [Athena] Loaded config default with left over setting cape which is no longer used. +[17:26:39] [Client thread/INFO]: [Athena] rip.athena.client.cosmetics.cape.Cape@7a04f730ziue's headziue's head +[17:26:39] [Client thread/INFO]: LWJGL Version: 2.9.4 +[17:26:40] [Client thread/INFO]: [OptiFine] +[17:26:40] [Client thread/INFO]: [OptiFine] OptiFine_1.8.8_HD_U_H8 +[17:26:40] [Client thread/INFO]: [OptiFine] Build: null +[17:26:40] [Client thread/INFO]: [OptiFine] OS: Windows 10 (amd64) version 10.0 +[17:26:40] [Client thread/INFO]: [OptiFine] Java: 1.8.0_202, Oracle Corporation +[17:26:40] [Client thread/INFO]: [OptiFine] VM: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation +[17:26:40] [Client thread/INFO]: [OptiFine] LWJGL: 2.9.4 +[17:26:40] [Client thread/INFO]: [OptiFine] OpenGL: NVIDIA GeForce RTX 2060 SUPER/PCIe/SSE2, version 4.6.0 NVIDIA 536.23, NVIDIA Corporation +[17:26:40] [Client thread/INFO]: [OptiFine] OpenGL Version: 4.6.0 +[17:26:40] [Client thread/INFO]: [OptiFine] Maximum texture size: 32768x32768 +[17:26:40] [Thread-7/INFO]: [OptiFine] Checking for new version +[17:26:40] [Client thread/INFO]: [Shaders] ShadersMod version: 2.4.12 +[17:26:40] [Client thread/INFO]: [Shaders] OpenGL Version: 4.6.0 NVIDIA 536.23 +[17:26:40] [Client thread/INFO]: [Shaders] Vendor: NVIDIA Corporation +[17:26:40] [Client thread/INFO]: [Shaders] Renderer: NVIDIA GeForce RTX 2060 SUPER/PCIe/SSE2 +[17:26:40] [Client thread/INFO]: [Shaders] Capabilities: 2.0 2.1 3.0 3.2 4.0 +[17:26:40] [Client thread/INFO]: [Shaders] GL_MAX_DRAW_BUFFERS: 8 +[17:26:40] [Client thread/INFO]: [Shaders] GL_MAX_COLOR_ATTACHMENTS_EXT: 8 +[17:26:40] [Client thread/INFO]: [Shaders] GL_MAX_TEXTURE_IMAGE_UNITS: 32 +[17:26:40] [Client thread/INFO]: [Shaders] Load ShadersMod configuration. +[17:26:40] [Client thread/INFO]: [Shaders] Shaders can not be loaded, Fast Render is enabled. +[17:26:40] [Client thread/INFO]: [Shaders] No shaderpack loaded. +[17:26:40] [Thread-7/INFO]: [OptiFine] Version found: I7 +[17:26:40] [Client thread/INFO]: Reloading ResourceManager: Default, ! §bPotfast 5kay.zip +[17:26:40] [Client thread/INFO]: [OptiFine] *** Reloading textures *** +[17:26:40] [Client thread/INFO]: [OptiFine] Resource packs: ! §bPotfast 5kay.zip +[17:26:40] [Sound Library Loader/INFO]: Starting up SoundSystem... +[17:26:40] [Thread-8/INFO]: Initializing LWJGL OpenAL +[17:26:40] [Thread-8/INFO]: (The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org) +[17:26:40] [Thread-8/INFO]: OpenAL initialized. +[17:26:41] [Sound Library Loader/INFO]: Sound engine started +[17:26:41] [Client thread/INFO]: [OptiFine] Sprite size: 32 +[17:26:41] [Client thread/INFO]: [OptiFine] Mipmap levels: 5 +[17:26:41] [Client thread/INFO]: [OptiFine] Multitexture: false +[17:26:41] [Client thread/INFO]: Created: 2048x2048 textures-atlas +[17:26:42] [Client thread/INFO]: [OptiFine] *** Reloading custom textures *** +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky1.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky2.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky3.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare2.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky4.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare1.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky5.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare3.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky6.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_sunflare.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky7.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_box.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky8.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/sky_clouds.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky9.properties +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky: Texture not found: minecraft:terrain/sky0/night_skybox.png +[17:26:42] [Client thread/INFO]: [OptiFine] CustomSky properties: mcpatcher/sky/world0/sky10.properties +[17:26:42] [Client thread/INFO]: [OptiFine] Enable face culling: acacia_leaves, birch_leaves, dark_oak_leaves, jungle_leaves, oak_leaves, spruce_leaves +[17:27:03] [Thread-13/INFO]: [Athena] +[17:29:57] [Client Shutdown Thread/INFO]: Stopping server diff --git a/workspace/usercache.json b/workspace/usercache.json index 90aa1e90..6b6bb7d6 100644 --- a/workspace/usercache.json +++ b/workspace/usercache.json @@ -1 +1 @@ -[{"name":"Ntdi","uuid":"027a556b-20b7-3c4d-9c71-b19fef4a2fea","expiresOn":"2023-07-26 15:14:12 -0400"},{"name":"Player790","uuid":"2f0d3d8c-afbe-358f-b8f3-786d7b0f9259","expiresOn":"2023-07-08 10:44:53 -0400"},{"name":"Player491","uuid":"46f780a1-2e26-3e88-a90a-02cf37fe1547","expiresOn":"2023-07-08 13:10:32 -0400"},{"name":"Player320","uuid":"77167de3-5df9-3c83-b06a-bed9a476e835","expiresOn":"2023-07-09 13:39:10 -0400"},{"name":"Player536","uuid":"8cfc5391-e37d-328f-a689-9b5f6c4663f5","expiresOn":"2023-07-10 07:43:43 -0400"},{"name":"Player268","uuid":"b84ce5d9-353d-370c-a2cf-b4a66513f5a8","expiresOn":"2023-07-08 04:42:07 -0400"},{"name":"Player813","uuid":"fb8576b0-fae6-3c1e-b44e-6422260d3c41","expiresOn":"2023-07-08 11:27:24 -0400"},{"name":"Player306","uuid":"a08e137b-04fa-3fce-96cc-517c7a87690d","expiresOn":"2023-07-09 13:24:35 -0400"},{"name":"test","uuid":"530fa97a-357f-3c19-94d3-0c5c65c18fe8","expiresOn":"2023-07-10 13:15:10 -0400"},{"name":"ziue","uuid":"ae330cf9-3749-3ca0-ba31-8447e2a2786f","expiresOn":"2023-07-13 10:40:05 -0400"},{"name":"Player601","uuid":"3b1946fe-c2d1-3fab-8b74-bd39d8b52fb4","expiresOn":"2023-07-08 07:17:47 -0400"},{"name":"Player189","uuid":"43c314ca-2c75-349f-b8fe-ad7c6fada15e","expiresOn":"2023-07-10 13:28:13 -0400"},{"name":"Player203","uuid":"d96be705-d0ae-31d3-afba-31a637d80f6d","expiresOn":"2023-07-08 10:29:04 -0400"},{"name":"Player901","uuid":"fcaa91cc-3a77-3318-a8ae-f2f3862b7fde","expiresOn":"2023-07-10 09:51:32 -0400"},{"name":"Player781","uuid":"bf0c47d3-02b6-3463-8e38-457226b1407c","expiresOn":"2023-07-10 09:48:29 -0400"},{"name":"Player651","uuid":"5c4f0ba0-5b89-33cd-bd9d-007c51e4a99f","expiresOn":"2023-07-09 14:07:16 -0400"},{"name":"Player959","uuid":"e4e5b30f-b972-382c-b5e5-86c2e785a8a6","expiresOn":"2023-07-09 17:52:34 -0400"},{"name":"Player939","uuid":"0704e0ba-eaf6-3b26-b880-53fd45ec3b48","expiresOn":"2023-07-08 13:15:56 -0400"},{"name":"Player53","uuid":"12477fb0-fd41-3fca-893f-e59684d982a8","expiresOn":"2023-07-08 15:24:44 -0400"},{"name":"Player270","uuid":"e122e0b0-374f-3b1b-a986-63f4fefee57a","expiresOn":"2023-07-10 08:49:10 -0400"},{"name":"Player744","uuid":"aeca01bf-232e-37a2-985b-599827b3226a","expiresOn":"2023-07-10 08:09:54 -0400"},{"name":"sdfsdgsdfg","uuid":"4443a372-5068-3b0c-bfd3-3cfcef1cd1b3","expiresOn":"2023-07-23 15:19:04 -0400"},{"name":"Player918","uuid":"7fac0f4d-6ee9-33e9-a874-7b4a3cc238c6","expiresOn":"2023-07-08 13:37:58 -0400"},{"name":"Player810","uuid":"24a37f0a-2af1-3ac4-9024-e5424f979e18","expiresOn":"2023-07-08 14:10:21 -0400"},{"name":"Player325","uuid":"1aca2fd8-a080-3d28-afe0-430fc033484e","expiresOn":"2023-07-10 09:43:49 -0400"},{"name":"sdfsdfgsdfgdfshdfgjn","uuid":"0271cc2d-ed8a-353c-95e1-e209c412b712","expiresOn":"2023-07-13 12:06:10 -0400"},{"name":"Player597","uuid":"618c707a-83d7-31ad-b075-bd98e2c75926","expiresOn":"2023-07-08 10:49:56 -0400"},{"name":"Player957","uuid":"094b1c52-a449-3e9f-896c-59239b943c71","expiresOn":"2023-07-09 17:34:47 -0400"},{"name":"Player197","uuid":"ccf0c278-c21f-3ec3-a87c-05202673a5dd","expiresOn":"2023-07-09 14:05:23 -0400"},{"name":"ziue","uuid":"74e89738-6c9e-4f59-83ef-d365849e6049","expiresOn":"2023-07-26 09:15:29 -0400"},{"name":"Player685","uuid":"4f2b9d55-5b3e-32ee-ad58-c8df44a23337","expiresOn":"2023-07-09 13:08:06 -0400"},{"name":"Player742","uuid":"01d9f825-5509-3b83-aacf-c98ce0dce1c7","expiresOn":"2023-07-08 11:55:59 -0400"},{"name":"wrangs","uuid":"7ee45f81-0efe-43fa-af9d-1376f7ae217c","expiresOn":"2023-07-25 10:26:35 -0400"},{"name":"Player426","uuid":"71f66ac1-c861-3de2-8cda-9d0f80277f27","expiresOn":"2023-07-08 13:55:34 -0400"},{"name":"Player579","uuid":"6ae8fe40-3ccb-3755-8fd2-c5445728b386","expiresOn":"2023-07-08 13:18:18 -0400"},{"name":"Player3","uuid":"f318a6c7-0ff1-368e-9d3e-1b850b84da5e","expiresOn":"2023-07-10 08:04:29 -0400"},{"name":"Player641","uuid":"34c6f761-a0d4-3d62-b5ee-df15e4530215","expiresOn":"2023-07-09 11:34:30 -0400"},{"name":"Player517","uuid":"3fff7d86-24d6-33b1-8ce1-9423a13c7c89","expiresOn":"2023-07-09 12:10:12 -0400"},{"name":"Player308","uuid":"6db1171d-4fa6-31cb-b425-1896281a26e2","expiresOn":"2023-07-10 07:03:00 -0400"},{"name":"Player465","uuid":"d447d002-8f00-3c6c-8a29-93b028d90375","expiresOn":"2023-07-08 14:12:40 -0400"},{"name":"Player697","uuid":"09805145-bb70-3fc1-9783-30845f8dd6d0","expiresOn":"2023-07-08 10:35:52 -0400"},{"name":"Player412","uuid":"d978d670-4b07-3a90-bfb6-b4e7c70fe7fc","expiresOn":"2023-07-08 12:15:08 -0400"},{"name":"Player847","uuid":"6004b361-ef29-34d2-b89c-32df237908c7","expiresOn":"2023-07-08 13:29:12 -0400"},{"name":"Player750","uuid":"2659329e-1c65-3850-9659-d27fc655aa3c","expiresOn":"2023-07-08 13:27:39 -0400"},{"name":"Player405","uuid":"600ef575-e50b-3323-b0f1-19e3a176b08b","expiresOn":"2023-07-08 13:15:08 -0400"},{"name":"Player136","uuid":"f4642d2b-29f9-34b7-8b90-e6570e856434","expiresOn":"2023-07-08 10:32:44 -0400"},{"name":"Player422","uuid":"cb3fd6c5-1d0c-334b-a8d4-85d2c85eb576","expiresOn":"2023-07-08 11:21:41 -0400"},{"name":"Player514","uuid":"4ed9b5cf-d91a-3bc8-9000-b0476eccd342","expiresOn":"2023-07-09 14:21:06 -0400"},{"name":"t","uuid":"3ab608c1-368b-3111-9725-7a01f0b8ec9e","expiresOn":"2023-07-16 19:09:55 -0400"},{"name":"Player766","uuid":"71ee4b7e-330e-3d50-90a4-3d964a618ea8","expiresOn":"2023-07-09 17:33:32 -0400"},{"name":"Player434","uuid":"fd09468e-08e7-31aa-bab7-195a6ef31320","expiresOn":"2023-07-09 13:49:25 -0400"},{"name":"Player829","uuid":"4e1f5e28-f05f-3acf-ac65-db01d9d51f95","expiresOn":"2023-07-10 08:19:41 -0400"},{"name":"Player809","uuid":"e664a043-6e9c-3d0d-9b38-cc385e35aba9","expiresOn":"2023-07-10 06:36:27 -0400"},{"name":"Player571","uuid":"5d4844c1-110f-375f-8c73-6803b7a61e5d","expiresOn":"2023-07-08 02:06:30 -0400"},{"name":"Player887","uuid":"df2d3e26-a8b7-3aae-9296-f3a891282132","expiresOn":"2023-07-09 16:02:05 -0400"},{"name":"Player132","uuid":"5cc48495-676c-3721-aed2-7336730ff405","expiresOn":"2023-07-09 14:59:28 -0400"},{"name":"Player455","uuid":"fc74fe37-e9f9-3198-8e46-1eee97cacfa6","expiresOn":"2023-07-10 07:46:20 -0400"},{"name":"Player210","uuid":"66157e7a-53e0-3299-9208-7674efd706f9","expiresOn":"2023-07-09 13:28:27 -0400"},{"name":"Player367","uuid":"dcea94fd-efa4-3c29-93d8-2d56666245c7","expiresOn":"2023-07-10 06:57:12 -0400"},{"name":"Player604","uuid":"11cdf046-d362-394c-93e8-583f0c5ef255","expiresOn":"2023-07-10 06:27:52 -0400"},{"name":"teste","uuid":"4fdf550e-f3b3-3a06-8485-0916b2b491bc","expiresOn":"2023-07-10 12:59:51 -0400"},{"name":"Player172","uuid":"31a9aee6-8c2b-389d-b14e-b75d71479611","expiresOn":"2023-07-08 10:15:57 -0400"},{"name":"Player87","uuid":"3eec9f18-1d0e-3f17-917c-6994e7d034d1","expiresOn":"2023-07-09 13:11:12 -0400"},{"name":"Player621","uuid":"55199b58-d04f-3d22-9ce2-5472509a024b","expiresOn":"2023-07-08 10:26:24 -0400"},{"name":"Player841","uuid":"197d9491-ff34-3fd1-8394-1aadd56cfa2c","expiresOn":"2023-07-10 07:32:20 -0400"},{"name":"Player336","uuid":"2eef3335-8d1f-3428-af42-f3cec9010d4c","expiresOn":"2023-07-08 13:21:04 -0400"},{"name":"tesfdrsdfsdf","uuid":"2adbb68a-c561-3c7a-ac3a-f724c1f981bb","expiresOn":"2023-07-10 14:17:14 -0400"},{"name":"Player914","uuid":"9df70e84-3251-33fb-9047-d59112057246","expiresOn":"2023-07-09 13:51:26 -0400"},{"name":"Player980","uuid":"d1b650bf-5f9c-37d3-a469-4d66d1968f90","expiresOn":"2023-07-10 15:48:02 -0400"},{"name":"Player6","uuid":"6e946422-0041-3048-9c85-48e4f886211a","expiresOn":"2023-07-08 12:00:50 -0400"},{"name":"Player730","uuid":"409ad871-75ba-3dbd-b116-807d64800e7d","expiresOn":"2023-07-08 11:48:36 -0400"},{"name":"Player444","uuid":"b136c8aa-0654-3583-8db1-8749e12181a1","expiresOn":"2023-07-10 09:37:49 -0400"},{"name":"Player893","uuid":"e012d939-bd4c-38f9-ae46-831d4959ff05","expiresOn":"2023-07-09 15:58:42 -0400"},{"name":"nigger","uuid":"1b03cef3-3bb0-3335-8575-75a992fee2b9","expiresOn":"2023-07-16 14:39:22 -0400"},{"name":"Player324","uuid":"942531dd-7690-3c0a-ad42-657bb212e7b6","expiresOn":"2023-07-09 13:50:40 -0400"},{"name":"Player101","uuid":"4bb7849b-3b46-3d6a-81b9-13bb408e8517","expiresOn":"2023-07-10 08:41:18 -0400"},{"name":"Player467","uuid":"ed3ff7cb-6a3b-37aa-85ff-4e536390779c","expiresOn":"2023-07-08 14:52:15 -0400"},{"name":"Player755","uuid":"8dbdaed5-4750-31ee-aa4f-4c3b2bfbc6f7","expiresOn":"2023-07-08 13:11:24 -0400"},{"name":"Player962","uuid":"7ef37f89-ec95-314c-ad83-8a71ac6e461c","expiresOn":"2023-07-08 12:46:33 -0400"},{"name":"Player527","uuid":"638f7175-5dde-3b0d-a13d-f593ecd79b38","expiresOn":"2023-07-10 06:52:57 -0400"},{"name":"Player815","uuid":"41dc22e0-3e7d-3bce-88c0-a274eb3e3859","expiresOn":"2023-07-08 13:16:28 -0400"},{"name":"Player69","uuid":"eee10812-13cd-3f90-b77f-2195c9c5b71e","expiresOn":"2023-07-10 06:41:47 -0400"},{"name":"Player814","uuid":"777409db-46bf-31bf-844f-6d600c083d6c","expiresOn":"2023-07-08 03:47:50 -0400"},{"name":"Player82","uuid":"7328fbd9-6879-3343-b321-ed1f1a1e9892","expiresOn":"2023-07-10 08:02:44 -0400"},{"name":"Player239","uuid":"75e52373-1963-3666-bda9-8904d639e38b","expiresOn":"2023-07-10 09:37:14 -0400"},{"name":"Player302","uuid":"babe9e7f-35b2-34ef-82f9-4869d34a0755","expiresOn":"2023-07-09 13:54:04 -0400"},{"name":"Player401","uuid":"a7507e7e-f998-31cf-a2de-0cc0fd0a4de6","expiresOn":"2023-07-09 11:45:25 -0400"},{"name":"Player335","uuid":"168f5f60-1523-35b7-93b7-01b2c42226b4","expiresOn":"2023-07-10 09:53:11 -0400"},{"name":"Player870","uuid":"eadcccd1-5981-31ce-8342-c727c73b0197","expiresOn":"2023-07-10 08:22:37 -0400"},{"name":"Player889","uuid":"a205b8da-efc6-37ad-8e1d-84c0239cdd21","expiresOn":"2023-07-08 10:14:54 -0400"},{"name":"Player854","uuid":"2a68c4a4-c1ba-3396-a626-ac7041e25da5","expiresOn":"2023-07-09 13:29:22 -0400"},{"name":"Player414","uuid":"408d12c9-559c-3212-bca5-d1a3fc38a0f7","expiresOn":"2023-07-08 12:22:02 -0400"},{"name":"Player77","uuid":"2e2bad62-fd9f-3bb5-a89e-b314a4f30e73","expiresOn":"2023-07-10 09:24:13 -0400"},{"name":"Player118","uuid":"df7bffa7-7a2f-3fb4-9898-fa23c41e49b8","expiresOn":"2023-07-09 14:39:44 -0400"},{"name":"Player773","uuid":"b7a940e4-3cde-3275-9c73-2f71fe593c98","expiresOn":"2023-07-08 10:37:19 -0400"},{"name":"Player396","uuid":"7ba45a5a-c3de-3909-ba3c-f9f78edf15b6","expiresOn":"2023-07-10 09:32:01 -0400"},{"name":"Player480","uuid":"1714a812-885f-3243-b534-9a660fba6e8b","expiresOn":"2023-07-09 12:17:13 -0400"},{"name":"Player999","uuid":"3c28cca8-db38-324d-ac91-779beed87c8d","expiresOn":"2023-07-09 12:15:03 -0400"},{"name":"Player484","uuid":"29aa321a-1ce7-35de-bfab-f37fa4095c7d","expiresOn":"2023-07-10 06:37:26 -0400"},{"name":"Player103","uuid":"f0c5379b-0e4e-34aa-808d-37fef9b5ce6c","expiresOn":"2023-07-10 06:33:50 -0400"},{"name":"Player529","uuid":"989691b1-d197-3995-a55e-281cda3663ae","expiresOn":"2023-07-10 08:26:11 -0400"},{"name":"Player991","uuid":"fe171829-6121-3106-a1a5-6a3600a4ef7d","expiresOn":"2023-07-09 11:48:04 -0400"},{"name":"Player24","uuid":"68cf6d02-03bc-3f3b-ab98-76a8ec749597","expiresOn":"2023-07-10 06:40:04 -0400"},{"name":"Player565","uuid":"f72636fb-c7db-3c44-8cd4-8a6790fd9b69","expiresOn":"2023-07-10 08:15:29 -0400"},{"name":"pierswrld","uuid":"b5e13944-7253-3c2b-b5cd-9e6826e34c86","expiresOn":"2023-07-13 11:38:32 -0400"},{"name":"Player712","uuid":"e4358028-bc3b-38cc-b645-4d08d3b4f456","expiresOn":"2023-07-09 14:11:05 -0400"},{"name":"Player894","uuid":"b25e3f31-3d0d-30a3-b307-8902510a505e","expiresOn":"2023-07-10 07:27:49 -0400"},{"name":"Player602","uuid":"7fef5833-06c9-398a-84c0-fbd3a81ff548","expiresOn":"2023-07-10 07:22:13 -0400"},{"name":"Player169","uuid":"3247b050-58df-3a7e-91f5-44a3d807681c","expiresOn":"2023-07-09 13:35:50 -0400"},{"name":"Player107","uuid":"eed453d8-1b3a-3fa3-9fc5-1cf433d73521","expiresOn":"2023-07-10 06:32:33 -0400"},{"name":"Player995","uuid":"93bfa0b6-cc14-3c0c-8efa-0bcc48245274","expiresOn":"2023-07-09 12:45:54 -0400"},{"name":"Player977","uuid":"9e5d41e7-4785-3b2f-8261-593dade57f6e","expiresOn":"2023-07-10 07:36:09 -0400"},{"name":"Player693","uuid":"f2937d48-a72f-3375-bb6f-69c5f204d185","expiresOn":"2023-07-08 13:16:58 -0400"},{"name":"Player920","uuid":"ad8236b9-e26f-349c-902e-7100197cd86d","expiresOn":"2023-07-08 13:13:30 -0400"},{"name":"Player155","uuid":"60d19c6d-8381-348f-9d23-cb28708609fc","expiresOn":"2023-07-08 11:36:23 -0400"}] \ No newline at end of file +[{"name":"Ntdi","uuid":"027a556b-20b7-3c4d-9c71-b19fef4a2fea","expiresOn":"2023-07-26 15:14:12 -0400"},{"name":"Player750","uuid":"2659329e-1c65-3850-9659-d27fc655aa3c","expiresOn":"2023-07-08 13:27:39 -0400"},{"name":"Player401","uuid":"a7507e7e-f998-31cf-a2de-0cc0fd0a4de6","expiresOn":"2023-07-09 11:45:25 -0400"},{"name":"Player529","uuid":"989691b1-d197-3995-a55e-281cda3663ae","expiresOn":"2023-07-10 08:26:11 -0400"},{"name":"Player210","uuid":"66157e7a-53e0-3299-9208-7674efd706f9","expiresOn":"2023-07-09 13:28:27 -0400"},{"name":"Player781","uuid":"bf0c47d3-02b6-3463-8e38-457226b1407c","expiresOn":"2023-07-10 09:48:29 -0400"},{"name":"ziue","uuid":"74e89738-6c9e-4f59-83ef-d365849e6049","expiresOn":"2023-07-26 09:15:29 -0400"},{"name":"Player893","uuid":"e012d939-bd4c-38f9-ae46-831d4959ff05","expiresOn":"2023-07-09 15:58:42 -0400"},{"name":"Player155","uuid":"60d19c6d-8381-348f-9d23-cb28708609fc","expiresOn":"2023-07-08 11:36:23 -0400"},{"name":"Player444","uuid":"b136c8aa-0654-3583-8db1-8749e12181a1","expiresOn":"2023-07-10 09:37:49 -0400"},{"name":"Player197","uuid":"ccf0c278-c21f-3ec3-a87c-05202673a5dd","expiresOn":"2023-07-09 14:05:23 -0400"},{"name":"Player651","uuid":"5c4f0ba0-5b89-33cd-bd9d-007c51e4a99f","expiresOn":"2023-07-09 14:07:16 -0400"},{"name":"Player367","uuid":"dcea94fd-efa4-3c29-93d8-2d56666245c7","expiresOn":"2023-07-10 06:57:12 -0400"},{"name":"Player991","uuid":"fe171829-6121-3106-a1a5-6a3600a4ef7d","expiresOn":"2023-07-09 11:48:04 -0400"},{"name":"Player302","uuid":"babe9e7f-35b2-34ef-82f9-4869d34a0755","expiresOn":"2023-07-09 13:54:04 -0400"},{"name":"Player847","uuid":"6004b361-ef29-34d2-b89c-32df237908c7","expiresOn":"2023-07-08 13:29:12 -0400"},{"name":"Player790","uuid":"2f0d3d8c-afbe-358f-b8f3-786d7b0f9259","expiresOn":"2023-07-08 10:44:53 -0400"},{"name":"Player405","uuid":"600ef575-e50b-3323-b0f1-19e3a176b08b","expiresOn":"2023-07-08 13:15:08 -0400"},{"name":"Player335","uuid":"168f5f60-1523-35b7-93b7-01b2c42226b4","expiresOn":"2023-07-10 09:53:11 -0400"},{"name":"Player103","uuid":"f0c5379b-0e4e-34aa-808d-37fef9b5ce6c","expiresOn":"2023-07-10 06:33:50 -0400"},{"name":"Player455","uuid":"fc74fe37-e9f9-3198-8e46-1eee97cacfa6","expiresOn":"2023-07-10 07:46:20 -0400"},{"name":"Player901","uuid":"fcaa91cc-3a77-3318-a8ae-f2f3862b7fde","expiresOn":"2023-07-10 09:51:32 -0400"},{"name":"Player685","uuid":"4f2b9d55-5b3e-32ee-ad58-c8df44a23337","expiresOn":"2023-07-09 13:08:06 -0400"},{"name":"nigger","uuid":"1b03cef3-3bb0-3335-8575-75a992fee2b9","expiresOn":"2023-07-16 14:39:22 -0400"},{"name":"Player920","uuid":"ad8236b9-e26f-349c-902e-7100197cd86d","expiresOn":"2023-07-08 13:13:30 -0400"},{"name":"Player730","uuid":"409ad871-75ba-3dbd-b116-807d64800e7d","expiresOn":"2023-07-08 11:48:36 -0400"},{"name":"Player957","uuid":"094b1c52-a449-3e9f-896c-59239b943c71","expiresOn":"2023-07-09 17:34:47 -0400"},{"name":"Player959","uuid":"e4e5b30f-b972-382c-b5e5-86c2e785a8a6","expiresOn":"2023-07-09 17:52:34 -0400"},{"name":"Player604","uuid":"11cdf046-d362-394c-93e8-583f0c5ef255","expiresOn":"2023-07-10 06:27:52 -0400"},{"name":"Player24","uuid":"68cf6d02-03bc-3f3b-ab98-76a8ec749597","expiresOn":"2023-07-10 06:40:04 -0400"},{"name":"Player239","uuid":"75e52373-1963-3666-bda9-8904d639e38b","expiresOn":"2023-07-10 09:37:14 -0400"},{"name":"Player412","uuid":"d978d670-4b07-3a90-bfb6-b4e7c70fe7fc","expiresOn":"2023-07-08 12:15:08 -0400"},{"name":"Player491","uuid":"46f780a1-2e26-3e88-a90a-02cf37fe1547","expiresOn":"2023-07-08 13:10:32 -0400"},{"name":"Player136","uuid":"f4642d2b-29f9-34b7-8b90-e6570e856434","expiresOn":"2023-07-08 10:32:44 -0400"},{"name":"Player870","uuid":"eadcccd1-5981-31ce-8342-c727c73b0197","expiresOn":"2023-07-10 08:22:37 -0400"},{"name":"Player484","uuid":"29aa321a-1ce7-35de-bfab-f37fa4095c7d","expiresOn":"2023-07-10 06:37:26 -0400"},{"name":"Player132","uuid":"5cc48495-676c-3721-aed2-7336730ff405","expiresOn":"2023-07-09 14:59:28 -0400"},{"name":"Player203","uuid":"d96be705-d0ae-31d3-afba-31a637d80f6d","expiresOn":"2023-07-08 10:29:04 -0400"},{"name":"Player742","uuid":"01d9f825-5509-3b83-aacf-c98ce0dce1c7","expiresOn":"2023-07-08 11:55:59 -0400"},{"name":"Player324","uuid":"942531dd-7690-3c0a-ad42-657bb212e7b6","expiresOn":"2023-07-09 13:50:40 -0400"},{"name":"Player693","uuid":"f2937d48-a72f-3375-bb6f-69c5f204d185","expiresOn":"2023-07-08 13:16:58 -0400"},{"name":"Player6","uuid":"6e946422-0041-3048-9c85-48e4f886211a","expiresOn":"2023-07-08 12:00:50 -0400"},{"name":"Player597","uuid":"618c707a-83d7-31ad-b075-bd98e2c75926","expiresOn":"2023-07-08 10:49:56 -0400"},{"name":"Player939","uuid":"0704e0ba-eaf6-3b26-b880-53fd45ec3b48","expiresOn":"2023-07-08 13:15:56 -0400"},{"name":"teste","uuid":"4fdf550e-f3b3-3a06-8485-0916b2b491bc","expiresOn":"2023-07-10 12:59:51 -0400"},{"name":"Player565","uuid":"f72636fb-c7db-3c44-8cd4-8a6790fd9b69","expiresOn":"2023-07-10 08:15:29 -0400"},{"name":"Player82","uuid":"7328fbd9-6879-3343-b321-ed1f1a1e9892","expiresOn":"2023-07-10 08:02:44 -0400"},{"name":"Player697","uuid":"09805145-bb70-3fc1-9783-30845f8dd6d0","expiresOn":"2023-07-08 10:35:52 -0400"},{"name":"Player320","uuid":"77167de3-5df9-3c83-b06a-bed9a476e835","expiresOn":"2023-07-09 13:39:10 -0400"},{"name":"Player422","uuid":"cb3fd6c5-1d0c-334b-a8d4-85d2c85eb576","expiresOn":"2023-07-08 11:21:41 -0400"},{"name":"Player889","uuid":"a205b8da-efc6-37ad-8e1d-84c0239cdd21","expiresOn":"2023-07-08 10:14:54 -0400"},{"name":"Player999","uuid":"3c28cca8-db38-324d-ac91-779beed87c8d","expiresOn":"2023-07-09 12:15:03 -0400"},{"name":"Player887","uuid":"df2d3e26-a8b7-3aae-9296-f3a891282132","expiresOn":"2023-07-09 16:02:05 -0400"},{"name":"Player189","uuid":"43c314ca-2c75-349f-b8fe-ad7c6fada15e","expiresOn":"2023-07-10 13:28:13 -0400"},{"name":"wrangs","uuid":"7ee45f81-0efe-43fa-af9d-1376f7ae217c","expiresOn":"2023-07-25 10:26:35 -0400"},{"name":"Player101","uuid":"4bb7849b-3b46-3d6a-81b9-13bb408e8517","expiresOn":"2023-07-10 08:41:18 -0400"},{"name":"Player977","uuid":"9e5d41e7-4785-3b2f-8261-593dade57f6e","expiresOn":"2023-07-10 07:36:09 -0400"},{"name":"Player980","uuid":"d1b650bf-5f9c-37d3-a469-4d66d1968f90","expiresOn":"2023-07-10 15:48:02 -0400"},{"name":"sdfsdfgsdfgdfshdfgjn","uuid":"0271cc2d-ed8a-353c-95e1-e209c412b712","expiresOn":"2023-07-13 12:06:10 -0400"},{"name":"Player53","uuid":"12477fb0-fd41-3fca-893f-e59684d982a8","expiresOn":"2023-07-08 15:24:44 -0400"},{"name":"Player172","uuid":"31a9aee6-8c2b-389d-b14e-b75d71479611","expiresOn":"2023-07-08 10:15:57 -0400"},{"name":"pierswrld","uuid":"b5e13944-7253-3c2b-b5cd-9e6826e34c86","expiresOn":"2023-07-13 11:38:32 -0400"},{"name":"Player814","uuid":"777409db-46bf-31bf-844f-6d600c083d6c","expiresOn":"2023-07-08 03:47:50 -0400"},{"name":"Player465","uuid":"d447d002-8f00-3c6c-8a29-93b028d90375","expiresOn":"2023-07-08 14:12:40 -0400"},{"name":"Player536","uuid":"8cfc5391-e37d-328f-a689-9b5f6c4663f5","expiresOn":"2023-07-10 07:43:43 -0400"},{"name":"Player514","uuid":"4ed9b5cf-d91a-3bc8-9000-b0476eccd342","expiresOn":"2023-07-09 14:21:06 -0400"},{"name":"Player854","uuid":"2a68c4a4-c1ba-3396-a626-ac7041e25da5","expiresOn":"2023-07-09 13:29:22 -0400"},{"name":"Player480","uuid":"1714a812-885f-3243-b534-9a660fba6e8b","expiresOn":"2023-07-09 12:17:13 -0400"},{"name":"Player571","uuid":"5d4844c1-110f-375f-8c73-6803b7a61e5d","expiresOn":"2023-07-08 02:06:30 -0400"},{"name":"Player601","uuid":"3b1946fe-c2d1-3fab-8b74-bd39d8b52fb4","expiresOn":"2023-07-08 07:17:47 -0400"},{"name":"Player426","uuid":"71f66ac1-c861-3de2-8cda-9d0f80277f27","expiresOn":"2023-07-08 13:55:34 -0400"},{"name":"Player467","uuid":"ed3ff7cb-6a3b-37aa-85ff-4e536390779c","expiresOn":"2023-07-08 14:52:15 -0400"},{"name":"Player995","uuid":"93bfa0b6-cc14-3c0c-8efa-0bcc48245274","expiresOn":"2023-07-09 12:45:54 -0400"},{"name":"Player914","uuid":"9df70e84-3251-33fb-9047-d59112057246","expiresOn":"2023-07-09 13:51:26 -0400"},{"name":"Player325","uuid":"1aca2fd8-a080-3d28-afe0-430fc033484e","expiresOn":"2023-07-10 09:43:49 -0400"},{"name":"Player270","uuid":"e122e0b0-374f-3b1b-a986-63f4fefee57a","expiresOn":"2023-07-10 08:49:10 -0400"},{"name":"Player87","uuid":"3eec9f18-1d0e-3f17-917c-6994e7d034d1","expiresOn":"2023-07-09 13:11:12 -0400"},{"name":"Player712","uuid":"e4358028-bc3b-38cc-b645-4d08d3b4f456","expiresOn":"2023-07-09 14:11:05 -0400"},{"name":"Player69","uuid":"eee10812-13cd-3f90-b77f-2195c9c5b71e","expiresOn":"2023-07-10 06:41:47 -0400"},{"name":"Player308","uuid":"6db1171d-4fa6-31cb-b425-1896281a26e2","expiresOn":"2023-07-10 07:03:00 -0400"},{"name":"Player268","uuid":"b84ce5d9-353d-370c-a2cf-b4a66513f5a8","expiresOn":"2023-07-08 04:42:07 -0400"},{"name":"t","uuid":"3ab608c1-368b-3111-9725-7a01f0b8ec9e","expiresOn":"2023-07-16 19:09:55 -0400"},{"name":"Player414","uuid":"408d12c9-559c-3212-bca5-d1a3fc38a0f7","expiresOn":"2023-07-08 12:22:02 -0400"},{"name":"Player396","uuid":"7ba45a5a-c3de-3909-ba3c-f9f78edf15b6","expiresOn":"2023-07-10 09:32:01 -0400"},{"name":"Player809","uuid":"e664a043-6e9c-3d0d-9b38-cc385e35aba9","expiresOn":"2023-07-10 06:36:27 -0400"},{"name":"ziue","uuid":"ae330cf9-3749-3ca0-ba31-8447e2a2786f","expiresOn":"2023-07-13 10:40:05 -0400"},{"name":"Player579","uuid":"6ae8fe40-3ccb-3755-8fd2-c5445728b386","expiresOn":"2023-07-08 13:18:18 -0400"},{"name":"Player755","uuid":"8dbdaed5-4750-31ee-aa4f-4c3b2bfbc6f7","expiresOn":"2023-07-08 13:11:24 -0400"},{"name":"Player107","uuid":"eed453d8-1b3a-3fa3-9fc5-1cf433d73521","expiresOn":"2023-07-10 06:32:33 -0400"},{"name":"tesfdrsdfsdf","uuid":"2adbb68a-c561-3c7a-ac3a-f724c1f981bb","expiresOn":"2023-07-10 14:17:14 -0400"},{"name":"Player810","uuid":"24a37f0a-2af1-3ac4-9024-e5424f979e18","expiresOn":"2023-07-08 14:10:21 -0400"},{"name":"Player744","uuid":"aeca01bf-232e-37a2-985b-599827b3226a","expiresOn":"2023-07-10 08:09:54 -0400"},{"name":"Player621","uuid":"55199b58-d04f-3d22-9ce2-5472509a024b","expiresOn":"2023-07-08 10:26:24 -0400"},{"name":"Player894","uuid":"b25e3f31-3d0d-30a3-b307-8902510a505e","expiresOn":"2023-07-10 07:27:49 -0400"},{"name":"Player815","uuid":"41dc22e0-3e7d-3bce-88c0-a274eb3e3859","expiresOn":"2023-07-08 13:16:28 -0400"},{"name":"Player517","uuid":"3fff7d86-24d6-33b1-8ce1-9423a13c7c89","expiresOn":"2023-07-09 12:10:12 -0400"},{"name":"Player813","uuid":"fb8576b0-fae6-3c1e-b44e-6422260d3c41","expiresOn":"2023-07-08 11:27:24 -0400"},{"name":"Player766","uuid":"71ee4b7e-330e-3d50-90a4-3d964a618ea8","expiresOn":"2023-07-09 17:33:32 -0400"},{"name":"Player77","uuid":"2e2bad62-fd9f-3bb5-a89e-b314a4f30e73","expiresOn":"2023-07-10 09:24:13 -0400"},{"name":"Player773","uuid":"b7a940e4-3cde-3275-9c73-2f71fe593c98","expiresOn":"2023-07-08 10:37:19 -0400"},{"name":"Player829","uuid":"4e1f5e28-f05f-3acf-ac65-db01d9d51f95","expiresOn":"2023-07-10 08:19:41 -0400"},{"name":"test","uuid":"530fa97a-357f-3c19-94d3-0c5c65c18fe8","expiresOn":"2023-07-10 13:15:10 -0400"},{"name":"Player3","uuid":"f318a6c7-0ff1-368e-9d3e-1b850b84da5e","expiresOn":"2023-07-10 08:04:29 -0400"},{"name":"Player962","uuid":"7ef37f89-ec95-314c-ad83-8a71ac6e461c","expiresOn":"2023-07-08 12:46:33 -0400"},{"name":"Player169","uuid":"3247b050-58df-3a7e-91f5-44a3d807681c","expiresOn":"2023-07-09 13:35:50 -0400"},{"name":"Player336","uuid":"2eef3335-8d1f-3428-af42-f3cec9010d4c","expiresOn":"2023-07-08 13:21:04 -0400"},{"name":"Player918","uuid":"7fac0f4d-6ee9-33e9-a874-7b4a3cc238c6","expiresOn":"2023-07-08 13:37:58 -0400"},{"name":"sdfsdgsdfg","uuid":"4443a372-5068-3b0c-bfd3-3cfcef1cd1b3","expiresOn":"2023-07-23 15:19:04 -0400"},{"name":"Player841","uuid":"197d9491-ff34-3fd1-8394-1aadd56cfa2c","expiresOn":"2023-07-10 07:32:20 -0400"},{"name":"Player602","uuid":"7fef5833-06c9-398a-84c0-fbd3a81ff548","expiresOn":"2023-07-10 07:22:13 -0400"},{"name":"Player527","uuid":"638f7175-5dde-3b0d-a13d-f593ecd79b38","expiresOn":"2023-07-10 06:52:57 -0400"},{"name":"Player641","uuid":"34c6f761-a0d4-3d62-b5ee-df15e4530215","expiresOn":"2023-07-09 11:34:30 -0400"},{"name":"Player306","uuid":"a08e137b-04fa-3fce-96cc-517c7a87690d","expiresOn":"2023-07-09 13:24:35 -0400"},{"name":"Player434","uuid":"fd09468e-08e7-31aa-bab7-195a6ef31320","expiresOn":"2023-07-09 13:49:25 -0400"},{"name":"Player118","uuid":"df7bffa7-7a2f-3fb4-9898-fa23c41e49b8","expiresOn":"2023-07-09 14:39:44 -0400"}] \ No newline at end of file