docs: public JWT getJWT() {
          AccountData accountData = getAccountData(); // Update access token if
                                                      // needed
          if (accountData == null) {
              return null;
          }
          try {
              String accessToken = accountData.getAccessToken();
              if (accessToken == null) {
                  return null;
              }
              String[] parts = accessToken.split("\\.");
              if (parts.length != 3) {
                  return null;
              }
              Gson gson = new GsonBuilder().registerTypeAdapter(JWT.Payload.class, new JWT.PayloadDeserializer())
                      .create();
              JWT.Header header = gson.fromJson(new String(Base64.getUrlDecoder().decode(parts[0])), JWT.Header.class);
              JWT.Payload payload = gson.fromJson(new String(Base64.getUrlDecoder().decode(parts[1])), JWT.Payload.class);
              String signature = parts[2];
              return new JWT(header, payload, signature);
          } catch (JsonSyntaxException ex) {
              return null;
          }
      }