Προγραμματισμός II

Διομήδης Σπινέλλης
Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας
Οικονομικό Πανεπιστήμιο Αθηνών
dds@aueb.gr

Εισαγωγή στο μάθημα

Καλώς ήρθατε

Προγραμματισμός II

Αυτοαξιολόγηση

Πόσο άνετα προγραμματίζετε στη Java;

Στόχοι του μαθήματος

Στόχος του μαθήματος είναι όσοι το παρακολουθήσουν να είναι σε θέση να:

Τρόπος διδασκαλίας

Οι σημειώσεις

Βαθμολογία

Ο τελικός βαθμός κάθε φοιτήτριας ή φοιτητή θα βασίζεται σε 3 κριτήρια: Προσοχή:

Βαθμολογία χωρίς ομαδική εργασία

Σε περίπτωση μη συμμετοχής στην ομαδική εργασία ο βαθμός υπολογίζεται κατά 40% από τις εξετάσεις και 30% από τις ατομικές ασκήσεις, ώστε να να είναι δίκαιο για τα άτομα που κάνουν την ομαδική εργασία. Επιπλέον, στην περίπτωση αυτή ο μέγιστος δυνατός βαθμός είναι το 5. Ενδεικτικά, ο τύπος υπολογισμού είναι κάτι σαν:

MIN(ROUND(
  IF(@Exam>=5,
    IF(ISNA(@group),
      MAX(@exam*0.3 + IFNA(@Exercise, 0)*0.3, 5),
      @Exam*0.2+IFNA(@Participation, 0)*0.1+IFNA(@Bonus, 0)+IFNA(@Exercise, 0)*0.3+IFNA(@Group, 0)*0.5),MAX(INT(@Exam),0))
  *2,0)/2,10)

Αξιολόγηση συμμετοχής

HMAC QR participation token

Στατιστικά στοιχεία

Επιδόσεις στις εξετάσεις στο τέλος του εξαμήνου.
ΈτοςΕξετάσειςΑσκήσειςΒαθμόςΕπιτυχία
20146.597.381%
20157.69.18.194%
20167.29886%
20178.08.88.390%
20187.79.18.593%
20217.79.17.580%
20226.98.37.578%
20236.98.87.682%

Οι ασκήσεις

Χρήση του συστήματος των ασκήσεων jarpeb

Για να χρησιμοποιήσετε το σύστημα πρέπει:

Παράδοση της βαθμολογίας

Καθυστερημένη παράδοση

Χρήση ΠΤΝ

Για τη χρήση παραγωγικής τεχνητής νοημοσύνης (π.χ. ChatGPT, Bard, GitHub Copilot) ισχύουν τα εξής.

Διαθέσιμα συγγράμματα

Πρόσθετα δωρεάν συγγράμματα

Επίσης διαθέσιμα στις φοιτήτριες και στους φοιτητές του ΟΠΑ μέσω του HEAL-Link:

Βιβλιογραφία για προγραμματισμό

Βιβλιογραφία για τη Java

Επισκόπηση θεωρίας

Επισκόπηση των ασκήσεων

  1. εξοικείωση με τις ασκήσεις
  2. ορίσματα, εκφράσεις, βρόχοι και αποφάσεις
  3. δημιουργία αντικειμένων και πρόσβαση στις μεθόδους τους
  4. δημιουργία μιας κλάσης
  5. κληρονομικότητα
  6. παραγωγή και έλεγχος εξαιρέσεων
  7. προγραμματισμός με συμβολοσειρές
  8. μετασχηματισμός αρχείου κειμένου
  9. μια απλή γραφική εφαρμογή
  10. επεξεργασία XML
  11. επικοινωνία πελάτη-εξυπηρετητή
  12. χρήση νημάτων και παραμετρικών τύπων
  13. προγραμματισμός σε ζεύγη
  14. αναδρομικές συναρτήσεις
  15. μορφοποίηση
  16. διεπαφές

Επισκόπηση φροντιστηρίου

  1. Ιδεατή μηχανή Java
  2. Μεταγλωττιστές
  3. Git και Maven
  4. Αντικείμενα και αναφορές
  5. Κληρονομικότητα, υποτύποι
  6. Εξαιρέσεις, ισχυρισμοί, διεπαφές
  7. Γενικεύσεις, συμβολοσειρές συλλογές
  8. Κανονικές εκφράσεις, αρχεία
  9. Ταυτοχρονισμός
  10. Συναρτησιακός προγραμματισμός

Δουλειά για το επόμενο μάθημα

Γλώσσες και περιβάλλοντα ανάπτυξης

Ιστορική ανασκόπηση

Διαδικασιακές γλώσσες

Σε μια αλγοριθμική (imperative) (ή προστακτική ή επιτακτική ή διαδικαστική (procedural)) γλώσσα το πρόγραμμα εκφράζει άμεσα τα βήματα που επιθυμούμε να εκτελέσει ο υπολογιστής.

Τιμές, τύποι και μεταβλητές

Εκφράσεις και τελεστές

Μηχανισμοί αφαίρεσης

Μηχανισμοί ελέγχου της ροής

Αντικειμενοστρεφείς γλώσσες

  • Χαρακτηριστικές γλώσσες: Smalltalk, Squeak, C++, Java, C#, Python, Ruby, JavaScript, TypeScript, Swift

    Συναρτησιακός προγραμματισμός

    Χαρακτηριστικά συναρτησιακού προγραμματισμού

    Γλώσσες ολοκλήρωσης

    Θέματα για μελέτη

    1. Τι κάνει μια γλώσσα κατάλληλη για την υλοποίηση επιχειρηματικών εφαρμογών;
    2. Με ποιον τύπο δεδομένων θα παραστήσετε στη Java χρηματικά ποσά; Δώστε παραδείγματα.

    Άσκηση: εξοικείωση με τις ασκήσεις

    Άσκηση 1

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Τεχνολογίες μεταγλώττισης και εκτέλεσης

    Το χάσμα υλικού και λογισμικού

    Οι δυνατότητες που προσφέρει το υλικό και το λογισμικό έρχονται συχνά σε αντίθεση ή αλληλοσυμπληρώνονται. Οι γλώσσες προγραμματισμού και τα λειτουργικά συστήματα είναι δύο τεχνολογίες που επιτρέπουν τη βέλτιστη συνύπαρξη του υλικού με το λογισμικό.

    Υλοποίηση γλωσσών προγραμματισμού

    Μια γλώσσα προγραμματισμού μπορεί - ανάλογα με τη γλώσσα - να υλοποιηθεί με τους παρακάτω τρόπους: καθώς και με συνδυασμούς τους.

    Αρχιτεκτονική του μεταγλωττιστή

    Η διεργασία της μεταγλώττισης μπορεί να διαχωριστεί στις παρακάτω ξεχωριστές λειτουργίες οι οποίες εκτελούνται σε διαδοχικές φάσεις:

    Λεκτική ανάλυση

    Ο λεκτικός αναλυτής παρέχει τις παρακάτω λειτουργίες: Με τον τρόπο αυτό διαχωρίζονται οι εργασίες της λεκτικής και της συντακτικής ανάλυσης και κάθε μια υλοποιείται με τον πιο αποδοτικό τρόπο.

    Λεκτικές μονάδες

    Χρήση λεκτικών μονάδων

    Ο συντακτικός αναλυτής

    Ο συντακτικός αναλυτής:

    Παράδειγμα

        i = 0;
        while ( i < 10) {
            System.out.println(i);
            i = i + 1;
        }
    

    (Το δέντρο μπορεί να κατασκευαστεί και ζωντανά από 17 άτομα.)

    Συντακτικό δένδρο

    Parse graph

    Παραγωγή κώδικα

    Η παραγωγή κώδικα αποτελεί το πιο ενδιαφέρον και σύνθετο στάδιο της μεταγλώττισης. Κατά το στάδιο αυτό μπορούν να υλοποιηθούν τεχνικές βελτιστοποίησης προσανατολισμένες στη συγκεκριμένη γλώσσα ή αρχιτεκτονική και να υλοποιηθούν αλγόριθμοι βέλτιστης χρήσης των στοιχείων της αρχιτεκτονικής. Η παραγωγή του τελικού εκτελέσιμου κώδικα μπορεί να διακριθεί στα παρακάτω στάδια:

    Βελτιστοποίηση του ενδιάμεσου κώδικα

    Η βελτιστοποίηση του κώδικα μετασχηματίζει τον κώδικα σε μια μορφή που παράγει τα ίδια αποτελέσματα με τον αρχικά αλλά βελτιωμένα κάποια κριτήρια απόδοσης. Τέτοια κριτήρια μπορεί να είναι:

    Πλεονεκτήματα βελτιστοποίησης

    Η βελτιστοποίηση μπορεί να απαλλάξει τον προγραμματιστή από αντιπαραγωγικές αλλαγές του κώδικα που έχουν ως στόχο να ικανοποιήσουν τα κριτήρια αυτά και να του επιτρέψει να συγκεντρωθεί σε άλλα ποιοτικά στοιχεία του παραγόμενου κώδικα όπως την ορθότητα, την ασφάλεια, τη διαθεσιμότητα, τη συντηρησιμότητα, και τη μεταφερσιμότητα. Συχνά βελτιστοποιήσεις που γίνονται από τον προγραμματιστή έρχονται σε αντίθεση με τα παραπάνω ποιοτικά στοιχεία.

    Παράδειγμα βελτιστοποίησης

    Απαλοιφή κοινών υποεκφράσεων (common subexpression elimination)
    Εκφράσεις με κοινά στοιχεία υπολογίζονται μόνο μια φορά. Η ακολουθία:
    x = b / c;
    y = 42 + b / c;
    
    μετασχηματίζεται στην ακολουθία:
    x = b / c;
    y = 42 + x;
    

    Παράδειγμα βελτιστοποίησης

    Μετακίνηση κώδικα βρόχων (loop code motion)
    Εκφράσεις που δεν αλλάζουν μέσα σε ένα βρόχο μετακινούνται έξω από αυτόν. Η ακολουθία:
    {
        int a, b, z;
    
        a = 8; b = 4;
        for (i = 0; i < 10; i++) {
            z = a / b;
            System.out.println(z);
        }
    }
    
    μετασχηματίζεται στην ακολουθία:
    {
        int a, b, z;
    
        a = 8; b = 4;
        z = a / b;
        for (i = 0; i < 10; i++) {
            System.out.println(z);
        }
    }
    

    Παράδειγμα βελτιστοποίησης

    Απαλοιφή άχρηστου κώδικα (dead code removal)
    Κώδικας που δεν εκτελείται ποτέ απαλείφεται. Η ακολουθία:
    {
        int a, q;
    
        q = 48;
        return (q);
        a = q / 2;
    }
    
    μετασχηματίζεται στην ακολουθία:
    {
        int a, q;
    
        q = 48;
        return (q);
    }
    

    Παράδειγμα βελτιστοποίησης

    Απαλοιφή κλήσεων σε συναρτήσεις (function inlining)
    Κλήσεις σε συναρτήσεις μετασχηματίζονται σε απευθείας χρήση του αντίστοιχου κώδικα. Η ακολουθία:
    static int
    square(int a) {
        return (a * a);
    }
    
    public static void main(String args[]) {
        System.out.println(square(12));
    }
    
    μετασχηματίζεται στην ακολουθία:
    public static void main(String args[]) {
        System.out.println(12 * 12);
    }
    

    Παράδειγμα βελτιστοποίησης

    Απαλοιφή αναδρομής από το τέλος συνάρτησης (tail recursion elimination)
    Αναδρομή στο τέλος μιας συνάρτησης μετασχηματίζεται σε βρόχο. Η ακολουθία:
    foo() {
        System.out.println("foo");
        foo();
    }
    
    μετασχηματίζεται στην ακολουθία:
    foo() {
        for (;;)
            System.out.println("foo");
    }
    

    Βελτιστοποίηση του τελικού κώδικα

    Συχνά ο τελικός κώδικας που παράγεται μπορεί να περιέχει ακολουθίες εντολών οι οποίες να μπορούν να βελτιστοποιηθούν για το συγκεκριμένο επεξεργαστή. Οι ακολουθίες αυτές μπορούν να βρεθούν εξετάζοντας ένα μικρό παράθυρο του τελικού κώδικα, όπως αυτό θα φαίνονταν κοιτάζοντας τον κώδικα από μια κλειδαρότρυπα. Για το λόγο αυτό οι βελτιστοποιήσεις αυτές λέγονται και βελτιστοποιήσεις κλειδαρότρυπας (peephole optimizations).

    Παράδειγμα βελτιστοποίησης τελικού κώδικα

    Η ακολουθία:
        mov $12, %rax
        mov %rax, %rbx
        mov $20, %rax
    
    μετασχηματίζεται στην ακολουθία:
        mov $12, %rbx
        mov $20, %rax
    
    Επίσης η διάταξη των εντολών μπορεί να βελτιωθεί για να γίνεται καλύτερη χρήση πολλαπλών υπολογιστικών στοιχείων που διαθέτει ο επεξεργαστής. Για παράδειγμα σε ορισμένους επεξεργαστές η εναλλαγή εντολών κινητής υποδιαστολής με εντολές ακεραίων επιτρέπει στις δύο λειτουργικές μονάδες να δουλεύουν παράλληλα.

    Σύνδεση

    Κατά τη σύνδεση τα ανεξάρτητα μεταγλωττισμένα τμήματα του προγράμματος συνδέονται μεταξύ τους και με τις βιβλιοθήκες της γλώσσας για να δημιουργηθεί το τελικό εκτελέσιμο πρόγραμμα. Συχνά οι βιβλιοθήκες που χρησιμοποιούνται είναι κοινές ανάμεσα σε προγράμματα και φορτώνονται δυναμικά κατά το στάδιο εκτέλεσης του προγράμματος (Unix shared libraries, Windows DLLs). Κατά τη φάση της σύνδεσης γίνεται έλεγχος πως όλες οι συναρτήσεις και μεταβλητές που χρησιμοποιούνται έχουν οριστεί και, για ορισμένες γλώσσες όπως η C++, πως οι τύποι των συμβόλων που έχουν οριστεί σε διαφορετικά αρχεία είναι συμβατοί μεταξύ τους. Ορισμένες γλώσσες όπως η Java υλοποιούν μεγάλο μέρος της σύνδεσης κατά τη φόρτωση του προγράμματος στη μνήμη για εκτέλεση.

    Ιδεατές μηχανές

    Μια ιδεατή μηχανή (virtual machine) εμφανίζει στο λογισμικό που τρέχει πάνω σε αυτήν μια διαφορετική διεπαφή από αυτή στην οποία βασίζεται η μηχανή για την υλοποίησή της. Συχνά οι ιδεατές μηχανές υλοποιούνται σε ιεραρχία.

    Πλεονεκτήματα και προβλήματα ιδεατών μηχανών

    Διαχείριση μνήμης

    Κατά τη διάρκεια ζωής του προγράμματος υπάρχουν απαιτήσεις για τη φύλαξη δεδομένων με διαφορετική διάρκεια ζωής. Συγκεκριμένα, πρέπει να υπάρχει υποστήριξη για δεδομένα που διατηρούνται:

    Παράδειγμα διάταξης μνήμης

    Στοίβα (stack)
    ...

    ...
    Σωρός (heap)
    (Δυναμική μνήμη)
    ...
    Στατικά δεδομένα (static data)
    ...
    Μεταγλωττισμένος κώδικας (code (text))

    Τρόποι διαχείρισης μνήμης

    Όταν ο όγκος της κύριας μνήμης του υπολογιστή δεν επαρκεί μπορεί να χρησιμοποιηθεί:

    Τέλος, για οικονομία στο χώρο που απαιτεί ο κώδικας των προγραμμάτων σε δευτερεύουσα αποθήκευση, χρησιμοποιούνται συχνά μοιρασμένες βιβλιοθήκες (shared libraries) (π.χ. .DLL, .so).

    Άσκηση: ορίσματα, εκφράσεις, βρόχοι και αποφάσεις

    Άσκηση 2

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Προγραμματισμός με αντικείμενα

    Αντικείμενα

    Κλάσεις

    Δημιουργία νέων αντικειμένων

    Καθορισμός μνήμης αντικειμένων με new

    Καθορισμός μνήμης αντικειμένων με αναφορά

    Κλήση μεθόδων

    Πρόσβαση σε ιδιότητες

    Ορατότητα

    Παράδειγμα: Point

    class Point {
      // Public fields
      public int x, y;
      private boolean visible;
      private int serialNumber;
      // Private method
      private void setpos(int sx, int sy) {
        x = sx;
        y = sy;
      }
      // Public methd
      public void moveToCenter() {
        setpos(0, 0);
      }
    
    }
    

    Παράδειγμα: TestPoint

    class TestPoint {
      public static void main(String args[])
      {
        Point a;
    
        a = new Point();
        a.moveToCenter();
        // Use public field
        a.x = 10;
      }
    }
    

    Μέθοδοι κατασκευαστές

    Κλήση κατασκευαστών

    Ιδιότητες και μέθοδοι κλάσης

    Δήλωση μεταβλητών με var

    Παράδειγμα: εύρεση ημέρας

    
    import java.util.Calendar;
    import java.util.GregorianCalendar;
    import java.io.OutputStreamWriter;
    import java.io.PrintWriter;
    
    class FindDay {
      /** Return the name of the given numeric week day */
      public static String weekDayName(int weekNumber) {
        return switch (weekNumber) {
          case Calendar.MONDAY -> "Δευτέρα";
          case Calendar.TUESDAY -> "Τρίτη";
          case Calendar.WEDNESDAY -> "Τετάρτη";
          case Calendar.THURSDAY -> "Πέμπτη";
          case Calendar.FRIDAY -> "Παρασκευή";
          case Calendar.SATURDAY -> "Σάββατο";
          case Calendar.SUNDAY -> "Κυριακή";
          default -> throw new IllegalStateException("Unexpected value: " + weekNumber);
        };
      }
    
      public static void main(String args[]) throws Exception {
      // ...
    }
    

    Παράδειγμα: εύρεση ημέρας (main)

    
      public static void main(String[] args) throws Exception {
          // Are appropriate arguments given?
          if (args.length != 3) {
            System.err.println("usage: FindDay year month day");
            System.exit(1);
          }
    
          // Parse year, month, day
          int year = Integer.parseInt(args[0]);
          int month = Integer.parseInt(args[1]) - 1;
          int monthDay = Integer.parseInt(args[2]);
    
          // Set the calendar and calculate the day name
          var d = new GregorianCalendar(year, month, monthDay);
          String dn = weekDayName(d.get(Calendar.DAY_OF_WEEK));
    
          // Print the day name
          System.out.println(dn);
        }
    

    Μέθοδοι όλων των αντικειμένων

    Άσκηση: δημιουργία αντικειμένων και πρόσβαση στις μεθόδους τους

    Άσκηση 3

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Δημιουργία κλάσεων

    Ορισμός κλάσεων

    Ορισμός πεδίων υπόστασης

    Ορισμός μεθόδων υπόστασης

    Πρόσβαση στα μέλη της κλάσης

    Πρόσβαση στα μέλη της κλάσης: παράδειγμα

    Μέθοδοι κατασκευής

    Μέθοδοι κατασκευής: παράδειγμα

    class Point {
        /* Fields */
    
        /** Point x coordinate */
        private int x;
        /** Point y coordinate */
        private int y;
    
        /* Methods */
        /** Default constructor */
        Point() { x = y = 0; }
        /** Constructor with coordinates */
        Point(int x, int y) {
            this.x = x;
            this.y = y;
        }
    }
    

    Έλεγχος πρόσβασης

    Κάθε μέθοδος ή πεδίο μπορεί να έχει ως προσδιοριστή
    public
    Το μέλος είναι ορατό σε όλες τις άλλες κλάσεις
    private
    Το μέλος είναι ορατό μόνο στις μεθόδους της δικής μας κλάσης
    (τίποτα)
    Το μέλος είναι ορατό στις κλάσεις του πακέτου μας
    Μια καλοσχεδιασμένη κλάση έχει:

    Ορισμός ιδιοτήτων και μεθόδων κλάσης

    Παράδειγμα ιδιοτήτων και μεθόδων κλάσης

    Μπλοκ αρχικοποίησης

    Σε ανώνυμα μπλοκ { } στο σώμα της κλάσης μπορεί να τοποθετηθεί:

    Εσωτερικές κλάσεις

    Μια κλάση μπορεί να οριστεί εσωτερικά:

    Παράδειγμα εσωτερικής κλάσης

    class Rectangle {
        private static class Point {
            private int x, y;
    
            /** Point constructor */
            Point(int ix, int iy) {
                x = ix;
                y = iy;
            }
        }
    
        private Point topLeft, bottomRight;
    
        /** Rectangle constructor */
        Rectangle(int x, int y, int height, int width) {
            topLeft = new Point(x, y);
            bottomRight = new Point(x + width, y + height);
        }
    }
    

    Παράδειγμα ανώνυμης κλάσης

    class InnerCall {
        public static void main(String args[]) {
            System.out.println(new Object());
            System.out.println(new Object() {
                @Override
                public String toString() {
                    return "I am a woke object";
                }
            });
        }
    }
    

    Απαριθμήσεις

    Παράδειγμα

    enum Ingredients {
      TOMATO,
      ONION,
      TZATZIKI,
      POTATO,
      MUSTARD,
      SOUVLAKI,
      GYROS
    };
    

    Χρήση απαριθμήσεων

    Απαρίθμηση ως κλάση

    Η αντίστοιχη κλάση χωρίς τη χρήση απαρίθμησης θα είχε την παρακάτω μορφή.
    
    public class Ingredients {
        // Static array to hold all ingredient constants
        private static final Ingredients[] VALUES = new Ingredients[7];
    
        // Constants with names and ordinal values
        public static final Ingredients TOMATO = new Ingredients("TOMATO", 0);
        public static final Ingredients ONION = new Ingredients("ONION", 1);
        public static final Ingredients TZATZIKI = new Ingredients("TZATZIKI", 2);
        public static final Ingredients POTATO = new Ingredients("POTATO", 3);
        public static final Ingredients MUSTARD = new Ingredients("MUSTARD", 4);
        public static final Ingredients SOUVLAKI = new Ingredients("SOUVLAKI", 5);
        public static final Ingredients GYROS = new Ingredients("GYROS", 6);
    
        private final String name;
        private final int ordinal;
    
        private Ingredients(String name, int ordinal) {
            this.name = name;
            this.ordinal = ordinal;
            VALUES[ordinal] = this;  // Add to the static array
        }
    
        // Getters
        public int ordinal() {
            return ordinal;
        }
    
        public String getName() {
            return name;
        }
    
        public static Ingredients[] values() {
            return VALUES.clone();  // Return a copy of the array
        }
    
        public static Ingredients valueOf(String name) {
            for (Ingredients ingredient : VALUES) {
                if (ingredient.name.equals(name)) {
                    return ingredient;
                }
            }
            throw new IllegalArgumentException("No enum constant " + name);
        }
    
        @Override
        public String toString() {
            return name;
        }
    }
    

    Πολυμορφισμός με ταίριαγμα προτύπων

    Με εντολές switch μπορούμε να γράψουμε κώδικα για συγκεκριμένους τύπους με βάση το ταίριασμα προτύπων (pattern matching).
    
    class PaternMatch {
    
        class RetailCustomer {}
        class BusinessCustomer {}
    
        /** Return the document a given object shall receive */
        private static String documentName(Object o) {
            return switch (o) {
                case RetailCustomer rc -> "receipt";
                case BusinessCustomer bc -> "invoice";
                default -> "unknown document";
            };
        }
    
        public static void main(String[] args) {
            var retailCustomer = new RetailCustomer();
            var businessCustomer = new BusinessCustomer();
            System.out.println("Retail customer gets "
                    + documentName( retailCustomer));
            System.out.println("Business customer gets "
                    + documentName(businessCustomer));
        }
    }
    

    Εγγραφές

    Παράδειγμα

    
    public class RecordDemo {
        record Point(int x, int y) {}
    
        public static void main(String[] args) {
            var a = new Point(5, 12); // Pythagorean triple
            System.out.println("Point " + a + " has magnitude "
                    + Math.sqrt(a.x() * a.x() + a.y() * a.y()));
        }
    }
    

    Εγγραφή ως κλάση

    Η αντίστοιχη κλάση χωρίς τη χρήση εγγραφής θα είχε την παρακάτω μορφή.
    
    public class Point {
        private final int x;
        private final int y;
    
        public Point(int x, int y) {
            this.x = x;
            this.y = y;
        }
    
        // Getters
        public int getX() {
            return x;
        }
    
        public int getY() {
            return y;
        }
    
        // Object methods
        @Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            Point point = (Point) o;
            return x == point.x && y == point.y;
        }
    
        @Override
        public int hashCode() {
            return Objects.hash(x, y);
        }
    
        @Override
        public String toString() {
            return "Point{" + "x=" + x + ", y=" + y + '}';
        }
    }
    

    Ταίριαγμα προτύπων σε εγγραφές

    Σε εγγραφές μπορούμε να ταιριάξουμε και τα ορίσματά τους.
    
    class PaternMatch {
    
        record Point2D(double x, double y) {}
        record Point3D(double x, double y, double z) {}
    
        /** Output the magnitude of the specified object */
        private static void printMagnitude(Object o) {
            System.out.println("Magnitude of " + o + " is " +
                switch (o) {
                    case Point2D(double x, double y) -> Math.sqrt(x * x + y * y);
                    case Point3D(double x, double y, double z) ->
                        Math.sqrt(x * x + y * y + z * z);
                    default -> throw new IllegalArgumentException("Unexpected type: "
                            + o.getClass().getName());
                }
            );
        }
    
        public static void main(String[] args) {
            printMagnitude(new Point2D(3, 4)); // Pythagorean triple
            printMagnitude(new Point3D(1, 4, 8)); // Pythagorean quadruple
        }
    }
    

    Το σχεδιαστικό πρότυπο singleton

    Παράδειγμα singleton

    Άσκηση: δημιουργία μιας κλάσης

    Άσκηση 4

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Κληρονομικότητα

    Εισαγωγή

    Διάγραμμα κληρονομικότητας

    Κληρονομικότητα σε κλάσεις

    Υπερφόρτωση

    Παράδειγμα: σχήματα

    
    class Shape {
        private int x, y;       // Position
        public void setPosition(int px, int py) {
            x = px;
            y = py;
        }
    
        @Override public String toString() {
            return "Shape(" + x + ", " + y + ")";
        }
    }
    
    class Circle extends Shape {
        private int radius;
        public void setRadius(int r) {
            radius = r;
        }
    
        @Override public String toString() {
            return super.toString() + ": Circle(" + radius + ")";
        }
    }
    
    class Rectangle extends Shape {
        private int height, width;
    
        public void setDimensions(int h, int w) {
            height = h;
            width = w;
        }
    
        @Override public String toString() {
            return super.toString() + ": Rectangle(" + height + " x " + width + ")";
        }
    }
    
    class Test1 {
        static public void main(String args[])
        {
            Circle c = new Circle();
            Rectangle r = new Rectangle();
    
            r.setPosition(1, 2);
            r.setDimensions(50, 50);
            c.setPosition(3, 4);
            c.setRadius(10);
            System.out.println(r);
            System.out.println(c);
        }
    }
    

    Σχήματα: διάγραμμα

    Ο προσδιοριστής protected

    Δυναμική διεκπεραίωση

    Παράδειγμα δυναμικής διεκπεραίωσης

    static public void main(String args[])
    {
        Rectangle r = new Rectangle();
        Shape s;
    
        r.setPosition(1, 2);
        r.setDimensions(50, 50);
        s = r;
        s.setPosition(10, 20);
        System.out.println(r);
        System.out.println(s);
        r = (Rectangle)s;
    }
    

    Λειτουργία δυναμικής διεκπεραίωσης

    Πλεονεκτήματα της δυναμικής διεκπεραίωσης

    Σφραγισμένες κλάσεις

    Με τους προσδιοριστές sealed και permits μπορούμε να ορίσουμε ποιες κλάσεις επιτρέπεται να επεκτείνουν τη μητρική κλάση.
    
    public sealed class Shape permits Circle, Rectangle {
    }
    
    class Circle extends Shape {
    }
    
    class Rectangle extends Shape {
    }
    

    Αφηρημένες κλάσεις

    Σχεδιάζοντας με αφηρημένες κλάσεις

    Παράδειγμα: σχήματα

    Σχήματα: ο κώδικας

    
    abstract class Shape {
        private double x, y;        // Position
        protected double getX() { return x; }
        protected double getY() { return y; }
        public void setposition(double px, double py) {
            x = px;
            y = py;
        }
        public abstract double area();
        @Override public String toString() {
            return "Shape(x=" + x + ", y=" + y + ", area=" + area() + ")";
        }
    }
    
    class Circle extends Shape {
        private double radius;
        public void setradius(double r) {
            radius = r;
        }
        @Override public double area() {
            return Math.PI * radius * radius;
        }
        @Override public String toString() {
            return super.toString() + ": Circle(" + radius + ")";
        }
    }
    
    class Rectangle extends Shape {
        private double height, width;
        public void setdimensions(double h, double w) {
            height = h;
            width = w;
        }
        @Override public double area() {
            return height * width;
        }
        @Override public String toString() {
            return super.toString() + ": Rectangle(" + height + " x " + width + ")";
        }
    }
    
    class Test2 {
        static public void main(String args[])
        {
            Circle c = new Circle();
            Rectangle r = new Rectangle();
            Shape s[] = new Shape[2];
    
            s[0] = r;
            r.setposition(1, 2);
            r.setdimensions(50, 50);
    
            s[1] = c;
            c.setposition(3, 4);
            c.setradius(10);
            for (int i = 0; i < s.length; i++)
                System.out.println(s[i]);
        }
    }
    
    Το παραπάνω πρόγραμμα θα τυπώσει:
    Shape(x=1.0, y=2.0, area=2500.0): Rectangle(50.0 x 50.0)
    Shape(x=3.0, y=4.0, area=628.3185307179587): Circle(10.0)
    

    Τελικές μεταβλητές

    Τελικά ορίσματα

    Τελικά πεδία

    Πόσα σχόλια είναι αρκετά;

    Unneeded comments

    Σχόλια για τα σχόλια

    Έλεγχοι

    Τι να αποφεύγετε

    Οδηγίες και παράδειγμα μορφοποίησης κώδικα

    /*
     * Όνομα της κλάσης
     *
     * Copyright έτος όνομα/οργανισμός.
     */
    
    package gr.aueb.dmst.Package;
    
    import java.blah.blough.bligh;
    
    /**
     * Σύνοψη της κλάσης σε μια γραμμή.
     * Αναλυτική περιγραφή της κλάσης.
     *
     * @version     1.82 18 Mar 1999
     * @author      Όνομα Επώνυμο
     */
    
    public class SpecialHtmlParser extends FileHtmlParser {
    
        /*
         * Εδώ γράφεται το σχόλιο υλοποίησης της κλάσης.
         */
    
        /** Σύνοψη του πεδίου κλάσης classVar1 */
        public static int classVar1;
    
        /** Σύνοψη του πεδίου κλάσης classVar2 */
        protected static int classVar2;
    
        /** Σύνοψη του πεδίου κλάσης classVar3 */
        static int classVar3;
    
        /** Σύνοψη του πεδίου κλάσης classVar3 */
        private static Object classVar3;
    
        /**
         * Σύνοψη του πεδίου υπόστασης instanceVar1
         * Εκτενής επεξήγηση του πεδίου instanceVar1 σε πολλαπλές
         * γραμμές
         */
        public int instanceVar1;
    
        /** Σύνοψη του πεδίου υπόστασης instanceVar2 */
        protected int instanceVar2;
    
        /** Σύνοψη του πεδίου υπόστασης instanceVar3 */
        static int instanceVar3;
    
        /** Σύνοψη του πεδίου υπόστασης instanceVar4 */
        private Object instanceVar4;
    
        /** Construct a parser for the specified HTML dialect. */
        SpecialHtmlParser(string dialect, int maxNesting) {
            // Κώδικας
        }
    
        /** Construct a default HTML parser. */
        SpecialHtmlParser(string dialect, int maxNesting) {}
    
        /**
         * Σύνοψη της μεθόδου.
         * Εκτενής επεξήγηση της μεθόδου σε πολλαπλές
         * γραμμές.
         */
        public void doSomething() {
    
        int nLines = 0;                // HTML lines in the file
        int nChars = 0                // Number of characters in the file
        int i;
        double averageDensity = 1.;        // Average density of comments in the file
        Car transport;                // Transport to use
    
            for (;;)
                a++;
    
            for (int j = 0; j < 10; j++) {
                a++;
                b++;
            }
    
            while (a < 10) {
                a++;
                b += 12;
            }
    
            while (a < 10) {
                a++;
                for (int i = 0; i < 10; i++)
                    b += 12;
            }
    
            do {
                a++;
                b += 12;
            } while (a < 10);
    
            switch (c) {
            case 'a':
                system.out.println("Alpha");
                break;
            case 'b':
                system.out.println("Bravo");
                break;
            case 'c':
                system.out.println("Charlie");
                break;
            default:
                system.out.println("???");
                break;
            }
    
            if (a == 3) {
                system.out.println("Threee");
                k = 52;
            }
    
            if (a == 3) {
                system.out.println("Three");
                k = 52;
            } else {
                system.out.println("Not three");
                k = 55;
            }
    
            if (a == 3)
                system.out.println("Three");
            else
                system.out.println("Not three");
    
            if (s.equals("a")
                system.out.println("Alpha");
            else if (s.equals("b")
                system.out.println("Bravo");
            else if (s.equals("c")
                system.out.println("Charlie");
            else
                system.out.println("???");
    
            try {
                i = 12;
                o.myMethod();
            } catch (ExceptionClass e) {
                statements;
            } finally {
                statements;
            }
    
        if (a && !b) {
            a = 2 * (3 + 8) % 15;
            k = a.myMethod(q, b, c);
        }
        return k;
    
       /**
        * Returns an Image object that can then be painted on the screen.
        * The url argument must specify an absolute {@link URL}. The name
        * argument is a specifier that is relative to the url argument.
        * <p>
        * This method always returns immediately, whether or not the
        * image exists. When this applet attempts to draw the image on
        * the screen, the data will be loaded. The graphics primitives
        * that draw the image will incrementally paint on the screen.
        *
        * @param  url  an absolute URL giving the base location of the image
        *         name the location of the image, relative to the url argument
        * @return      the image at the specified URL
        * @see         Image
        */
        public Image getImage(URL url, String name) {
            try {
                return getImage(new URL(url, name));
            } catch (MalformedURLException e) {
                return null;
            }
        }
    
         /*
          * A non-javadoc comment with a special keyword
          * (recommended keywords in parenthesis)
          *
          * (XXX, FIXME, TODO): The comment
          */
    
    Σημείωση: οι στηλοθέτες (tab) πρέπει να αντιστοιχούν σε 8 κενά, έστω και αν πάντα η στοίχιση γίνεται σε 4 κενά. Στο διορθωτή vim οι σωστές ρυθμίσεις είναι:
    set shiftwidth=4
    set smarttab
    

    Βιβλιογραφία

    Πρόσθετες πληροφορίες

    Ασκήσεις

    Άσκηση 15

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Γενικεύσεις και νήματα

    Παραμετρικοί τύποι

    Παράδειγμα: ζευγάρι

    
    class Pair <E1, E2> {
        private final E1 element1;
        private final E2 element2;
        public Pair(final E1 e1, final E2 e2) {
            element1 = e1;
            element2 = e2;
        }
        public E1 getFirst() {
            return element1;
        }
        public E2 getSecond() {
            return element2;
        }
        @Override
        public String toString() {
            return "(" + element1.toString() + ", " + element2.toString() + ")";
        }
    }
    
    class Sock {}
    class Man {}
    class Woman {}
    
    class Test {
        public static void main(String args[]) {
            Pair <Sock, Sock> pairOfSocks;
            Pair <Man, Woman> churchMarriedCouple;
            Pair <Man, Man> civilPartners;
        }
    }
    

    Παραμετρικοί τύποι στη Java

    Παραμετρικοί τύποι μπαλαντέρ

    Παράδειγμα γενίκευσης

    
    class LinkedList <E> {
        /** Node's value */
        private E value;
        /** Next node */
        private LinkedList <E> next;
    
        /** Construct a list with a single element v */
        LinkedList(final E v) {
            value = v;
            next = null;
        }
    
        /** Return a list with element n added to it */
        public LinkedList <E> add(final E v) {
            var n = new LinkedList <E>(v);
            n.next = this;
            return n;
        }
    
        /** Return a string representation of the list */
        @Override
        public String toString() {
            final String me = value.toString();
    
            /* Recursive implementation */
            if (next == null)
                return me;
            else
                return me + " -> " + next;
        }
    
        /** Test harness */
        static public void main(String args[]) {
            var ilst = new LinkedList <Integer>(0);
    
            ilst = ilst.add(1);
            ilst = ilst.add(18);
            ilst = ilst.add(45);
    
            for (int i = 0; i < 5; i++)
                ilst = ilst.add(i * 10);
            System.out.println(ilst);
        }
    }
    

    Παράδειγμα υπερφόρτωσης μεθόδων

    
    double
    square(final double x)
    {
      return x * x;
    }
    
    Complex
    square(final Complex x)
    {
      return new Complex(
        square(x.real) + square(x.imaginary),
        2 * x.real + x.imaginary);
    }
    

    Ανακεφαλαίωση πολυμορφισμού

    Έχουμε στο σημείο αυτό εξετάσει όλα τα είδη πολυμορφισμού (polymorphism):

    Χρήση πολυμορφισμού

    Σε συνηθισμένες εφαρμογές σχεδιάζουμε συχνά με κληρονομικότητα διεπαφών, ενώ συναντάμε:

    Διάγραμμα πολυμορφισμού

    polymorpism types

    Νήματα

    Νήματα: προβλήματα

    Όταν υλοποιούμε κώδικα με νήματα δημιουργούνται συχνά προβλήματα συγχρονισμού που πρέπει να αντιμετωπίσουμε. Τα στοιχεία αυτά δεν καλύπτονται στο συγκεκριμένο μάθημα.
  • Αδιέξοδο

    ="Παράδειγμα"

    Νήματα: εναλλακτικές

    Αντί για νήματα μπορούμε συχνά να χρησιμοποιήσουμε

    Ορισμός νήματος στη Java

    Χρήση νήματος στη Java

    Παράδειγμα χρήσης νημάτων

    
    public class CocktailGuest implements Runnable {
        /** What the guest will say */
        private final String mumble;
        /** How many seconds will he/she pause before speaking */
        private final int pause;
        /** How long the guest will stay */
        private final int stay;
        /** How long the guest has stayed */
        private int hereFor;
    
        /** Constructor */
        public CocktailGuest(String mumble, int pause, int stay) {
            this.mumble = mumble;
            this.pause = pause;
            this.stay = stay;
            hereFor = 0;
        }
    
        /** Execution method */
        @Override
        public void run() {
            try {
                while (hereFor < stay) {
                    Thread.sleep(pause * 1000);
                    hereFor += pause;
                    System.out.println(mumble);
                }
            } catch (InterruptedException e) {
                System.out.println("Something has come up; got to go.");
                return;
            } finally {
                System.out.println("Good bye.");
            }
        }
    
        public static void main(String args[]) {
            final int NGUEST = 5;
            var guest = new CocktailGuest[NGUEST];
            var thread = new Thread[NGUEST];
    
            int i = 0;
            guest[i++] = new CocktailGuest("Can I have another drink?", 8, 30);
            guest[i++] = new CocktailGuest("Nice food!", 7, 120);
            guest[i++] = new CocktailGuest("Ha ha ha...", 3, 100);
            guest[i++] = new CocktailGuest("Hi, I am Maria.", 5, 60);
            guest[i++] = new CocktailGuest("Hello, I am Petros.", 15, 60);
    
            // Create the threads
            for (i = 0; i < NGUEST; i++)
                thread[i] = new Thread(guest[i]);
            // Start the threads
            for (i = 0; i < NGUEST; i++)
                thread[i].start();
        }
    }
    

    Άσκηση: χρήση παραμετρικών τύπων και νήματα

    Άσκηση 12

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Δημιουργία γραφικών εφαρμογών

    Στοιχεία της εφαρμογής

    Οι εφαρμογές μπορούν διαχωριστούν ανάλογα με την μέθοδο διεπαφής με τον χρήστη σε

    Συστατικά εισαγωγής δεδομένων

    Συστατικά εμφάνισης δεδομένων

    Επίδειξη συστατικών

    Κατεβάστε και τρέξτε το πρόγραμμα SwingSet2.jar.

    Προγραμματιστική διεπαφή συστατικών

    Παράθυρο (javax.swing.JFrame, Κλάση)

    Παράδειγμα: ένα κενό παράθυρο

    Το παρακάτω παράδειγμα δημιουργεί ένα κενό παράθυρο, θέτει ως τίτλο το αλφαριθμητικό "Hello, World!" και το εμφανίζει.

    import javax.swing.JFrame;
    
    public class Window {
        public static void main(String[] args) {
            JFrame jf = new JFrame("Hello, World!");
            
            jf.setBounds(0, 0, 800, 600);
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    }
    

    Προσαρμογή στο τοπικό περιβάλλον

    Μπορούμε να δώσουμε στην εφαρμογή την αίσθηση εφαρμογής φτιαγμένης ειδικά για το λειτουργικό περιβάλλον στο οποίο εκτελείται με τον παρακάτω κώδικα.
    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) {
        e.printStackTrace();
    }
    

    Προγραμματιστική διεπαφή συμβάντων

    Κουμπιά (javax.swing.JButton)

    Διαχειριστές διάταξης

    Οι διαχειριστές διάταξης (layout managers) είναι αόρατα συστατικά που καθορίζουν δυναμικά την τοποθέτηση των ορατών συστατικών (πχ κουμπιά, πίνακες) στην εφαρμογή. Οι κύριοι διαχειριστές διάταξης είναι:

    Προγραμματιστική διεπαφή διάταξης FlowLayout

    FlowLayout (java.awt.FlowLayout)

    Παράδειγμα διάταξης FlowLayout

    java.awt.FlowLayout
    import javax.swing.JFrame;
    import javax.swing.JButton;
    
    import java.awt.FlowLayout;
    
    public class FlowLayoutDemo {
        public static void main(String[] args) {
            JFrame jf = new JFrame("Hello, World!");
            
            jf.setBounds(0, 0, 800, 600);
            
            jf.setLayout(new FlowLayout());
            jf.add(new JButton("button 1"));
            jf.add(new JButton("button 2"));
            jf.add(new JButton("button 3"));
            
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    }
    

    Αποτέλεσμα διάταξης FlowLayout

    Προγραμματιστική διεπαφή διάταξης BorderLayout

    BorderLayout (java.awt.BorderLayout)

    Παράδειγμα διάταξης BorderLayout

    java.awt.BorderLayout
    import javax.swing.JFrame;
    import javax.swing.JButton;
    
    import java.awt.BorderLayout;
    
    public class BorderLayoutDemo {
        public static void main(String[] args) {
            JFrame jf = new JFrame("Hello, World!");
            
            jf.setBounds(0, 0, 800, 600);
            
            jf.setLayout(new BorderLayout());
            jf.add(new JButton("north"), BorderLayout.NORTH);
            jf.add(new JButton("south"), BorderLayout.SOUTH);
            jf.add(new JButton("center"), BorderLayout.CENTER);
            jf.add(new JButton("west"), BorderLayout.WEST);
            jf.add(new JButton("east"), BorderLayout.EAST);
            
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    }
    

    Αποτέλεσμα διάταξης BorderLayout

    Προγραμματιστική διεπαφή διάταξης GridLayout

    GridLayout (java.awt.GridLayout)

    Παράδειγμα διάταξης GridLayout

    java.awt.GridLayout
    import javax.swing.JFrame;
    import javax.swing.JButton;
    
    import java.awt.GridLayout;
    
    public class GridLayoutDemo {
        public static void main(String[] args) {
            JFrame jf = new JFrame("Hello, World!");
            
            jf.setBounds(0, 0, 800, 600);
            
            jf.setLayout(new GridLayout(3, 2));
            jf.add(new JButton("(1, 1)"));
            jf.add(new JButton("(1, 2)"));
            jf.add(new JButton("(2, 1)"));
            jf.add(new JButton("(2, 2)"));
            jf.add(new JButton("(3, 1)"));
            jf.add(new JButton("(3, 2)"));
            
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    }
    

    Αποτέλεσμα διάταξης GridLayout

    Προγραμματισμός με συμβάντα

    Η διαδραστικότητα στις εφαρμογές καθορίζεται από προκαθορισμένα συμβάντα. Η νοοτροπία τους είναι πολύ απλή:
    1. Επιλέγεται ένα γεγονός στο οποίο θέλουμε να επέμβουμε (πάτημα ένος πλήκτρου κτλ)
    2. Υλοποιόντας την κατάλληλη διεπαφή, γράφουμε το κομμάτι κώδικα που θέλουμε να εκτελεστεί για το συγκεκριμένο γεγονός
    3. Συσχετίζουμε το κομμάτι αυτό κώδικα με τη λίστα γεγονότων του συστατικού
    Τα γεγονότα είναι προκαθορισμένα και αφορούν είσοδο από το πληκτρολόγιο ή το ποντίκι, μετακινήσεις ή διαφοροποίηση του μεγέθους παραθύρων κτλ. Συνήθως οι κλάσεις που τα υλοποιούν βρίσκονται στο πακέτο java.awt.event.*.

    Παράδειγμα προγραμματισμού με συμβάντα

    import javax.swing.JFrame;
    import javax.swing.JButton;
    import javax.swing.JOptionPane;
    
    import java.awt.BorderLayout;
    
    import java.awt.event.ActionListener;
    import java.awt.event.ActionEvent;
    
    public class EventDemo {
        class AlertAction implements ActionListener {
            private JFrame parent;
    
            AlertAction(JFrame parent) {
                this.parent = parent;
            }
    
            @Override public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(parent, "information", "Button Pressed!!", JOptionPane.INFORMATION_MESSAGE);
            }
        }
    
        public EventDemo() {
            JFrame jf = new JFrame("Hello, World!");
            JButton jb = new JButton("Click Me!");
    
            jf.setBounds(0, 0, 800, 600);
    
            jf.setLayout(new BorderLayout());
            jf.add(jb, BorderLayout.CENTER);
    
            jb.addActionListener(new AlertAction(jf));
    
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    
        public static void main(String[] args) {
            new EventDemo();
        }
    }
    

    Αποτέλεσμα προγραμματισμού με συμβάντα

    Συντεταγμένες γραφικών

    Συντεταγμένες γραφικών (διάγραμμα)

    Κλάση προγραμματιστικής διεπαφής χαμηλού επιπέδου

    java.awt.Graphics

    Μέθοδοι χαμηλού επιπέδου

    Παράδειγμα: Σχεδίαση κειμένου

    Όλες οι συναρτήσεις χαμηλού επιπέδου υλοποιούνται στην κλάση java.awt.Graphics. Η κλάση java.awt.Font διαθέτει κατασκευαστή που δέχεται 3 παραμέτρους:

    Κώδικας: Σχεδίαση κειμένου

    import javax.swing.JFrame;
    import javax.swing.JComponent;
    
    import java.awt.BorderLayout;
    import java.awt.Graphics;
    import java.awt.Font;
    
    public class TextDemo {
        class GraphicPane extends JComponent {
            public GraphicPane() {
                super();
            }
        
            @Override public void paint(Graphics g) {
                g.setFont(new Font(Font.SANS_SERIF, Font.ITALIC, 14));
                g.drawString("Hello, World!", 30, 30);
            }
        }
        
        public TextDemo() {
            JFrame jf = new JFrame("Hello, World!");
            GraphicPane gp = new GraphicPane();
            
            jf.setBounds(0,0, 800, 600);
            jf.setLayout(new BorderLayout());        
            jf.add(gp, BorderLayout.CENTER);
            
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    
        public static void main(String[] args) {
            new TextDemo();
        }
    }
    

    Αποτέλεσμα: Σχεδίαση κειμένου

    Παράδειγμα: Χειρισμός χρωμάτων

    Ο χειρισμός των χρωμάτων γίνεται μέσω της κλάσης java.awt.Color.
    import javax.swing.JFrame;
    import javax.swing.JComponent;
    
    import java.awt.BorderLayout;
    import java.awt.Graphics;
    import java.awt.Font;
    import java.awt.Color;
    
    public class ColorDemo {
        class GraphicPane extends JComponent {
            public GraphicPane() {
                super();
            }
        
            @Override public void paint(Graphics g) {
                g.setFont(new Font(Font.SANS_SERIF, Font.ITALIC, 14));
                g.setColor(Color.ORANGE);
                g.drawString("Hello, World! (orange)", 30, 30);
                g.setColor(new Color(250, 100, 120));
                g.drawString("Hello, World! (red ... almost)", 80, 80);
    
            }
        }
        
        public ColorDemo() {
            JFrame jf = new JFrame("Hello, World!");
            GraphicPane gp = new GraphicPane();
            
            jf.setBounds(0,0, 800, 600);
            jf.setLayout(new BorderLayout());        
            jf.add(gp, BorderLayout.CENTER);
            
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    
        public static void main(String[] args) {
            new ColorDemo();
        }
    }
    

    Αποτέλεσμα: Χειρισμός χρωμάτων

    Παράδειγμα: Σχεδίαση σχημάτων

    Κώδικας: Σχεδίαση σχημάτων

    import javax.swing.JFrame;
    import javax.swing.JComponent;
    
    import java.awt.BorderLayout;
    import java.awt.Graphics;
    import java.awt.Font;
    import java.awt.Color;
    
    public class ShapeDemo {
        class GraphicPane extends JComponent {
            public GraphicPane() {
                super();
            }
    
            @Override public void paint(Graphics g) {
                //// line
                g.setColor(Color.BLACK);
                // drawLine(int x1, int y1, int x2, int y2)
                g.drawLine(0, 0, 100, 100);
    
                //// ovals
                g.setColor(new Color(250, 100, 120));
                // drawOval(int x, int y, int width, int height)
                g.drawOval(30, 30, 100, 200);
                // same, but it fills the oval with the current color
                g.fillOval(300, 30, 100, 200);
    
                //// Rectangle
                g.setColor(Color.BLUE);
                // drawRect(int x, int y, int width, int height)
                g.drawRect(30, 300, 100, 200);
                // fillRect(int x, int y, int width, int height)
                g.fillRect(300, 300, 100, 200);
            }
        }
    
        public ShapeDemo() {
            JFrame jf = new JFrame("Hello, World!");
            GraphicPane gp = new GraphicPane();
    
            jf.setBounds(0,0, 800, 600);
            jf.setLayout(new BorderLayout());
            jf.add(gp, BorderLayout.CENTER);
    
            // Remember, the method show() is deprecated
            jf.setVisible(true);
        }
    
        public static void main(String[] args) {
            new ShapeDemo();
        }
    }
    

    Αποτέλεσμα: Σχεδίαση σχημάτων

    Παράδειγμα: Αρχεία εικόνων

    Η βιβλιοθήκες που παρέχονται μαζί με το περιβάλλον ανάπτυξης της Java, υποστηρίζουν την επεξεργασία εικόνων μέσω των πακέτων java.awt.image.* και javax.imageio.*.
    import javax.swing.JFrame;
    import javax.swing.JComponent;
    
    import javax.imageio.ImageIO;
    
    import java.io.File;
    import java.io.IOException;
    
    import java.awt.BorderLayout;
    import java.awt.Graphics;
    
    import java.awt.image.BufferedImage;
    
    public class ImageDemo {
        class GraphicPane extends JComponent {
            private BufferedImage bi;
            private JFrame parent;
    
            public GraphicPane(JFrame parent) {
                this.parent = parent;
                try {
                    // reads a file
                    this.bi = ImageIO.read(new File("planes.jpg"));
                } catch (IOException ioe) {
                    System.err.println("Could not load image");
                }
            }
    
            @Override public void paint(Graphics g) {
                // drawImage(Image img, int x, int y, ImageObserver observer)
                g.drawImage(bi, 0, 0, parent);
            }
        }
    
        public ImageDemo() {
            JFrame jf = new JFrame("Hello, World!");
            GraphicPane gp = new GraphicPane(jf);
    
            jf.setBounds(0,0, 800, 600);
            jf.setLayout(new BorderLayout());
            jf.add(gp, BorderLayout.CENTER);
    
            jf.setVisible(true);
        }
    
        public static void main(String[] args) {
            new ImageDemo();
        }
    }
    

    Αποτέλεσμα: Αρχεία εικόνων

    Άσκηση: Μία απλή γραφική εφαρμογή

    Άσκηση 9

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Ευχαριστίες

    Ευχαριστίες στο Βασίλη Καρακόιδα για την καθοριστική συνεισφορά του στη συγγραφή της ενότητας αυτής των σημειώσεων.

    Δομές δεδομένων

    Συμβολοσειρές

    Συμβολοσειρές: παράδειγμα

    class Book {
        public String toString() { return "Book"; }
        static public void main(String args[]) {
            var b = new Book();
            String k = "*" + b + "*";
            System.out.println(k);
            System.out.println(b);
        }
    }
    

    Συμβολοσειρές πολλαπλών γραμμών

    Μπορούμε να παραστήσουμε συμβολοσειρές πολλαπλών γραμμών με τριπλά εισαγωγικά.
    
    String html = """
        <html>
            <body>
                <h1>Welcome to my page</h1>
                <p>This is a paragraph.</p>
            </body>
        </html>
        """;
    

    String: μέθοδοι κατασκευής

    String()
    Κατασκευάζει μια άδεια συμβολοσειρά.
    String(char[] value)
    Κατασκευάζει μια συμβολοσειρά από τον πίνακα value.
    String(char[] value, int offset, int count)
    Κατασκευάζει μια συμβολοσειρά από count στοιχεία του πίνακα value αρχίζοντας από τη θέση offset.
    String(String original)
    Κατασκευάζει ένα αντίγραφο συμβολοσειράς
    String(StringBuffer buffer)
    Κατασκευάζει μια συμβολοσειρά από ένα αντικείμενο StringBuffer

    String: μέθοδοι επεξεργασίας

    Οι θέσεις σε μια συμβολοσειρά αριθμούνται από το 0.
    h e l l o
    0 1 2 3 4
    Η μη ύπαρξη θέσης συμβολίζεται με το -1.
    String substring(int beginIndex)
    Επιστρέφει το τμήμα που αρχίζει στη θέση beginIndex
    String substring(int beginIndex, int endIndex)
    Επιστρέφει το τμήμα που αρχίζει στη θέση beginIndex και τελειώνει στη θέση endIndex - 1
    char charAt(int index)
    Επιστρέφει το χαρακτήρα στη θέση index
    String concat(String string2)
    Επιστρέφει τη συμβολοσειρά ενωμένη με το string2

    String: μέθοδοι ερωτήσεων

    int length()
    Μήκος
    boolean equals(String string2)
    Σύγκριση
    boolean StartsWith(String string2)
    Σύγκριση αρχής
    boolean endsWith(String string2)
    Σύγκριση τέλους
    int compareTo(String string2)
    Λεξικογραφική σύγκριση (απλή)
    int indexOf(String string2)
    Επιστρέφει τη θέση της συμβολοσειράς string2

    String: μέθοδοι μετατροπής

    static String valueOf(int i)
    Μετατρέπει το όρισμα i σε συμβολοσειρά
    static String valueOf(double d)
    Μετατρέπει το όρισμα d σε συμβολοσειρά
    static String valueOf(boolean b)
    Μετατρέπει το όρισμα b σε συμβολοσειρά
    static String valueOf(long l)
    Μετατρέπει το όρισμα l σε συμβολοσειρά
    static String valueOf(float f)
    Μετατρέπει το όρισμα f σε συμβολοσειρά
    static String valueOf(char c)
    Μετατρέπει το όρισμα c σε συμβολοσειρά

    StringBuffer και StringBuilder

    StringBuffer append(String string2)
    Προσθήκη της συμβολοσειράς string2 στο τέλος
    StringBuffer insert(int offset, String string2)
    Προσθήκη της συμβολοσειράς string2 στη θέση offset
    StringBuffer delete(int start, int end)
    Διαγραφή των χαρακτήρων από τη θέση start μέχρι την end - 1
    StringBuffer replace(int start, int end, String string2)
    Αντικατάσταση των χαρακτήρων από τη θέση start μέχρι την end - 1 με τη συμβολοσειρά string2

    Εσωτερική χρήση της StringBuilder

    Η κλάση StringBuilder παρέχει τις ίδιες δυνατότητες με την StringBuffer, χωρίς όμως να παρέχει ασφάλεια σε πολυνηματική επεξεργασία.

    Η κλάση StringBuilder χρησιμοποιείται και από το μεταγλωττιστή για την υλοποίηση ένωσης συμβολοσειρών. Η ακολουθία

    x = "a" + 4 + "c"
    
    μεταγλωττίζεται εσωτερικά σε
    x = new StringBuilder().append("a").append(4).append("c").toString()
    

    Πλαίσια συλλογών

    Πλεονεκτήματα

    Τα πλεονεκτήματα της υποστήριξης και του προγραμματισμού με βάση ένα πλαίσιο συλλογών είναι:

    Το πλαίσιο συλλογών της Java

    Το πλαίσιο συλλογών της βιβλιοθήκης της Java περιλαμβάνει:

    Διεπαφές συλλογών

    Υλοποιήσεις συλλογών

    Διαθέσιμες υλοποιήσεις στη Java

    Για τις διεπαφές των συλλογών υπάρχουν οι παρακάτω υλοποιήσεις:

    Set:
    HashSet, TreeSet, LinkedHashSet
    SortedSet:
    TreeSet
    List:
    ArrayList, LinkedList
    Map:
    HashMap, TreeMap, LinkedHashMap
    SortedMap:
    TreeMap

    Πίνακας διεπαφών και υλοποιήσεων

      Υλοποιήσεις
    ΠΚΠίνακας ΙΔΣΛ ΣΛ και ΠΚ
    Διεπαφές SetHashSet   TreeSet   LinkedHashSet
    SortedSet    TreeSet    
    List   ArrayList   LinkedList  
    Map HashMap   TreeMap   LinkedHashMap
    SortedMap     TreeMap    
    (Οι υλοποιήσεις που συνδιάζουν συνδεδεμένη λίστα και πίνακα κατακερματισμού επιτρέπουν την πρόσβαση των στοιχείων με τη σειρά που έγινε η εισαγωγή τους.)

    Διάγραμμα UML

    Η δομή των διεπαφών και κλάσεων που έχουμε εξετάσει μπορεί να παρασταθεί σε μορφή UML ως εξής.
    UML diagram of Java's Collection and Maps
    Σημείωση: στην πράξη η υλοποίηση της Java χρησιμοποιεί και άλλες ενδιάμεσες κλάσεις, όπως AbstractCollection, AbstractSequentialList, AbstractSet.

    Collection: επεξεργασία

    Η γενικευμένη διεπαφή

    Collection <E>
    
    ορίζει μεταξύ άλλων τις παρακάτω μεθόδους (κατά περίπτωση επιστρέφουν αληθές αν η συλλογή μεταβλήθηκε):

    void clear()
    Αφαιρεί όλα τα αντικείμενα από τη συλλογή
    boolean add(E o)
    Προσθήκη στοιχείου
    boolean addAll(Collection <? extends E> c)
    Προσθήκη συλλογής
    boolean remove(Object o)
    Αφαίρεση στοιχείου
    boolean removeAll(Collection <?> c)
    Αφαίρεση συλλογής

    Collection: ερωτήσεις

    boolean contains(Object o)
    Επιστρέφει αληθές αν το στοιχείο περιέχεται
    boolean containsAll(Collection <?> c)
    Επιστρέφει αληθές αν τα στοιχεία της συλλογής περιέχονται
    Iterator <E> iterator()
    Επιστρέφει έναν επαναλήπτη για διάσχιση της συλλογής
    boolean isEmpty()
    Επιστρέφει αληθές αν η συλλογή είναι άδεια
    int size()
    Επιστρέφει τον αριθμό των στοιχείων στη συλλογή

    Παράδειγμα της διεπαφής Collection

    import java.util.Collection;
    import java.util.LinkedList;
    
    public class CollectionTest <E> {
        static <E> void testContain(Collection <E> c, E o) {
            System.out.print("The collection " + c);
            if (c.contains(o))
                System.out.print(" contains");
            else
                System.out.print(" does not contain");
    
            System.out.println(" the object " + o);
        }
    
        public static void main(String args[]) {
            var list = new LinkedList <String>();
    
            list.add("Petros");
            list.add("Maria");
    
            testContain(list, "Maria");
            testContain(list, "John");
            testContain(list, "Petros");
            System.out.println("Number of elements = " + list.size());
        }
    }
    

    Η διεπαφή Iterator

    Η διεπαφή
    Iterator <E>
    
    υποστηρίζει τη διάσχιση και μεταβολή συλλογών. Ορίζει τις παρακάτω μεθόδους:
    boolean hasNext()
    Επιστρέφει αληθές αν υπάρχει επόμενο στοιχείο
    Object next()
    Επιστρέφει το επόμενο στοιχείο
    void remove()
    Διαγράφει το τελευταίο στοιχείο που επιστρέφτηκε

    Η διεπαφή ListIterator

    Η διεπαφή ListIterator επεκτείνει την Iterator με τις παρακάτω μεθόδους:
    boolean hasPrevious()
    Επιστρέφει αληθές αν υπάρχει προηγούμενο στοιχείο
    Object previous()
    Επιστρέφει το προηγούμενο στοιχείο
    void add(Object o)
    Προσθέτει ένα στοιχείο
    void set(Object o)
    Αντικαθιστά το τελευταίο στοιχείο που επιστρέφτηκε

    Παράδειγμα της διεπαφής Iterator

    import java.util.*;
    
    public class IteratorTest {
    
        static void fill(Collection <String> c) {
            c.add("Kerkyra");
            c.add("Zakynthos");
            c.add("Kythira");
            c.add("Santorini");
            c.add("Dilos");
            c.add("Samos");
            c.add("Rodos");
            c.add("Kastelorizo");
        }
    
        static void printAll(Collection <?> c) {
            for (var i = c.iterator(); i.hasNext(); )
                System.out.print(i.next() + " ");
        }
    
        public static void main(String args[]) {
            var hash = new HashSet<String> ();
            var list = new LinkedList<String> ();
    
            fill(hash);
            fill(list);
    
            System.out.println("Hash contains:");
            printAll(hash);
            System.out.println("\nList contains:");
            printAll(list);
        }
    }
    

    Διάσχιση δομών με την εντολή foreach

    Παραδείγματα foreach

    Παράδειγμα διάσχισης συλλογής:
    static void printAll(Collection <?> c) {
        for (Object o : c)
            System.out.print(o + " ");
    }
    
    Παράδειγμα διάσχισης πίνακα:
    class Echo {
        public static void main(String args[]) {
            for (var s : args)
                System.out.print(s + " ");
            System.out.println();
        }
    }
    

    Παράδειγμα: διάσχιση της ακολουθίας Fibonacci

    import java.util.Iterator;
    import java.math.BigInteger;
    
    /**
     * An Iterable interface over the Fibonacci sequence.
     * @author Diomidis Spinellis
     */
    class FibonacciSequence implements Iterable<BigInteger> {
    
        /** The iterator over the Fibonacci sequence. */
        private class  FibonacciIterator implements Iterator<BigInteger> {
            /** Integer n-2 of the series. */
            private BigInteger n0 = null;
            /** Integer n-1 of the series. */
            private BigInteger n1 = null;
    
            /**
             * Return true.
             * The FibonacciSequence sequence is infinite.
             */
            public boolean hasNext() { return true; }
    
            /** Return the next FibonacciSequence integer. */
            public BigInteger next() {
                if (n0 == null) {
                    n0 = BigInteger.ZERO;
                    return n0;
                } else if (n1 == null) {
                    n1 = BigInteger.ONE;
                    return n1;
                } else {
                    BigInteger r = n0.add(n1);
                    n0 = n1;
                    n1 = r;
                    return r;
                }
            }
    
            /**
             * Remove an element.
             * Nothing to see here; move on.
             */
            public void remove() {
                throw new UnsupportedOperationException();
            }
        }
    
        /** Return an iterator for the FibonacciSequence series. */
        public Iterator<BigInteger> iterator() {
            return new FibonacciIterator();
        }
    
        /** A simple test harness. */
        public static void main(String argv[]) {
            var fib = new FibonacciSequence();
    
            for (BigInteger i : fib)
                System.out.println(i);
        }
    }
    
    Βλέπε και το βίντεο για την εμφάνιση της ακολουθίας στη φύση (http://www.youtube.com/watch?v=kkGeOWYOFoA).

    Η διεπαφή Map

    Η διεπαφή
    Map <K, V>
    
    ορίζει μια απεικόνιση από ένα κλειδί (key) K σε μια τιμή (value) V. Η διεπαφή ορίζει μεταξύ άλλων τις παρακάτω μεθόδους:
    void clear()
    Αφαιρεί όλα τα αντικείμενα από τη συλλογή
    Object put(Object key, Object value)
    Προσθήκη στοιχείου (επιστρέφει την προηγούμενη τιμή ή null)
    void putAll(Map <? extends K, ? extends V> m)
    Προσθήκη στοιχείων
    boolean remove(Object key)
    Αφαίρεση στοιχείου (επιστρέφει την προηγούμενη τιμή ή null)

    Ερωτήσεις διεπαφής Map

    V get(Object key)
    Επιστρέφει την τιμή του στοιχείου με το κλειδί key
    boolean containsKey(Object key)
    Επιστρέφει αληθές αν το στοιχείο με το κλειδί key περιέχεται
    boolean containsValue(Object value)
    Επιστρέφει αληθές αν το στοιχείο με την τιμή value περιέχεται (αργή)
    Set<K> keySet()
    Επιστρέφει το σύνολο των κλειδιών
    Collection<V> values()
    Επιστρέφει μια συλλογή με τις αποθηκευμένες τιμές
    boolean isEmpty()
    Επιστρέφει αληθές αν η συλλογή είναι άδεια
    int size()
    Επιστρέφει τον αριθμό των στοιχείων στη συλλογή

    Παράδειγμα: νομισματικές ισοτιμίες

    import java.util.TreeMap;
    
    public class FXConvert {
    
        private static TreeMap<String, Double> FXRate = new TreeMap<String, Double>();
    
        static double FXconvert(String from, String to, double value) {
            double euro = value / FXRate.get(from);
            return euro * FXRate.get(to);
        }
    
        public static void main(String args[]) {
    
            // Euro rates
            FXRate.put("USD", 1.27);
            FXRate.put("JPY", 126.0);
            FXRate.put("GBP", 0.68);
            FXRate.put("CHF", 1.57);
            FXRate.put("CAD", 1.53);
            FXRate.put("SEK", 9.03);
    
            System.out.println("5 SEK = " + FXconvert("SEK", "JPY", 5) + " JPY");
            System.out.println("100 GBP = " + FXconvert("GBP", "CHF", 100) + " CHF");
        }
    }
    

    Η κλάση Stack

    Η κλάση
    Stack <E>
    
    υλοποιεί τη δομή δεδομένων που ονομάζεται στοίβα (stack) με το χαρακτηριστικό τύπο πρόσβασης τελευταίο μέσα πρώτο έξω (last in first out) (LIFO). H κλάση Stack υλοποιεί τη διεπαφή Collection και ορίζει τις παρακάτω μεθόδους:
    boolean empty()
    Αληθές αν η στοίβα είναι άδεια
    E push(E item)
    Προσθέτει το αντικείμενο item στην κορυφή της στοίβας
    E pop()
    Αφαιρεί και επιστρέφει το αντικείμενο από την κορυφή της στοίβας
    E peek()
    Επιστρέφει το αντικείμενο από την κορυφή της στοίβας

    οι πύργοι του Ανόι

    Μπορείτε να δοκιμάστε το παιγνίδι εδώ (https://www.mindgames.com/game/Tower+of+Hanoi).

    Παράδειγμα: οι πύργοι του Ανόι

    import java.util.Stack;
    import java.util.Iterator;
    import java.util.Collection;
    
    public class Hanoi {
        static Stack<Integer> A, B, C;
    
        /** Display the contents of a collection with a given name */
        static <E> void showCollection(String name, Collection <E> c) {
            System.out.print(name + ": ");
            for (E e : c)
                System.out.print(e + " ");
            System.out.println();
        }
    
        /** Display the hanoi towers */
        static void showConfiguration() {
            showCollection("A", A);
            showCollection("B", B);
            showCollection("C", C);
            System.out.println();
        }
    
        /** Move n blocks from to using tmp */
        static <E> void move(int n, Stack<E> from, Stack<E> to, Stack<E> tmp) {
            if (n == 1) {
                to.push(from.pop());
                showConfiguration();
            } else {
                move(n - 1, from, tmp, to);
                to.push(from.pop());
                showConfiguration();
                move(n - 1, tmp, to, from);
            }
        }
    
        public static void main(String args[]) {
            final int N = 64;
            A = new Stack<Integer>();
            B = new Stack<Integer>();
            C = new Stack<Integer>();
    
            for (int i = N; i > 0; i--)
                A.push(i);
            showConfiguration();
            move(N, A, C, B);
        }
    }
    

    Άσκηση: προγραμματισμός με συμβολοσειρές και συλλογές

    Άσκηση 7

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Χειρισμός αρχείων

    Επισκόπηση

    Δευτερεύουσα μνήμη

    Τα προγράμματα συχνά πρέπει να μεταφέρουν τα δεδομένα τους σε δευτερεύουσα μνήμη (μονάδα SSD, μαγνητικό δίσκο, CD/DVD, μνήμη USB, κάρτα μνήμης, ταινία). Οι λόγοι που το επιβάλλουν αυτό είναι οι παρακάτω:

    Η διαδικασία μεταφοράς των δεδομένων μεταξύ του προγράμματος και εξωτερικών συσκευών καλείται είσοδος/έξοδος (input/output) ή Ε/Ε (I/O).

    Παράσταση δεδομένων

    Τα δεδομένα σε ένα αρχείο μπορούμε να τα παραστήσουμε σε δύο μορφές.

    Παραδείγματα παράστασης

    ΤύποςΤιμήΔυαδική παράστασηΠαράσταση κειμένου
    int4200000000 00000000 00000000 0010101000110100 00110010
    short4200000000 0010101000110100 00110010
    chara00000000 0110000101100001
    charα00000011 1011000111001110 10110001
    Το κείμενο παριστάνεται με την κωδικοποίηση UTF-8.

    Παράσταση αριθμών κινητής υποδιαστολής

    ΤύποςΤιμήΔυαδική παράστασηΠαράσταση κειμένου
    double-0.12510111111 11000000 00000000 00000000
    00000000 00000000 00000000 00000000
    00101101
    00110000
    00101110
    00110001
    00110010
    00110101
    double 12.566370614359173 10-7 00111110 10110101 00010101 00110111
    00001111 10011001 11110110 11001011
    00110001
    00110010
    00101110
    00110101
    00110110
    00110110
    00110011
    00110111
    00110000
    00110110
    00110001
    00110100
    00110011
    00110101
    00111001
    00110001
    00110111
    00110011
    01100101
    00101101
    00110111
    (Ο τελευταίος αριθμός παριστάνει τη φυσική σταθερά μ0, τη διαπερατότητα του κενού, 4π 10-7. Το κείμενο παριστάνεται με την κωδικοποίηση UTF-8 και οι αριθμοί κινητής υποδιαστολής σύμφωνα με το πρότυπο IEEE 754-1985.)

    Ομαδοποίηση δεδομένων

    Η ομαδοποίηση στοιχείων μπορεί να γίνει:

    Παράδειγμα: ομαδοποίηση πεδίων σταθερού μήκους

    ΓΓΠΣ/ΑΑΔΕ: Αναλυτική γραμμή πωλήσεων (πελατών)
    ΠΙΝΑΚΑΣ 3. Αναλυτική γραμμή πωλήσεων (στοιχεία πελατών)
    (RECORD τύπου 2)
    ΠΕΡΙΓΡΑΦΗ
    ΠΕΔΙΟΥ
    ΘΕΣΕΙΣ
    ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΠΕΔΙΟΥ
    Σημειώσεις
    ΣΤΑΘΕΡΗ
    ΤΙΜΗ
    ΑΠΟ
    ΕΩΣ
    ΜΗΚΟΣ
    ΤΥΠΟΣ
    1
    Τύπος Record (κωδικός)
    1
    1
    1
    Numeric
    KENO
    2
    2
    Α/Α
    2
    6
    5
    Numeric
    KENO
    KENO
    3
    ΑΦΜ πελάτη
    7
    15
    9
    Character
    KENO
    KENO
    4
    Επωνυμία πελάτη
    16
    42
    27
    Character
    KENO
    KENO
    5
    Επαγγελμα πελάτη
    43
    57
    15
    Character
    KENO
    KENO
    61
    Μη υπόχρεοι υποβολής(αγρότες, περιστασιακά απασχολούμενοι κλπ)
    58
    58
    1
    Character
    0 (μηδέν)= υπόχρεος
    1 (ένα) = μη υπόχρεος
    KENO
    7
    Δ/νση / Πόλη πελάτη
    59
    68
    10
    Character
    KENO
    KENO
    8
    Δ/νση / Οδός πελάτη
    69
    84
    16
    Character
    KENO
    KENO
    9
    Δ/νση / Αριθμ πελάτη
    85
    87
    3
    Character
    KENO
    KENO
    10
    Ταχ. Κώδικας πελάτη
    88
    92
    5
    Numeric
    KENO
    KENO
    113
    Αριθμός τιμολογίων (πλήθος)
    93
    99
    7
    Numeric
    KENO
    KENO
    12
    Καθαρή αξία τιμολογίων
    100
    115
    16
    Numeric
    KENO
    KENO
    13
    FILLER
    116
    150
    35
    Character
    KENO
    spaces

    Παράδειγμα: ομαδοποίηση πεδίων με διαχωριστικό

    Αρχείο /etc/passwd στο λειτουργικό σύστημα Unix

    root:*:0:0:Charlie Root:/root:/bin/csh
    dds:*:1000:1000:Diomidis Spinellis:/home/dds:/usr/local/bin/bash
    nutmon:*:1056:1056:NUT UPS monitor unprivileged user:/nonexistent:/usr/sbin/nologin
    sgrig:*:1001:1001:Stavros Grigorakakis:/home/sgrig:/usr/local/bin/bash
    archie:*:1002:1002:Achilleas Anagnostopoulos:/home/archie:/usr/local/bin/bash
    path:*:1003:1003:Stephanos Androutselis:/home/path:/usr/local/bin/bash
    

    Τιμοκατάλογος της Microsoft (CSV)

    Product Description,1st AP Non-Platform,1st AP Platform,2nd AP Non-Platform,2nd AP Platform,3rd AP Non-Platform,3rd AP Platform,Non-Platform,Platform,,,,,,,
    OFFICE FAMILY,,,,,,,,,,
    Office Enterprise Listed Lic/SA Pack MVL,76J-01468,76J-01637, 190.31 , 161.77 , 190.31 , 161.77 , 190.31 , 161.77 ,,
    Office Enterprise Listed SA MVL,76J-01552,76J-01640, 98.96 , 94.02 , 98.96 , 94.02 , 98.96 , 94.02 ,,
    Office Enterprise Listed SA Step Up MVL from Office Pro,76J-01510,76J-00002, 34.51 , 29.33 , 34.51 , 29.33 , 34.51 , 29.33 ,,,,,,,
    Office Professional Plus Listed Lic/SA Pack MVL,269-05924,269-12441, 155.81 , 132.45 , 155.81 , 132.45 , 155.81 , 132.45 ,,,,,,,
    Office Professional Plus Listed SA MVL,269-05925,269-12444, 81.02 , 76.97 , 81.02 , 76.97 , 81.02 , 76.97 ,,,,,,,
    WINDOWS FAMILY,,,,,,,,,,,,,,,
    Windows Vista Business Listed Upg/SA Pack MVL w/VisEnterprise,66J-00588,66J-00579, 48.01 , 40.81 , 48.01 , 40.81 , 48.01 , 40.81 ,,,,,,,
    Windows Vista Business Listed SA MVL w/VisEnterprise,66J-00844,66J-00582, 31.76 , 30.17 , 31.76 , 30.17 , 31.76 , 30.17 ,,,,,,,
    

    Ανάγνωση δυαδικών δεδομένων

    Αυτόματη αποδέσμευση πόρων

    Παράδειγμα: ανάγνωση byte

    import java.io.*;
    
    /**
     * Count and display the number of bytes in the specified file
     * @author Diomidis Spinellis
     */
    class ByteCount {
        public static void main(String args[]) {
    	if (args.length != 1) {
    	    System.err.println("Usage: ByteCount file");
    	    System.exit(1);
    	}
    
    	// Try with resources; will auto-close in
    	try (var in = new BufferedInputStream(new FileInputStream(args[0]))) {
    
                // Count bytes
                int count = 0;
    	    int b;
    	    while ((b = in.read()) != -1)
    		count++;
    
                System.out.println(count);
    	} catch (FileNotFoundException e) {
    	    System.err.println("Unable to open file " + args[0] + ": " + e.getMessage());
    	    System.exit(1);
    	} catch (IOException e) {
    	    System.err.println("Error reading byte: " + e.getMessage());
    	    System.exit(1);
    	}
    
        }
    }
    

    Εγγραφή δυαδικών δεδομένων

    Παράδειγμα: εγγραφή εικόνας

    import java.io.*;
    
    /**
     * Create a 256*256 24-bit color PNM RGB file containing all combinations
     * of R and G.
     * @author Diomidis Spinellis
     */
    class ColorWrite {
    
        /** Write the specified ASCII string to out as bytes */
        static void writeStringAsBytes(OutputStream out, String s) throws IOException {
            for (int i = 0; i < s.length(); i++)
                    out.write((byte)s.charAt(i));
        }
    
        public static void main(String args[]) {
    	final String fileName = args[0];
    
    	// Open file; try with resources
    	try (var out =
                    new BufferedOutputStream(new FileOutputStream(fileName))) {
                // NetPBM PPM 24-bit color file header
                // https://netpbm.sourceforge.net/doc/ppm.html
                writeStringAsBytes(out, "P6 256 256 255 ");
    	    for (int r = 0; r < 256; r++)
    		for (int g = 0; g < 256; g++) {
    		    out.write(r);
    		    out.write(g);
    		    out.write(0);
    		}
    	} catch (FileNotFoundException e) {
    	    System.err.println("Unable to open file " + fileName
    		+ ": " + e.getMessage());
    	    System.exit(1);
    	} catch (IOException e) {
    	    System.err.println("Error writing byte: " + e.getMessage());
    	    System.exit(1);
    	}
        }
    }
    

    Παράδειγμα: αρχείο PNG

    PNG file format

    Ανάγνωση χαρακτήρων

    Παρένθεση: κωδικοποίηση ελληνικών χαρακτήρων

    Στη Java μπορούμε να επεξεργαστούμε αρχεία με ελληνικούς χαρακτήρες με βάση τα παρακάτω ονόματα κωδικοποίησης της κλάσης Charset.

    Διαθέσιμες κωδικοποιήσεις

    Το παρακάτω πρόγραμμα τυπώνει όλες τις διαθέσιμες κωδικοποιήσεις.
    import java.nio.charset.Charset;
    import java.util.SortedMap;
    
    /**
     * List the available character set encodins.
     * @author Diomidis Spinellis
     */
    class ListCharset {
        public static void main(String args[]) {
            SortedMap<String,Charset> ac = Charset.availableCharsets();
    
            for (String k : ac.keySet())
                System.out.println(k);
        }
    }
    

    Παράδειγμα: κατηγοριοποίηση χαρακτήρων

    import java.io.*;
    import java.util.*;
    import java.lang.Character.UnicodeBlock;
    
    /**
     * Count and display for the specified input file
     * the number of characters contained in various Unicode blocks .
     * @author Diomidis Spinellis
     */
    class CharCount {
        public static void main(String args[]) {
    	if (args.length != 2) {
    	    System.err.println("Usage: CharCount file encoding");
    	    System.exit(1);
    	}
    
    	// Open file; try-with-resources
    	try (var in = new BufferedReader(new InputStreamReader(
                            new FileInputStream(args[0]), args[1]))) {
    
                // Count characters in blocks
                var count = new HashMap<Character.UnicodeBlock, Integer>();
    	    int c;
    	    while ((c = in.read()) != -1) {
    		var u = Character.UnicodeBlock.of(c);
    		    Integer oldN = count.get(u);
    		    if (oldN == null)
    			count.put(u, 1);
    		    else
    			count.put(u, oldN + 1);
    	    }
    
                // Display results
                for (var s : count.entrySet())
                    System.out.println(s.getKey() + ": " + s.getValue());
    	} catch (FileNotFoundException e) {
    	    System.err.println("Unable to open file " + args[0] + ": " + e.getMessage());
    	    System.exit(1);
    	} catch (UnsupportedEncodingException e) {
    	    System.err.println("Unsupported encoding " + args[1] + ": " + e.getMessage());
    	} catch (IOException e) {
    	    System.err.println("Error reading character: " + e.getMessage());
    	    System.exit(1);
    	}
    
        }
    }
    

    Εγγραφή χαρακτήρων

    E/E συμβολοσειρών, πινάκων· σωληνώσεις

    Είσοδο και έξοδο μπορούμε να πραγματοποιήσουμε επιπλέον μέσω:

    Σειριακοποίηση αντικειμένων

    Δόκιμες λύσεις φύλαξης αντικειμένων

    Για να έχουμε συμβατότητα ανάμεσα σε διαφορετικές εκδόσεις του προγράμματος, καλύτερα είναι όταν έχουμε να αποθηκεύσουμε σύνθετες δομές να χρησιμοποιήσουμε μια εναλλακτική λύση, όπως:

    Ανακεφαλαίωση σειριακής πρόσβασης

    Ανάγνωση Εγγραφή
    byte FileInputStream FileOutputStream
    buffered byte BufferedInputStream BufferedOutputStream
    int/double/… DataInputStream DataOutputStream
    Object ObjectInputStream ObjectOutputStream
    char InputStreamReader OutputStreamWriter
    line(char) BufferedReader BufferedWriter
    PrintWriter

    Αρχεία τυχαίας πρόσβασης

    Η διεπαφή NIO

    H Java προσφέρει την διεπαφή προγραμματισμού (API) ΝΙΟ (New I/O) για πρόσβαση σε αρχεία όταν έχουμε ιδιαίτερα υψηλές απαιτήσεις απόδοσης. Σε σχέση με τη διεπαφή IO αυτή προσφέρει:

    Πρόσβαση στο σύστημα αρχείων

    Η κλάση File παρέχει πρόσβαση στη δομή με μεθόδους όπως τις παρακάτω:
    exists
    Ελέγχει την ύπαρξη ενός αρχείου.
    delete
    Διαγράφει ένα αρχείο.
    lastModified
    Επιστρέφει το χρόνο της τελευταίας αλλαγής στο αρχείο.
    renameTo
    Μετονομάζει ένα αρχείο
    length
    Επιστρέφει το μήκος ενός αρχείου
    list
    Επιστρέφει τα αρχεία που βρίσκονται σε ένα φάκελο.
    mkdir
    Δημιουργεί ένα νέο φάκελο
    getFreeSpace
    Επιστρέφει τον ελεύθερο χώρο στο δίσκο.

    Άσκηση: επεξεργασία αρχείου κειμένου

    Άσκηση 8

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Παράρτημα: Παράσταση ελληνικών χαρακτήρων

    ΧαρακτήραςUnicodeISO 8859-7CP 1253CP 737CP 851Mac GreekCP 423CP 869ISO IR-19ISO IR-27ISO IR-88ISO IR-18ISO IR-150ISO IR-55
    Ά0386b6a2ea86cd7186      
    Έ0388b8b8eb8dce728d      
    Ή0389b9b9ec8fd7738f      
    Ί038ababaed90d87590      
    Ϊ03aadada  ab 91      
    Ό038cbcbcee92d97692      
    Ύ038ebebeef95da7795      
    Ϋ03abdbdb  bd 96      
    Ώ038fbfbff098df7898      
    Α0391c1c180a4b041a461 41614141
    Β0392c2c281a5b542a562 42624242
    Γ0393c3c382a6a143a6672343674344
    Δ0394c4c483a7a244a7644044644445
    Ε0395c5c584a8b645a865 45654546
    Ζ0396c6c685a9b746a97a 467a4649
    Η0397c7c786aab847aa68 4768474a
    Θ0398c8c887aca348ac755c4875484b
    Ι0399c9c988adb949ad69 4969494c
    Κ039acaca89b5ba51b56b 4b6b4a4d
    Λ039bcbcb8ab6a452b66c5e4c6c4b4e
    Μ039ccccc8bb8bb53b76d 4d6d4c4f
    Ν039dcdcd8cb7c154b86e 4e6e4d50
    Ξ039ecece8dbda555bd6a214f6a4e51
    Ο039fcfcf8ebec356be6f 506f4f52
    Π03a0d0d08fc6a657c6703f51705053
    Ρ03a1d1d190c7c458c772 52725155
    Σ03a3d3d391cfaa59cf735f53735356
    Τ03a4d4d492d0c662d074 54745458
    Υ03a5d5d593d1cb63d179 55795559
    Φ03a6d6d694d2bc64d2665d5666565a
    Χ03a7d7d795d3cc65d378 5878575b
    Ψ03a8d8d896d4be66d4633a5963585c
    Ω03a9d9d997d5bf67d5765b5a76595d
    ά03acdcdce19bc0b19b      
    έ03addddde29ddbb29d      
    ή03aededee39edcb39e      
    ί03afdfdfe59fddb59f      
    ϊ03cafafae4a0fbb4a0      
    ΐ0390c0c0 a1fd a1      
    ό03ccfcfce6a2deb6a2      
    ύ03cdfdfde7a3e0b7a3      
    ϋ03cbfbfbe8fbfcb8fb      
    ΰ03b0e0e0 fcfe fc      
    ώ03cefefee9fdf1b9fd      
    α03b1e1e198d6e18ad6  61416161
    β03b2e2e299d7e28bd7  62426262
    γ03b3e3e39ad8e78cd8  63476364
    δ03b4e4e49bdde48ddd  64446465
    ε03b5e5e59cdee58ede  65456566
    ζ03b6e6e69de0fa8fe0  665a6669
    η03b7e7e79ee1e89ae1  6748676a
    θ03b8e8e89fe2f59be2  6855686b
    ι03b9e9e9a0e3e99ce3  6949696c
    κ03baeaeaa1e4eb9de4  6b4b6a6d
    λ03bbebeba2e5ec9ee5  6c4c6b6e
    μ03bcececa3e6ed9fe6  6d4d6c6f
    ν03bdededa4e7eeaae7  6e4e6d70
    ξ03beeeeea5e8eaabe8  6f4a6e71
    ο03bfefefa6e9eface9  704f6f72
    π03c0f0f0a7eaf0adea  71507073
    ρ03c1f1f1a8ebf2aeeb  72527175
    ς03c2f2f2aaedf7afed  77577277
    σ03c3f3f3a9ecf3baec  73537376
    τ03c4f4f4abeef4bbee  74547478
    υ03c5f5f5acf2f9bcf2  75597579
    φ03c6f6f6adf3e6bdf3  7646767a
    χ03c7f7f7aef4f8bef4  7858777b
    ψ03c8f8f8aff6e3bff6  7943787c
    ω03c9f9f9e0faf6dbfa  7a56797d

    Παράρτημα: το πρότυπο ASCII

    Ο παρακάτω πίνακας παρουσιάζει τις τιμές των χαρακτήρων, σύμφωνα με το πρότυπο ASCII (American Standard Code for Information Interchange). Οι πρώτες 32 θέσεις δεσμεύονται για χαρακτήρες διαφυγής (escape character).
    ΧαρακτήραςΔεκαδικήΔεκαεξαδικήΟκταδικήΔυαδική
    nul0000000000 0000
    soh1010010000 0001
    stx2020020000 0010
    etx3030030000 0011
    eot4040040000 0100
    enq5050050000 0101
    ack6060060000 0110
    bel7070070000 0111
    bs8080100000 1000
    ht9090110000 1001
    lf100a0120000 1010
    vt110b0130000 1011
    ff120c0140000 1100
    cr130d0150000 1101
    so140e0160000 1110
    si150f0170000 1111
    dle16100200001 0000
    dc117110210001 0001
    dc218120220001 0010
    dc319130230001 0011
    dc420140240001 0100
    nak21150250001 0101
    syn22160260001 0110
    etb23170270001 0111
    can24180300001 1000
    em25190310001 1001
    sub261a0320001 1010
    esc271b0330001 1011
    fs281c0340001 1100
    gs291d0350001 1101
    rs301e0360001 1110
    us311f0370001 1111
    sp32200400010 0000
    !33210410010 0001
    "34220420010 0010
    #35230430010 0011
    $36240440010 0100
    %37250450010 0101
    &38260460010 0110
    '39270470010 0111
    (40280500010 1000
    )41290510010 1001
    *422a0520010 1010
    +432b0530010 1011
    ,442c0540010 1100
    -452d0550010 1101
    .462e0560010 1110
    /472f0570010 1111
    048300600011 0000
    149310610011 0001
    250320620011 0010
    351330630011 0011
    452340640011 0100
    553350650011 0101
    654360660011 0110
    755370670011 0111
    856380700011 1000
    957390710011 1001
    :583a0720011 1010
    ;593b0730011 1011
    <603c0740011 1100
    =613d0750011 1101
    >623e0760011 1110
    ?633f0770011 1111
    @64401000100 0000
    A65411010100 0001
    B66421020100 0010
    C67431030100 0011
    D68441040100 0100
    E69451050100 0101
    F70461060100 0110
    G71471070100 0111
    H72481100100 1000
    I73491110100 1001
    J744a1120100 1010
    K754b1130100 1011
    L764c1140100 1100
    M774d1150100 1101
    N784e1160100 1110
    O794f1170100 1111
    P80501200101 0000
    Q81511210101 0001
    R82521220101 0010
    S83531230101 0011
    T84541240101 0100
    U85551250101 0101
    V86561260101 0110
    W87571270101 0111
    X88581300101 1000
    Y89591310101 1001
    Z905a1320101 1010
    [915b1330101 1011
    \925c1340101 1100
    ]935d1350101 1101
    ^945e1360101 1110
    _955f1370101 1111
    `96601400110 0000
    a97611410110 0001
    b98621420110 0010
    c99631430110 0011
    d100641440110 0100
    e101651450110 0101
    f102661460110 0110
    g103671470110 0111
    h104681500110 1000
    i105691510110 1001
    j1066a1520110 1010
    k1076b1530110 1011
    l1086c1540110 1100
    m1096d1550110 1101
    n1106e1560110 1110
    o1116f1570110 1111
    p112701600111 0000
    q113711610111 0001
    r114721620111 0010
    s115731630111 0011
    t116741640111 0100
    u117751650111 0101
    v118761660111 0110
    w119771670111 0111
    x120781700111 1000
    y121791710111 1001
    z1227a1720111 1010
    {1237b1730111 1011
    |1247c1740111 1100
    }1257d1750111 1101
    ~1267e1760111 1110
    del1277f1770111 1111

    Παράσταση δεδομένων με XML, JSON και κανονικές εκφράσεις

    Σύνταξη κανονικών εκφράσεων

    Σύμβολα με ειδικό νόημα

    Πρόσθετα σύμβολα με ειδικό νόημα

    Χαρακτήρες διαφυγής

    Πρόσθετοι χαρακτήρες διαφυγής

    Χρήση κανονικών εκφράσεων

    Παράδειγμα: Εύρεση κανονικών εκφράσεων σε αρχείο

    
    /*
     * Globally match regular expression and print
     * Modelled after the Unix command with the same name
     * D. Spinellis, January 2004-2024
     */
    
    import java.util.regex.*;
    import java.io.*;
    
    class Grep {
        public static void main(String args[]) {
            if (args.length != 2) {
                System.err.println("Usage: Grep pattern file");
                System.exit(1);
            }
    
            try (var in = new BufferedReader(new InputStreamReader(
                            new FileInputStream(args[1])))) {
                Pattern compiledRe = Pattern.compile(args[0]);
                String s;
                while ((s = in.readLine()) != null) {
                    Matcher m = compiledRe.matcher(s);
                    if (m.find())
                        System.out.println(s);
                }
            } catch (FileNotFoundException e) {
                System.err.println("Unable to open file " + args[1] + ": " + e.getMessage());
                System.exit(2);
            } catch (PatternSyntaxException e) {
                System.err.println("Invalid RE syntax: " + e.getDescription());
                System.exit(3);
            } catch (IOException e) {
                System.err.println("Error reading line: " + e.getMessage());
                System.exit(4);
            }
        }
    }
    

    Αποτέλεσμα αναζήτησης κανονικών εκφράσεων

    java Grep "abo" /usr/dict/words
    ...
    sabotage
    seaboard
    taboo
    thereabouts
    turnabout
    vagabond
    whereabout
    ...
    
    java Grep "^abo" /usr/dict/words
    aboard
    abode
    abolish
    abolition
    abominable
    abominate
    aboriginal
    
    java Grep bent /usr/dict/words
    absorbent
    bent
    benthic
    debenture
    incumbent
    recumbent
    
    java Grep "bent$" /usr/dict/words
    absorbent
    bent
    incumbent
    recumbent
    
    java Grep "[^AEIOUYaeiouy]{5,}" /usr/dict/words
    angstrom
    Armstrong
    birthplace
    bremsstrahlung
    corkscrew
    Dijkstra
    downstream
    hardscrabble
    jockstrap
    Knightsbridge
    lengthly
    Nietzsche
    nightclub
    offspring
    postscript
    Rothschild
    ...
    
    java Grep "(.)(.)(.)\3\2\1" /usr/dict/words
    braggart
    Brenner
    collocation
    diffident
    dissident
    glossolalia
    grammar
    grammarian
    installation
    staccato
    suffuse
    

    Διαίρεση συμβολοσειρών με πρότυπο

    Διαίρεση συμβολοσειρών με κανονική έκφραση

    Όταν τα τμήματα μιας συμβολοσειράς χωρίζονται από ίδια στοιχεία διαχωρισμού (π.χ. :, κενό, tab) τότε μπορούμε να τα διαχωρίσουμε με τη μέθοδο του αντικειμένου Pattern.
    
    import java.io.*;
    import java.util.regex.*;
    
    public class SplitWords {
        public static void main(String[] args) {
            if (args.length != 1) {
                System.err.println("Usage: SplitWords file");
                System.exit(1);
            }
    
            // Split on non-word characters
            Pattern splitPattern = Pattern.compile("[^a-zA-Z]+");
    
            try (var in = new BufferedReader(new InputStreamReader(
                            new FileInputStream(args[0])))) {
                String line;
                while ((line = in.readLine()) != null) {
                    String[] words = splitPattern.split(line);
                    for (String word : words) {
                        System.out.println(word);
                    }
                }
            } catch (FileNotFoundException e) {
                System.err.println("Unable to open file " + args[0] + ": " + e.getMessage());
                System.exit(2);
            } catch (IOException e) {
                System.err.println("Error reading line: " + e.getMessage());
                System.exit(3);
            }
        }
    }
    

    Παράδειγμα: επεξεργασία αρχείων καταγραφής πρόσβασης σε ιστοσελίδες

    
    /*
     * Collect and print Web statistics
     * D. Spinellis, 2004-2024
     */
    
    import java.util.*;
    import java.util.regex.*;
    import java.io.*;
    
    class WebStats {
    
        /**
         * Increment the integer value of map's member by 1
         * The member is obtained by using the matcher to extract
         * the specified group from the string s
         */
        static void increment(Map<String, Integer> map, String s, Matcher m, int group) {
    	String member = s.substring(m.start(group), m.end(group));
    	Integer i = map.get(member);
            map.put(member, i == null ? 1 : i + 1);
        }
    
        /** List the contents of the given map */
        static void list(String title, Map<String, Integer> map) {
    	System.out.println("\n" + title);
    	for (Map.Entry e : map.entrySet())
    	    System.out.println(e.getValue() + " " + e.getKey());
        }
    
        /** List the contents of the given map ordered by their values.
         * (You are not expected to undestand this).
         */
        static void sortedList(String title, Map<String, Integer> map) {
    	System.out.println("\n" + title);
    	var valueOrder = new TreeSet<Map.Entry<String, Integer>>(new
    	    Comparator<Map.Entry<String, Integer>>() {
    		public int compare(Map.Entry<String, Integer> a,
    			Map.Entry<String, Integer> b) {
    		    return (-a.getValue().compareTo(b.getValue()));
    		}
    	    }
    	);
    	valueOrder.addAll(map.entrySet());
    	for (Map.Entry e : valueOrder)
    	    System.out.println(e.getValue() + " " + e.getKey());
        }
    
    
    
        public static void main(String args[]) {
    	if (args.length != 1) {
    	    System.err.println("Usage: WebStats file");
    	    System.exit(1);
    	}
    
    	Pattern cre = null;	// Compiled RE
    	try {
    	    // A standard log line is a line like:
    	    // 192.168.136.16 - - [26/Jan/2004:19:45:48 +0200] "GET /c136.html HTTP/1.1" 200 1674 "http://office/c120.html" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20031007"
    	    String patternString = """
                    ([-\\w.]+)\\s+      # 1. Host
                    ([-\\w]+)\\s+       # 2. Logname
                    ([-\\w]+)\\s+       # 3. User
                    \\[(\\d+)/          # 4. Date
                    (\\w+)/             # 5. Month
                    (\\d+):             # 6. Year
                    (\\d+):             # 7. Hour
                    (\\d+)              # 8. Minute
                    ([^]]+?)\\]\\s+     # 9. Rest of time
                    \"([-\\w]+)\\s*     # 10. Request verb
                    ([^\\s]*)           # 11. Request URL
                    ([^\"]*?)\"\\s+     # 12. Request protocol etc.
                    (\\d+)\\s+          # 13. Status
                    ([-\\d]+)\\s+       # 14. Bytes
                    \"([^\"]*)\"\\s+    # 15. Referrer URL
                    \"([^\"]*)\"        # 16. Client
    	    """;
    	    cre = Pattern.compile(patternString, Pattern.COMMENTS);
    	} catch (PatternSyntaxException e) {
    	    System.err.println("Invalid RE syntax: " + e.getDescription());
    	    System.exit(1);
    	}
    
    	BufferedReader in = null;
    	try {
    	    in = new BufferedReader(new InputStreamReader(new FileInputStream(args[0])));
    	} catch (FileNotFoundException e) {
    	    System.err.println("Unable to open file " + args[1] + ": " + e.getMessage());
    	    System.exit(1);
    	}
    
    	var host = new HashMap<String, Integer>();
    	var hour = new HashMap<String, Integer>();
    	var request = new HashMap<String, Integer>();
    	var referrer = new HashMap<String, Integer>();
    	try {
    	    String s;
    	    while ((s = in.readLine()) != null) {
    		Matcher m = cre.matcher(s);
    		if (!m.matches())
    		    System.out.println("Invalid line: " + s);
    		else {
    		    increment(host, s, m, 1);
    		    increment(hour, s, m, 7);
    		    increment(request, s, m, 11);
    		    increment(referrer, s, m, 15);
    		}
    	    }
    	} catch (Exception e) {
    	    System.err.println("Error reading line: " + e.getMessage());
    	    System.exit(1);
    	}
    	sortedList("Host Access Counts", host);
    	sortedList("Hourly Access Counts", hour);
    	sortedList("Request URL Access Counts", request);
    	sortedList("Referrer URL Access Counts", referrer);
        }
    }
    

    Υλοποίηση αναγνώρισης κανονικών εκφράσεων

    Μηχανή μετάπτωσης καταστάσεων για αναγνώριση της κανονικής έκφρασης (ΔΕΤ!+)|(ΔΕΟΣ) State machine example (Υλοποιείται από 9 άτομα.)

    Επιλογή ανάμεσα σε JSON και XML

    O μορφότυπος JSON

    Σύνταξη JSON

    
    {
        "name": "John",
        "age": 30,
        "isStudent": false,
        "courses": ["Math", "Science"],
        "address": {
            "city": "Athens",
            "country": "Greece"
        }
    }
    

    Βασικοί τύποι δεδομένων σε JSON

    Ενσωμάτωση JSON στη Java

    Ανάγνωση και δημιουργία δεδομένων JSON

    
    package gr.aueb.dmst.dds.example;
    
    import com.google.gson.Gson;
    
    record Person(String name, int age) {}
    
    public class JsonIO {
        public static void main(String[] args) {
            Gson gson = new Gson();
    
    	// Read a JSON object
            String json = "{\"name\":\"Anna\", \"age\":25}";
            Person person = gson.fromJson(json, Person.class);
            System.out.println("Read Person: " + person);
    
    	// Serialize a Java object into JSON
            String serializedJson = gson.toJson(person);
            System.out.println("Serialized JSON: " + serializedJson);
        }
    }
    

    Βέλτιστες πρακτικές

    Βάσεις της XML

    Έγγραφα XML

    Παραδείγματα XML

    Παράδειγμα: ένα στοιχείο με κείμενο

    
    <city>Larisa</city>
    

    Παράδειγμα: στοιχείο με περιεχόμενο άλλα στοιχεία

    
     <?xml version="1.0" encoding="US-ASCII" ?>
     <city_info>
        <name>Larisa</name>
        <area_code>241</area_code>
        <latitude>39.38</latitude>
        <longitude>-22.25</longitude>
        <country>Greece</country>
     </city_info>
    

    Παράδειγμα: κενό στοιχείο

    
    <alumnus />
    
    Ηλεκτρονικό τιμολόγιο (https://docs.oasis-open.org/ubl/os-UBL-2.1/xml/UBL-Invoice-2.1-Example.xml)

    Προσδιορισμοί

    Παράδειγμα:
    <city country="el" id="HER">
    <name>Hrakleio</name>
    </city>
    

    Οντότητες και σχόλια

    Οι παρακάτω οντότητες (entities) μπορούν να οριστούν περιφραστικά:
    ΟντότηταΣύνταξη XML
    <&lt;
    &&amp;
    >&gt;
    "&quot;
    '&apos;

    Σχόλια μέσα σε ένα έγγραφο XML γράφονται ως
    <!-- περιεχόμενο -->

    Διάκριση μεταξύ οντοτήτων, στοιχείων και προσδιορισμών

    Παράδειγμα: ΚΑΔ XML

    Τα παρακάτω αρχείο χρησιμοποιείται από τους φορολογούμενους για να δηλώσουν στη ΑΑΔΕ τον κωδικό αριθμό δραστηριότητάς (ΚΑΔ) τους.
    <?xml version="1.0" encoding="UTF-8"?>
    <ekad xmlns="http://www.gsis.gr/ekad"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      afm="046523469">
        <branch aa="0">
            <kad typeOfKad="1">
                <value>71121908</value>
            </kad>
        </branch>
    </ekad>
    

    Ορισμός σχήματος εγγράφων με τη χρήση XSD

    Σχήμα για απλά στοιχεία

    Στοιχεία XML που περιέχουν απλά δεδομένα όπως το παρακάτω
    <?xml version="1.0" ?>
    <studentID>802345</studentID>
    
    μπορούν να δηλωθούν με το στοιχείο element και τον προσδιορισμό του τύπου.
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="studentID" type="xsd:integer" />
    </xsd:schema>
    

    Διαθέσιμοι τύποι

    Μερικοί διαθέσιμοι τύποι είναι οι παρακάτω:

    Περιορισμοί σε απλά στοιχεία

    Αν θέλουμε να περιορίσουμε το περιεχόμενο του στοιχείου, μπορούμε να χρησιμοποιήσουμε τα στοιχεία simpleType και restriction μαζί με διάφορους περιορισμούς (restrictions) (στο παράδειγμα pattern).
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="studentID" >
            <xsd:simpleType>
                <xsd:restriction base="xsd:integer">
                    <xsd:pattern value="80\d{4}" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
    </xsd:schema>
    

    Είδη περιορισμών

    Μερικοί υποστηριζόμενοι περιορισμοί είναι οι παρακάτω: Όλοι παίρνουν μια παράμετρο value, που ορίζει την τιμή τους.

    Παραδείγματα περιορισμών

    Παράδειγμα σχήματος για βαθμό:
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            <xsd:element name="grade" >
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:float">
                        <xsd:pattern value="\d+\.[05]"/>
                        <xsd:minInclusive value="0"/>
                        <xsd:maxInclusive value="10"/>
                      </xsd:restriction>
                    </xsd:simpleType>
            </xsd:element>
    </xsd:schema>
    
    Παράδειγμα περιορισμού για επιλογή μιας πόλης:
    <xsd:simpleType>
      <xsd:restriction base="xsd:string">
        <xsd:enumeration value="Athens"/>
        <xsd:enumeration value="Thessaloniki"/>
        <xsd:enumeration value="Argostoli"/>
        <xsd:enumeration value="Volos"/>
        <!-- ... -->
      </xsd:restriction>
    </xsd:simpleType>
    

    Σύνθετοι τύποι

    Ορισμοί προσδιορισμών

    Απλό περιεχόμενο

    Παράδειγμα απλού περιεχομένου

    Παράδειγμα σχήματος:
    
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="country">
      <xsd:complexType>
        <xsd:simpleContent >
            <xsd:extension base="xsd:string" >
                <xsd:attribute name="code" type="xsd:string" use="required" />
            </xsd:extension>
        </xsd:simpleContent >
      </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    
    Παράδειγμα εγγράφου:
    
    <?xml version="1.0" ?>
    <country code="el">Greece</country>
    

    Ομάδες

    Σε ένα στοιχείο complexType μπορούμε να ορίσουμε και τα παρακάτω στοιχεία

    Παράδειγμα ομάδων

    Παράδειγμα σχήματος:
    
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="javaProgram">
            <xsd:complexType>
                <xsd:sequence>
                    <xsd:element name="package" type="xsd:string" />
                    <xsd:element name="import" type="xsd:string" maxOccurs="unbounded" />
                    <xsd:element name="class">
                        <xsd:complexType>
                            <xsd:sequence>
                                <xsd:element name="name" type="xsd:string" />
                                <xsd:choice maxOccurs="unbounded">
                                    <xsd:element name="field" type="xsd:string" />
                                    <xsd:element name="ctor" type="xsd:string" />
                                    <xsd:element name="method" type="xsd:string" />
                                </xsd:choice>
                            </xsd:sequence>
                            <xsd:attribute name="extends" type="xsd:string" use="optional" />
                        </xsd:complexType>
                    </xsd:element>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:element>
    </xsd:schema>
    
    Παράδειγμα εγγράφου:
    
    <?xml version="1.0" ?>
    <javaProgram>
            <package>gr.aueb.dds.bio</package>
            <import>java.util.Date</import>
            <import>java.math.BigDecimal</import>
            <class extends="Object">
                    <name>Point</name>
                    <field>int x</field>
                    <field>int y</field>
                    <ctor>Point(int x, int y)</ctor>
                    <field>static int numPoints</field>
            </class>
    </javaProgram>
    

    Αριθμητικοί περιορισμοί

    Παράδειγμα: Μια τάξη μπορεί να έχει 10-150 φοιτητές.
    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="class" >
            <xsd:complexType>
                <xsd:sequence>
                    <xsd:element name="student" type="xsd:string"
                     minOccurs="10" maxOccurs="150" />
                </xsd:sequence>
            </xsd:complexType>
        </xsd:element>
    </xsd:schema>
    

    Ανακεφαλαίωση

    Η επιτρεπόμενη δομή ενός εγγράφου XSD εμφανίζεται στο παρακάτω σχήμα.
    the content models in an XML Schema
    (Αναδημοσιεύεται με την άδεια του συγγραφέα Rahul Srivastava).

    Παράδειγμα: ΚΑΔ XSD

    Τα παρακάτω σχήμα ορίζει τη μορφή του αρχείου που χρησιμοποιείται από τους φορολογούμενους για να δηλώσουν στη ΑΑΔΕ τον κωδικό αριθμό δραστηριότητάς (ΚΑΔ) τους.
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns="http://www.gsis.gr/ekad" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.gsis.gr/ekad" elementFormDefault="qualified" attributeFormDefault="unqualified">
      <xs:element name="ekad">
        <xs:annotation>
          <xs:documentation>root element</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="branch" nillable="false" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>Εγκατάσταση</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="kad" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="value" nillable="false">
                          <xs:annotation>
                            <xs:documentation>Η τιμή του ΚΑΔ</xs:documentation>
                          </xs:annotation>
                          <xs:simpleType>
                            <xs:restriction base="xs:integer">
                              <xs:totalDigits value="15"/>
                            </xs:restriction>
                          </xs:simpleType>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="typeOfKad" use="required">
                        <xs:annotation>
                          <xs:documentation>Είδος ΚΑΔ (δραστηριότητας). 1=Κύρια, 2=Δευτερεύουσα, 3=Λοιπή, 4=Βοηθητική</xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                          <xs:restriction base="xs:int">
                            <xs:enumeration value="1"/>
                            <xs:enumeration value="2"/>
                            <xs:enumeration value="3"/>
                            <xs:enumeration value="4"/>
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:attribute name="aa" use="required">
                  <xs:annotation>
                    <xs:documentation>ΑΑ εγκατάστασης. Η έδρα δηλώνεται σαν υποκατάστημα με ΑΑ=0. Εάν υπάρχει μητρική εταιρεία στο εξωτερικό, ο ΚΑΔ της δηλώνεται ως υποκατάστημα με ΑΑ=9999</xs:documentation>
                  </xs:annotation>
                  <xs:simpleType>
                    <xs:restriction base="xs:int">
                      <xs:minInclusive value="0"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:attribute>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="afm" use="required">
            <xs:annotation>
              <xs:documentation>ΑΦΜ υπόχρεου</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:minLength value="9"/>
                <xs:maxLength value="9"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:schema>
    

    Μετασχηματισμοί με τη χρήση XSLT

    Στοιχεία της XSLT

    Παράδειγμα μετασχηματισμού: σχήμα

    <?xml version="1.0" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="project">
            <xsd:complexType>
                <xsd:sequence>
                    <xsd:element name="shortname" type="xsd:string" />
                    <xsd:element name="projtitle" type="xsd:string" />
                    <xsd:element name="startdate" type="xsd:date" minOccurs="0" />
                    <xsd:element name="enddate" type="xsd:date" />
                    <xsd:element name="web_site" type="xsd:string" minOccurs="0" />
                    <xsd:element name="our_budget" type="xsd:integer" minOccurs="0" />
                    <xsd:element name="total_budget" type="xsd:integer" minOccurs="0" />
                    <xsd:element name="funding_agency" type="xsd:string" minOccurs="0" />
                    <xsd:element name="funding_programme" type="xsd:string" minOccurs="0" />
                    <xsd:element name="project_code" type="xsd:string" minOccurs="0" />
                    <xsd:element name="partner" minOccurs="0" maxOccurs="unbounded">
                        <xsd:complexType>
                            <xsd:sequence>
                                <xsd:element name="shortname" type="xsd:string" />
                                <xsd:element name="country" type="xsd:string" />
                                <xsd:element name="web_site" type="xsd:string" minOccurs="0" />
                            </xsd:sequence>
                        </xsd:complexType>
                    </xsd:element>
                    <xsd:element name="logo" type="xsd:string" minOccurs="0" />
                    <xsd:element name="description" type="xsd:string" />
                </xsd:sequence>
            </xsd:complexType>
        </xsd:element>
    </xsd:schema>
    

    Παράδειγμα μετασχηματισμού: έγγραφο

    <?xml version="1.0"?>
    <project>
            <shortname>mExpress</shortname>
            <projtitle>mobile in-EXhibition PRovision of Electronic Support Services</projtitle>
            <startdate>2002-03-05</startdate>
            <enddate>2004-04-01</enddate>
            <web_site>http://mexpress.intranet.gr/</web_site>
            <our_budget>328</our_budget>
            <total_budget>3493</total_budget>
            <funding_agency>European Commission</funding_agency>
            <funding_programme>IST</funding_programme>
            <project_code>IST-2001-33432</project_code>
            <partner>
                    <shortname>Intracom</shortname>
                    <country>EL</country>
                    <web_site>http://www.intracom.gr</web_site>
            </partner>
            <partner>
                    <shortname>Ericsson</shortname>
                    <country>DK</country>
                    <web_site>http://www.ericsson.com/</web_site>
            </partner>
            <partner>
                    <shortname>ELISA</shortname>
                    <country>FIN</country>
                    <web_site>http://www.elisa.com</web_site>
            </partner>
            <partner>
                    <shortname>POULIADIS</shortname>
                    <country>EL</country>
                    <web_site>http://www.pouliadis.gr</web_site>
            </partner>
            <partner>
                    <shortname>SSF</shortname>
                    <country>FIN</country>
                    <web_site>http://www.ssf.fi/</web_site>
            </partner>
            <partner>
                    <shortname>HUT</shortname>
                    <country>FIN</country>
                    <web_site>http://www.hut.fi</web_site>
            </partner>
            <partner>
                    <shortname>FFC</shortname>
                    <country>FIN</country>
            </partner>
            <partner>
                    <shortname>ROTA</shortname>
                    <country>EL</country>
                    <web_site>http://www.rota.gr</web_site>
            </partner>
            <logo>../images/p_mexpress.gif</logo>
            <description>
    mEXPRESS aims to exploit the technological opportunities arising from
    evolution in the areas of wireless networks and positioning mechanisms in
    order to support and facilitate the professional exhibition industry in
    a context-aware manner. It will contribute to the economic development of
    the Community by providing means for efficient operation and interaction
    in information-rich environments such as exhibitions, and significantly
    enhancing promotional activities and business communications. The mEXPRESS
    project will provide an integrated mediation platform (mEXPRESS Service
    Provider) oriented to exhibition shows and events.
            </description>
    </project>
    

    Παράδειγμα μετασχηματισμού: XSLT

    <?xml version="1.0"?>
    <!-- Apply using
    xml tr project.xslt mexpress.xml
    -->
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
            <xsl:template match="project">
                    <h1>
                    <xsl:value-of select="shortname" />
                    -
                    <xsl:value-of select="projtitle" />
                    </h1>
                    <!-- Show Logo -->
                    <xsl:element name="img">
                            <xsl:attribute name="src"><xsl:value-of select="logo" /></xsl:attribute>
                    </xsl:element>
                    <br /> <br />
                    <!-- Project Summary information -->
                    <xsl:if test="count(project_code) != 0">
                            Project Code:
                            <xsl:value-of select="project_code" />
                            <xsl:if test="@international = 'yes'">
                                    (International)
                            </xsl:if>
                            <br/>
                    </xsl:if>
                    <xsl:if test="count(funding_programme) != 0">
                            Funding programme: <xsl:value-of select="funding_programme" />
                            <br />
                    </xsl:if>
                    <xsl:if test="count(funding_agency) != 0">
                            Funding Agency: <xsl:value-of select="funding_agency" />
                            <br />
                    </xsl:if>
                    <xsl:if test="@type != ''">
                            Project type:
                            <xsl:choose>
                                    <xsl:when test="@type = 'rtd'">RTD</xsl:when>
                                    <xsl:when test="@type = 'consulting'">Consulting</xsl:when>
                                    <xsl:when test="@type = 'training'">Training</xsl:when>
                                    <xsl:when test="@type = 'dissemination'">Dissemination</xsl:when>
                            </xsl:choose>
                            <br />
                    </xsl:if>
                    <xsl:if test="count(web_site) != 0">
                            Web site:
                            <xsl:element name="a">
                                    <xsl:attribute name="href"><xsl:value-of select="web_site"/></xsl:attribute>
                                    <xsl:value-of select="web_site" />
                            </xsl:element>
                            <br />
                            <br />
                    </xsl:if>
                    <xsl:if test="count(our_budget) != 0">
                            ELTRUN budget: <xsl:value-of select="our_budget" /> EUR
                            <br />
                    </xsl:if>
                    <xsl:if test="count(total_budget) != 0">
                            Total budget: <xsl:value-of select="total_budget" /> EUR
                            <br />
                    </xsl:if>
                    <br />
            </xsl:template>
    </xsl:stylesheet>
    

    Παράδειγμα μετασχηματισμού: αποτέλεσμα

    mExpress - mobile in-EXhibition PRovision of Electronic Support Services



    Project Code: IST-2001-33432 (International)
    Funding programme: IST
    Funding Agency: European Commission
    Project type: RTD
    Web site: http://mexpress.intranet.gr/ (http://mexpress.intranet.gr/)

    ELTRUN budget: 328 EUR
    Total budget: 3493 EUR

    Το μοντέλο αντικειμένων εγγράφων

    Μέθοδοι της NodeList

    Η υλοποίηση του μοντέλου αντικειμένων εγγράφων στη Java

    Κλήσεις μέσω της διεπαφής Document

    Παράδειγμα: υπολογισμός μέσου όρου

    import javax.xml.parsers.*;
    import java.io.*;
    import org.w3c.dom.*;
    
    class Average {
        public static void main(String args[]) {
    
            if (args.length != 2) {
                System.err.println("Usage: Average element file");
                System.exit(1);
            }
    
            Document doc = null;
            try {
                // Create the DocumentBuilderFactory
                DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
                // Create the document builder
                DocumentBuilder db = dbf.newDocumentBuilder();
                // Create DOM document from the file
                doc = db.parse(new File(args[1]));
            } catch (Exception e) {
                System.err.println("Parsing failed: " + e);
                System.exit(1);
            }
    
            NodeList nodes = doc.getElementsByTagName(args[0]);
            double sum = 0.0;
            for (int i = 0; i < nodes.getLength(); i++) {
                String grade = nodes.item(i).getFirstChild().getNodeValue();
                sum += (Integer.valueOf(grade)).doubleValue();
            }
            System.out.println(sum / nodes.getLength());
        }
    }
    

    Αποτέλεσμα υπολογισμού

    Η εκτέλεση στο αρχείο
    <result_list>
        <result>
            <id>809678</id>
            <grade>9</grade>
        </result>
        <result>
            <id>809630</id>
            <grade>8</grade>
        </result>
        <result>
            <id>809679</id>
            <grade>10</grade>
        </result>
        <result>
            <id>809673</id>
            <grade>6</grade>
        </result>
    </result_list>
    
    γίνεται ως εξής.
    java Average grade grade.xml
    8.25
    

    Άσκηση: Περιγραφή δεδομένων με XML και κανονικές εκφράσεις

    Άσκηση 10

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Παράρτημα: Ορισμός τύπου εγγράφων με τη χρήση DTD

    Υποστηρίζονται οι παρακάτω ορισμοί:
    Απλοί χαρακτήρες (parsed character data)
    <!ELEMENT name (#PCDATA)>
    
    Ένα στοιχείο
    <!ELEMENT student (person_data)>
    
    Ακολουθία στοιχείων
    <!ELEMENT person_data (name, surname)>
    
    Κανένα ή ένα στοιχείο
    <!ELEMENT person_name (given_name, initial?, last_name)>
    
    Μηδέν ή περισσότερα στοιχεία
    <!ELEMENT owned_cars (car*)>
    
    Ένα ή περισσότερα στοιχεία
    <!ELEMENT course_lecturer (person_data+)>
    
    Επιλογή στοιχείων
    <!ELEMENT engine (two_stroke | four_stroke | wankel | rotary)>
    
    Χρήση παρενθέσεων
    <!ELEMENT person_details (name, surname, (vat_number | id_number))>
    
    Κενό περιεχόμενο
    <!ELEMENT alumnus EMPTY>
    
    Τυχαίο περιεχόμενο
    <!ELEMENT text ANY>
    

    Παράδειγμα - DTD

    <!--
     -
     - Document Type Description for the projects
     -
     - $Id: project.dtd,v 1.2 2004/01/24 20:20:04 bkarak Exp $
     -
    -->
    <!ELEMENT project (
        shortname, 
        projtitle, 
        startdate?, 
        enddate, 
        web_site?, 
        our_budget?, 
        total_budget?, 
        funding_agency?, 
        funding_programme?, 
        project_code?, 
        partner*, 
        logo?, 
        description
    )>
    
    <!ELEMENT projtitle (#PCDATA)>
    <!ELEMENT our_budget (#PCDATA)>
    <!ELEMENT total_budget (#PCDATA)>
    <!ELEMENT funding_agency (#PCDATA)>
    <!ELEMENT funding_programme (#PCDATA)>
    <!ELEMENT project_code (#PCDATA)>
    <!ELEMENT web_site (#PCDATA)>
    <!ELEMENT startdate (#PCDATA)>
    <!ELEMENT enddate (#PCDATA)>
    <!ELEMENT shortname (#PCDATA)>
    <!ELEMENT logo (#PCDATA)>
    <!ELEMENT description (#PCDATA)>
    
    <!ELEMENT partner (shortname, country, web_site?)>
    <!ELEMENT shortname (#PCDATA)>
    <!ELEMENT country (#PCDATA)>
    

    Παράδειγμα - αντίστοιχη XML

    <?xml version="1.0"?>
    <project>
        <shortname>mExpress</shortname>
        <projtitle>mobile in-EXhibition PRovision of Electronic Support Services</projtitle>
        <startdate>20020305</startdate>
        <enddate>20040401</enddate>
        <web_site>http://mexpress.intranet.gr/</web_site>
        <our_budget>328 EUR</our_budget>
        <total_budget>3,493 EUR</total_budget>
        <funding_agency>European Commission</funding_agency>
        <funding_programme>IST</funding_programme>
        <project_code>IST-2001-33432</project_code>
        <partner>
            <shortname>Intracom</shortname>
            <country>EL</country>
            <web_site>http://www.intracom.gr</web_site>
        </partner>
        <partner>
            <shortname>Ericsson</shortname>
            <country>DK</country>
            <web_site>http://www.ericsson.com/</web_site>
        </partner>
        <partner>
            <shortname>ELISA</shortname>
            <country>FIN</country>
            <web_site>http://www.elisa.com</web_site>
        </partner>
        <partner>
            <shortname>POULIADIS</shortname>
            <country>EL</country>
            <web_site>http://www.pouliadis.gr</web_site>
        </partner>
        <partner>
            <shortname>SSF</shortname>
            <country>FIN</country>
            <web_site>http://www.ssf.fi/</web_site>
        </partner>
        <partner>
            <shortname>HUT</shortname>
            <country>FIN</country>
            <web_site>http://www.hut.fi</web_site>
        </partner>
        <partner>
            <shortname>FFC</shortname>
            <country>FIN</country>
        </partner>
        <partner>
            <shortname>ROTA</shortname>
            <country>EL</country>
            <web_site>http://www.rota.gr</web_site>
        </partner>
        <logo>../images/p_mexpress.gif</logo>
        <description>
    mEXPRESS aims to exploit the technological opportunities arising from
    evolution in the areas of wireless networks and positioning mechanisms in
    order to support and facilitate the professional exhibition industry in
    a context-aware manner. It will contribute to the economic development of
    the Community by providing means for efficient operation and interaction
    in information-rich environments such as exhibitions, and significantly
    enhancing promotional activities and business communications. The mEXPRESS
    project will provide an integrated mediation platform (mEXPRESS Service
    Provider) oriented to exhibition shows and events.
        </description>
    </project>
    

    Παράρτημα: Ορισμός τύπων προσδιορισμών με τη χρήση DTD

    Οι προδιορισμοί που επιτρέπονται σε ένα στοιχείο ορίζονται με στοιχεία της μορφής
    <!ATTLIST όνομα_στοιχείου
        όνομα_προσδιορισμού τύπος_προσδιορισμού περιορισμός
        ...
    >
    
    Υποστηρίζονται μεταξύ άλλων οι παρακάτω τύποι προσδιορισμού
    Χαρακτήρες
    CDATA
    Απαρίθμηση
    (επιλογή1 | επιλογή2 | ...)
    Κλειδί
    ID
    Αναφορά σε κλειδί
    IDREF
    Αναφορά σε κλειδιά
    IDREFS
    Οι πιο χρήσιμοι περιορισμοί προσδιορισμών είναι:
    #IMPLIED
    Προαιρετικός προσδιορισμός
    #REQUIRED
    Υποχρεωτικός προσδιορισμός

    Παράδειγμα - DTD

    <!ATTLIST project
        id ID #REQUIRED
        contact CDATA #IMPLIED
        scientific_coordinator CDATA #IMPLIED
        project_manager CDATA #IMPLIED
        group CDATA #REQUIRED
        international (yes | no) #REQUIRED
        type (consulting | rtd | training | dissemination) #REQUIRED
    >
    

    Παράδειγμα - XML

    <?xml version="1.0"?>
    <project
        id="p_mexpress"
        group="g_sense g_wrc"
        scientific_coordinator="m_dds"
        contact="m_pateli"
        international="yes"
        type="rtd"
        project_manager="m_pateli"
    >
    <!-- ... -->
    </project>
    

    Εκτενές παράδειγμα

    Γιορτινή κάρτα

    Ολοκληρωμένο παράδειγμα

    Διάγραμμα των κλάσεων

    XMas card class diagram

    HolidayCard

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Rectangle;
    
    /**
     * The Holiday Card program main class.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @depend - - - gr.aueb.card.DrawPanel
     * @depend - <instantiate> - gr.aueb.card.MidiPlayer
     * @depend - - - gr.aueb.card.Tree
     * @depend - - - gr.aueb.card.PointSnowFlake
     * @depend - - - gr.aueb.card.SlashSnowFlake
     */
    public class HolidayCard {
    
        /** Number of trees */
        private static final int NUM_TREES = 30;
        /** Number of snowflakes */
        private static final int NUM_SNOWFLAKES = 1500;
        /** Minimum tree width. */
        private static final int TREE_WIDTH = 30;
        /** Minimum tree height. */
        private static final int TREE_HEIGHT = 100;
        /** Additional variation to tree height and width */
        private static final int TREE_WOBBLE = 100;
        /** Song to play. */
        private static String musicFile = "/Jingle_Bells_full_Ab.mid";
    
        public static void main(String[] args) {
    
            // Create a window and the canvas to draw onto.
            DrawPanel d = DrawPanel.getInstance();
    
            // Create randomly-positioned trees.
            for (int i = 0; i < NUM_TREES; i++) {
                Rectangle treeBox = new Rectangle(
    		(int)(Math.random() * DrawPanel.WIDTH),
                    (int)(Math.random() * DrawPanel.HEIGHT),
                    TREE_WIDTH + (int)(Math.random() * TREE_WOBBLE),
                    TREE_HEIGHT + (int)(Math.random() * TREE_WOBBLE));
    
                Tree t = new Tree(d.getCanvas(), treeBox);
                d.addDrawObject(t);
            }
    
    	// Start playing music
    	MidiPlayer m = new MidiPlayer(musicFile);
    
            // Create the snowflakes.
            for (int i = 0; i < NUM_SNOWFLAKES; i++) {
    	    switch (i % 6) {
    	    case 0, 1:
                    d.addDrawObject(new PointSnowFlake(d.getCanvas(), '.', 15));
    		break;
    	    case 2:
                    d.addDrawObject(new PointSnowFlake(d.getCanvas(), 'o', 10));
    		break;
    	    case 3:
                    d.addDrawObject(new PointSnowFlake(d.getCanvas(), '*', 5));
    		break;
    	    case 4, 5:
                    d.addDrawObject(new SlashSnowFlake(d.getCanvas()));
    		break;
    	    }
    	    try {
    		// Allow existing snowflakes to fall a bit, before adding more
    		Thread.sleep(100);
    	    } catch (InterruptedException e) {
    	    }
            }
        }
    }
    

    DrawPanel

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.util.Vector;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    
    /**
     * The program's main window.
     * Extends JFrame to display the window where the
     * trees and snow are drawn. Implements the {@link java.lang.Runnable Runnable}
     * interface so as to create a thread that repeatedly calls the
     * {@link gr.aueb.card.Drawable#draw() draw}method.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @opt nodefillcolor lightblue
     * @assoc 1 drawablePanel 1 DrawablePanel
     */
    public class DrawPanel extends JFrame implements Runnable {
    
        /** The window's width. */
        public static final int WIDTH = 1024;
        /** The window's height. */
        public static final int HEIGHT = 768;
    
        /** The window's background color (blue). */
        public static final Color BACKGROUND_COLOR = new Color(0, 153, 204);
    
        /* A table that holds the objects to be drawn */
        private Vector<Drawable> drawObjects = null;
    
        /* The drawing thread (not serializable) */
        private transient Thread thread;
    
        /* The canvas to draw onto */
        private DrawablePanel drawablePanel = null;
    
        /** Serial number of persistant  data.
         * Required, because JFrame implements serializable.
         */
        static final long serialVersionUID = 1L;
    
        /**
         * Constructor to initialize an object with the minimal required state.
         * The constructor is private, as the full initialization is done
         * in the getInstance method.
         */
        private DrawPanel() {
            super("Holiday Card");
        }
    
        /**
         * Field initialization based on a constructed instance
         */
        private void initialize() {
            drawObjects = new Vector<Drawable>();
            initializeGraphics();
            initializeThread();
        }
    
        /**
         * Initialize, display the window, and start the animation.
         * The code here is separate from the constructor in order to
         * avoid the resulting "this escape".
         */
        public static DrawPanel getInstance() {
            DrawPanel instance = new DrawPanel();
            instance.initialize();
            return instance;
        }
    
        /** Initialize the main window. */
        private void initializeGraphics() {
            // Make our window look nice
            JFrame.setDefaultLookAndFeelDecorated(true);
    
            // Create our drawing canvas
            drawablePanel = new DrawablePanel(this);
            drawablePanel.setBackground(BACKGROUND_COLOR);
            drawablePanel.setPreferredSize(new Dimension(WIDTH, HEIGHT));
            setContentPane(drawablePanel);
    
            // Handle termination
            setDefaultCloseOperation(
                    javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    
            // Exit when the window is closed
            addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
    
            // Our size
            setSize(WIDTH, HEIGHT);
    
            // Force the parent window to expand the canvas to all available space
            pack();
    
            //Display the window
            setVisible(true);
        }
    
        /** Start the execution of the drawing thread. */
        private void initializeThread() {
            if (thread == null) {
                thread = new Thread(this);
                thread.setPriority(Thread.MIN_PRIORITY);
                thread.start();
            }
        }
    
        /** Add a component to be drawn. */
        public void addDrawObject(Drawable drawObject) {
            drawObjects.add(drawObject);
        }
    
        /** Return a copy of the component list to be drawn */
        public Vector<Drawable> getDrawables() {
            return new Vector<Drawable>(drawObjects);
        }
    
        /**
         * The method to be executed by the running thread. Executes the
         * {@link DrawablePanel#repaint()}method periodically.
         */
        public void run() {
            Thread me = Thread.currentThread();
    
            // Allow termination by setting thread to null
            while (thread == me) {
                // tell drawablePanel to repaint its contents
                drawablePanel.repaint();
                try {
                    Thread.sleep(250);
                } catch (InterruptedException e) {
                }
            }
            thread = null;
        }
    
        /**
         * Get the canvas's drawing panel
         *
         * @return javax.swing.JPanel
         */
        public JPanel getCanvas(){
            return drawablePanel;
        }
    }
    

    Drawable

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import javax.swing.JPanel;
    
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.Rectangle;
    
    /**
     * An abstract representation of a self-drawable object.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     */
    public abstract class Drawable {
    
        /**
         * The canvas to draw the object onto
         */
        protected Graphics2D canvas;
    
        /**
         * The canvas's bounds
         */
        protected Rectangle bounds;
    
        /**
         * Create drawable item
         *
         * @param panel The panel to draw the object onto
         */
        public Drawable(JPanel panel) {
            bounds = panel.getBounds();
            canvas = (Graphics2D)panel.getGraphics();
        }
    
        /**
         * Draws the object onto the canvas
         *
         */
        public abstract void draw(Graphics g);
    }
    

    DrawablePanel

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Color;
    import java.awt.Graphics;
    import java.util.Vector;
    
    import javax.swing.JPanel;
    
    
    /**
     * The Holiday Card program main class.
     *
     * @author Georgios Zouganelis
     * Draw components from this object to reduce flickering.
     */
    public class DrawablePanel extends JPanel {
    
        /** The DrawPanel this DrawablePanel is attached to **/
        private DrawPanel controller = null;
    
        /** Serial number of persistent  data.
         * Required, because JPanel implements serializable.
         */
        private static final long serialVersionUID = 1L;
    
        /**
         * Constructor to initialize the DrawablePanel with it's controller
         *
         */
        public DrawablePanel(DrawPanel panel) {
            controller = panel;
        }
    
        /**
         * Perform all drawing operations
         * By overriding the JPanel method and initiating all the drawing
         * from this place we take advantage of JPanel's double-buffering
         * capability.
         */
        @Override
        public void paintComponent(Graphics g){
            super.paintComponent(g);
            setBackground(DrawPanel.BACKGROUND_COLOR);
    
            // Ask our controller for a copy of items to draw
            Vector<Drawable> toPaint = controller.getDrawables();
            for (Drawable d : toPaint)
                d.draw(g);
        }
    }
    

    Tree

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Polygon;
    import java.awt.Rectangle;
    import javax.swing.JPanel;
    
    /**
     * A self-drawable tree. Uses a box to specify the tree's bounds (the dimensions
     * constructor parameter). The trunk is placed in the middle of the bottom side
     * of the box, having a width equal to the 8% of the total width of the tree and
     * a height equal to the 20% of the total height of the bounding box. The main
     * body is represented as an isosceles triangle with a height of 80% of the
     * height of the bounding box.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @opt nodefillcolor green
     */
    public class Tree extends Drawable {
    
        /** Tree trunk width as % of the bounding rectangle width */
        private final double TRUNK_WIDTH_FACTOR = 0.08;
        /** Tree trunk height as % of the bounding rectangle height */
        private final double TRUNK_HEIGHT_FACTOR = 0.2;
        /** Tree body height as % of the bounding rectangle height */
        private final double BODY_HEIGHT_FACTOR = 0.8;
        /** Trunk's color (RGB) */
        private final Color BROWN = new Color(204, 102, 0);
        /** Body's color (RGB) */
        private final Color GREEN = new Color(0, 254, 0);
        /** Tree balls' color (RGB) */
        private final Color RED = new Color(250, 0, 0);
    
        /** The tree's bounding rectangle */
        private Rectangle dimensions;
    
        /**
         * Creates a tree from the specified bounding box
         *
         * @param panel The panel to draw the object onto
         * @param dimensions The bounding box dimensions.
         */
        public Tree(JPanel panel, Rectangle dimensions) {
        super(panel);
    	this.dimensions = dimensions;
        }
    
        /**
         * Draws the tree.
         *
         * @param g The Graphics object on which we will paint
         */
        @Override
        public void draw(Graphics g) {
    	drawTrunk(g);
    	drawBody(g);
        }
    
        /**
         * Draws the trunk. For details on how the lengths are calculated
         *
         * @param g The Graphics object on which we will paint
         * @see gr.aueb.Tree the class description.
         */
        private void drawTrunk(Graphics g) {
    	/* Calculate the trunk rectangle first */
    	Rectangle r = new Rectangle();
    
    	r.x = (int) (dimensions.x + (dimensions.width
                        - dimensions.width * TRUNK_WIDTH_FACTOR) / 2);
    	r.y = (int) (dimensions.y + dimensions.height * BODY_HEIGHT_FACTOR);
    	r.width = (int) (dimensions.width * TRUNK_WIDTH_FACTOR);
    	r.height = (int) (dimensions.height * TRUNK_HEIGHT_FACTOR);
    
    	/* Draw it! */
    	g.drawRect(r.x, r.y, r.width, r.height);
    
    	/* Fill it with brown color */
    	Color c = g.getColor();
    	g.setColor(BROWN);
    	g.fillRect(r.x, r.y, r.width, r.height);
    	g.setColor(c); //Revert paint color to default
        }
    
        /**
         * Draws the body. For details on how the lengths are calculated
         *
         * @param g The Graphics object on which we will paint
         * @see gr.aueb.Tree the class description.
         */
        private void drawBody(Graphics g) {
            /* Create the polygon (triangle) to draw */
            Polygon p = new Polygon();
            p.addPoint(dimensions.x + dimensions.width / 2, dimensions.y);
            p.addPoint(dimensions.x,
                    (int) (dimensions.y + dimensions.height * BODY_HEIGHT_FACTOR));
            p.addPoint(dimensions.x + dimensions.width,
                    (int) (dimensions.y + dimensions.height * BODY_HEIGHT_FACTOR));
            /* Draw the body */
            g.drawPolygon(p);
    
            /* Fill it with green color */
            Color c = g.getColor();
            g.setColor(GREEN);
            g.fillPolygon(p);
            g.setColor(c); // Revert paint color to default
    
            /* Set Ornaments to the body. */
            drawTreeOrnaments(g);
        }
    
        /**
         * Draws the ornaments of the tree.
         * @param g The Graphics object on which we will paint
         * @param x The Abscissa of the part of the body to draw the ornament
         * @param y The Ordinate of the part of the body to draw the ornament
         */
        private void addTreeOrnament(Graphics g, int x, int y) {
            /* Draw Tree Ornament. */
            g.drawOval(x, y, 10, 10);
            /* Set color to Red. */
            g.setColor(RED);
            /* Fill Tree Ornament with color. */
            g.fillOval(x, y, 10, 10);
        }
    
        /**
         * Calls addTreeOrnament for specific locations on
         * the tree body.
         * @param g The Graphics object on which we will paint
         */
        private void drawTreeOrnaments(Graphics g) {
            /* yAxis of the body. */
            int yAxis = (int) (dimensions.y + dimensions.height * BODY_HEIGHT_FACTOR);
            /* Add ornament to down left. */
            addTreeOrnament(g, dimensions.x - 2, yAxis - 2);
            /* Add ornament to down right. */
            addTreeOrnament(g, dimensions.x + dimensions.width - 1, yAxis - 1);
            /* Add ornament to up left. */
            addTreeOrnament(g, dimensions.x + dimensions.width / 2 - 5 - 20, yAxis - 25);
            /* Add ornament to up right. */
            addTreeOrnament(g, dimensions.x + dimensions.width / 2 - 5 + 20,  yAxis - 25);
            /* Add ornament to middle. */
            addTreeOrnament(g,dimensions.x + dimensions.width / 2 - 5, yAxis - 65);
        }
    }
    

    SnowFlake

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Color;
    import java.awt.FontMetrics;
    import java.awt.Graphics;
    import javax.swing.JPanel;
    
    /**
     * A self-drawable 'snowflake' represented by a character. The move pattern and
     * character to be displayed is determined by subclasses.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @opt nodefillcolor white
     */
    public abstract class SnowFlake extends Drawable {
    
        /** The snowflake's background color. */
        private static final Color WHITE = new Color(255, 255, 255);
    
        /**
         * The 'x' current coordinate of the snowflake.
         */
        protected int coordX;
    
        /**
         * The 'y' current coordinate of the snowflake.
         */
        protected int coordY;
    
        /**
         * The character to be displayed as a snowflake
         */
        protected char displayChar;
    
        /**
         * Create a snowflake represented by a point-like character.
         *
         * @param panel The panel to draw the object onto
         */
        public SnowFlake(JPanel panel) {
            super(panel);
            coordX = (int) (bounds.width * Math.random()) + bounds.x;
            coordY = 0;
        }
    
        /**
         * Draw the snowflake and wrap around.
         *
         * @param g The Graphics object on which we will paint
         */
        @Override
        public void draw(Graphics g) {
            // Go back to the top when hitting the bottom
            if (coordY >= bounds.height + bounds.y)
                coordY = 0;
    
            // Draw the character in white
            g.setColor(WHITE);
            g.drawString((Character.valueOf(displayChar)).toString(),
            coordX, coordY);
        }
    }
    

    SlashSnowFlake

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Graphics;
    import javax.swing.JPanel;
    
    /**
     * A class that animates a slash on a canvas.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @opt nodefillcolor white
     */
    public class SlashSnowFlake extends SnowFlake {
    
        /**
         * Create a snowflake represented by a slash.
         *
         * @param panel The panel to draw the object onto
         */
        public SlashSnowFlake(JPanel panel) {
            super(panel);
            displayChar = '/';
        }
    
        /**
         * Display the slash on the drawing canvas. The slash alternates between
         * forward slash and backslash depending on the current 'y' coordinate.
         *
         * @param g The Graphics object on which we will paint
         */
        @Override
        public void draw(Graphics g) {
    
            /* / on even lines, \ on odd lines */
            displayChar = ((coordY % 2) == 0) ? '/' : '\\';
    
            /* Move by 0 to 10 pixels down*/
            coordY += (int) (Math.random() * 10);
    
            // Draw it through the superclass
            super.draw(g);
        }
    }
    

    PointSnowFlake

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import java.awt.Graphics;
    import javax.swing.JPanel;
    
    /**
     * A class that animates a point-like character on a canvas.
     * The character can be e.g. a . or a * or an o.
     *
     * @author Giorgos Gousios, Diomidis Spinellis
     * @opt nodefillcolor white
     */
    public class PointSnowFlake extends SnowFlake {
    
        /** The wieght of the snowflake. */
        int weight;
    
        /**
         * Create a snowflake represented by a point-like character.
         *
         * @param panel The panel to draw the object onto
         * @param c The character to draw
         * @param w The snowflake's weight
         */
        public PointSnowFlake(JPanel panel, char c, int w) {
            super(panel);
            displayChar = c;
            weight = w;
        }
    
        /**
         * Display the star onto the canvas. The star changes its 'x' coordinate,
         * depending on the 'y' coordinate.
         *
         * @param g The Graphics object on which we will paint
         */
        @Override
        public void draw(Graphics g) {
    
            // Move the snowflake left and right
            switch (coordY % 3) {
            case 1:
                coordX = coordX - 5;
                break;
            case 2:
                coordX = coordX + 5;
                break;
            default:
                break;
            }
    
            // Move down, based on the weight
            coordY += (int)(Math.random() * weight);
    
            // Draw it through the superclass
            super.draw(g);
        }
    }
    

    MidiPlayer

    
    /*-
     * Copyright 2005-2018 Diomidis Spinellis
     *
     *   Licensed under the Apache License, Version 2.0 (the "License");
     *   you may not use this file except in compliance with the License.
     *   You may obtain a copy of the License at
     *
     *       http://www.apache.org/licenses/LICENSE-2.0
     *
     *   Unless required by applicable law or agreed to in writing, software
     *   distributed under the License is distributed on an "AS IS" BASIS,
     *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     *   See the License for the specific language governing permissions and
     *   limitations under the License.
     */
    
    package gr.aueb.card;
    
    import javax.sound.midi.*;
    import java.io.InputStream;
    import java.io.IOException;
    
    /**
     * Play the specified MIDI file
     * Note:
     * For this to work you must ensure that the computer's mixer
     * is configured to play the software synhtesizer output.
     *
     * @author Diomidis Spinellis
     */
    public class MidiPlayer {
        /** The sequencer we are using to play the MIDI data. */
        static Sequencer sequencer = null;
    
        /** Constructor for playing the specified file. */
        MidiPlayer(String file) {
    	playFile(file);
        }
    
        /** Play the specified file. */
        public void playFile(String file) {
            InputStream midiFile = getClass().getResourceAsStream(file);
            try {
    	    if (sequencer == null)
    		sequencer = MidiSystem.getSequencer();
    	    else
    		end();
    	    sequencer.setSequence(MidiSystem.getSequence(midiFile));
                sequencer.open();
                sequencer.start();
            } catch(MidiUnavailableException e) {
                System.err.println("Midi device unavailable:" + e);
            } catch(InvalidMidiDataException e) {
                System.err.println("Invalid MIDI data:" + e);
            } catch(IOException e) {
                System.err.println("I/O error:" + e);
            }
        }
    
        /** Return true if the music is still playing. */
        public boolean isPlaying() {
    	return sequencer.isRunning();
        }
    
        /* Stop playing. */
        public void end() {
                sequencer.stop();
                sequencer.close();
    	    sequencer = null;
        }
    }
    

    Τεκμηρίωση

    Τα σχόλια μέσα στον κώδικα επιτρέπουν την αυτόματη δημιουργία της τεκμηρίωσης, με τη χρήση του προγράμματος javadoc.
    Τεκμηρίωση σε μορφή XML

    Προαιρετική άσκηση

    Με βάση τον κώδικα της κάρτας υλοποιήστε ένα παιγνίδι (π.χ. απόφυγε το χιόνι, ή μάζεψε τις μπάλες, ή πιάσε τον τάρανδο, κ.λπ.).

    Πληροφορίες για την άσκηση

    Συναρτήσεις και ροές

    Συναρτησιακός προγραμματισμός

    Εκφράσεις λάμδα

    (a) -> {  return a * a; }
    (a, b) -> {  return a + b; }
    () -> {  return true; }
    

    Διαθέσιμοι τύποι

    Το πακέτο java.util.function ορίζει μια σειρά από διεπαφές FunctionalInterface:

    Οι παραπάνω μπορούν κατά περίπτωση να εξειδικευτούν παραπάνω με ένα από τα προθέματα: Bi (δέχεται δύο ορίσματα)· Int, Long, Double (τύπος ορίσματος)· Το (τύπος επιστροφής).

    Μέθοδοι σε συναρτήσεις

    Οι παρακάτω μέθοδοι είναι διαθέσιμες ανάλογα με το αντικείμενο.

    Παράδειγμα λάμδα

    import java.util.function.Function;
    
    class Lambda {
        public static void main(String args[]) {
            // Assign lambda to variable
            Function<Integer, Integer> square = (a) -> a * a;
            // Apply function to value
            System.out.println(square.apply(2));
    
            // Pass function to method and obtain function result
            Function<Integer, Integer> fourthPower = square.compose(square);
            System.out.println(fourthPower.apply(2));
        }
    }
    

    Μέθοδοι ως συναρτήσεις

    Μέθοδοι που ικανοποιούν μια διεπαφή Functional μπορούν να χρησιμοποιηθούν ως τέτοιες με τη χρήση του συμβόλου ::.
    import java.util.function.UnaryOperator;
    import java.math.BigInteger;
    
    // Methods compatible with a functional interface
    class FunctionalFactorial {
        public static BigInteger factorial(BigInteger i) {
            if (i.equals(BigInteger.ZERO))
                return BigInteger.ONE;
            else
                return i.multiply(factorial(i.subtract(BigInteger.ONE)));
        }
    
        public BigInteger instanceFactorial(BigInteger n) {
            return factorial(n);
        }
    
        // Prints 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
        public static void main(String args[]) {
            UnaryOperator<BigInteger> f;
    
            f = FunctionalFactorial::factorial;
            System.out.println(f.apply(new BigInteger("100")));
    
            f = new FunctionalFactorial()::instanceFactorial;
            System.out.println(f.apply(new BigInteger("100")));
        }
    }
    

    Παράδειγμα σύνθεσης μεθόδων

    import java.util.function.DoubleUnaryOperator;
    import java.util.function.Function;
    import static java.lang.Math.abs;
    import static java.lang.Math.PI;
    
    class Inverse {
        public static void main(String args[]) {
            Function<DoubleUnaryOperator, DoubleUnaryOperator> inverse =
                f -> x -> 1. / f.applyAsDouble(x);
    
    	DoubleUnaryOperator cot = inverse.apply(Math::tan); // συνεφαπτομένη
    	DoubleUnaryOperator sec = inverse.apply(Math::cos); // τέμνουσα
    	DoubleUnaryOperator csc = inverse.apply(Math::sin); // συντέμνουσα
    
            final double EPSILON = 1e-15;
            assert abs(sec.applyAsDouble(0) - 1) < EPSILON;
            assert abs(csc.applyAsDouble(PI / 2) - 1) < EPSILON;
            assert abs(cot.applyAsDouble(PI / 4) - 1) < EPSILON;
        }
    }
    

    Ροές

    Μια ροή (stream) είναι μια επεξεργάσιμη ακολουθία ενός απροσδιόριστου αριθμού στοιχείων. Σε σχέση με μια συλλογή η ακολουθία έχει τις παρακάτω ιδιότητες.

    Τύποι ροών

    Ο τύπος Optional

    Η παραμετρική κλάση java.util.Optional περιέχει μια τιμή τύπου T που μπορεί και να απουσιάζει.

    Χρήσιμες μέθοδοι

    Πηγές ροών

    Ενδιάμεση επεξεργασία ροών

    Τελική επεξεργασία ροών

    Παράδειγμα: Λέξεις κειμένου

    /*
     * Output ordered list of a file's unique words
     */
    
    import java.nio.file.Files;
    import java.nio.file.Paths;
    import java.util.stream.Stream;
    import java.io.IOException;
    
    class UniqueWords {
        public static void main(String args[]) {
            if (args.length != 1) {
                System.err.println("Usage: UniqueWords file");
                System.exit(1);
            }
    
            try {
                Files
                    .lines(Paths.get(args[0]))
                    .flatMap(line -> Stream.of(line.split("\\W+")))
                    .sorted()
                    .distinct()
                    .filter((x) -> x.length() > 0)
                    .forEach(System.out::println);
            } catch (IOException e) {
                System.err.println("Error reading line: " + e.getMessage());
                System.exit(1);
            }
        }
    }
    

    Παράδειγμα: εκτίμηση πληθάριθμου

    
    /**
     * Estimate the number of distinct elements in a data stream
     * (F0 estimation problem) based on the algorithm published in the
     * Proceedings of 30th Annual European Symposium on Algorithms (ESA 2022)
     * https://doi.org/10.48550/arXiv.2301.10191
     */
    
    import java.util.HashSet;
    import java.util.Random;
    import java.util.Set;
    import java.util.function.Function;
    import java.util.stream.IntStream;
    import java.util.stream.Stream;
    
    public class F0Estimator {
    
        /**
         * Estimate number of unique elements in the passed stream
         * @param storageSize The storage to use
         */
        public static <T> long estimateF0(Stream<T> stream, int storageSize) {
            final float LOAD_FACTOR = 0.5f;
    
            // Probability to add an element; in an array as a workaround
            // for using it in a lammbda expression
            final double[] p = {1.0};
            Set<T> X = new HashSet<>(storageSize , LOAD_FACTOR);
            Random random = new Random();
    
            stream.forEach(element -> {
                if (random.nextDouble() < p[0])
                    X.add(element);
                else
                    X.remove(element);
    
                if (X.size() >= storageSize) {
                    // Randomly keep each element in X with probability 1/2
                    X.removeIf(e -> random.nextDouble() < 0.5);
                    p[0] /= 2;
                    if (X.size() >= storageSize) {
                        throw new IllegalStateException("Threshold exceeded after sampling");
                    }
                }
            });
    
            return (long) (X.size() / p[0]);
        }
    
        public static void main(String[] args) {
            // Create a Random instance
            Random random = new Random();
    
            // Create a stream of 1e9 random integers with 65536 distinct values
            Stream<Integer> stream = IntStream
                .generate(random::nextInt).limit(1_000_000_000)
                .map(i -> i & 0xffff)
                .boxed();
    
            final int STORAGE_SIZE = 1000;
    
            long uniqueCount = estimateF0(stream, STORAGE_SIZE);
            System.out.println("Estimated number of unique elements: " + uniqueCount);
        }
    }
    

    Η μέθοδος Newton-Raphson

    Η προσεγγιστική μέθοδος Newton-Raphson μας επιτρέπει να βρούμε τη ρίζα οποιασδήποτε πραγματικής συνάρτησης. Η μέθοδος Newton-Raphson

    Τετραγωνική ρίζα με Newton-Raphson

    Παράδειγμα: Υλοποίηση √2 με NR

    Το παρακάτω παράδειγμα υπολογίζει τη √2 δημιουργώντας μια άπειρου μήκους ακολουθία με διαδοχικά καλύτερες προσεγγίσεις.

    import java.util.Optional;
    import java.util.function.Predicate;
    import java.util.function.DoubleFunction;
    import java.util.stream.Stream;
    
    
    /** Find a square root using the Newton-Raphson approximation */
    class SquareRoot {
    
        /** Obtain successive approximations of a function's root using the
         * Newton-Raphson method. */
        static class NewtonRaphson {
            /** f(x) and f'(x) */
            DoubleFunction fx, fdx;
    
            NewtonRaphson(DoubleFunction fx, DoubleFunction fdx) {
                this.fx = fx;
                this.fdx = fdx;
            }
    
            /** Return next approximation, given the previous one */
            Double nextApproximation(double previous) {
                // xₙ₊₁ = xₙ - f(xₙ) / f′(xₙ)
                return previous - (double)fx.apply(previous) / (double)fdx.apply(previous);
            }
        }
    
        /** Test whether successive parts of a series differ more than a value */
        static class NotWithin implements Predicate<Double> {
            /** Previous value in series */
            Optional<Double> previous = Optional.empty();
            /** Difference value above which the test method returns true */
            Double epsilon;
    
            NotWithin(double d) {
                epsilon = d;
            }
    
            /**
             * Return true if successive parts of the series do not differ by
             * less than the specified epsilon.
             */
            @Override
            public boolean test(Double d) {
                boolean r;
    
                if (previous.isPresent())
                    r = (Math.abs(previous.get() - d) > epsilon);
                else
                    r = true;
                previous = Optional.of(d);
                return r;
            }
        }
    
        public static void main(String args[]) {
            final double SQRT_TO_FIND = 2;
            DoubleFunction fx = (x -> x * x - SQRT_TO_FIND); // f(x) = x² - α
            DoubleFunction fdx = (x -> 2 * x); // f'(x) = 2x
            var rootTwo = new NewtonRaphson(fx, fdx);
            var greaterThanEpsilon = new NotWithin(1e-15);
    
    	// SQRT_TO_FIND is also our first approximation
            System.out.println(Stream.iterate(SQRT_TO_FIND, rootTwo::nextApproximation)
                .dropWhile(greaterThanEpsilon)
                .findFirst()
                .get());
        }
    }
    

    Άσκηση: συναρτήσεις και ροές

    Άσκηση 17

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

    Ανάπτυξη διαδικτυακών εφαρμογών

    Περιεχόμενα

    Το μοντέλο αναφοράς OSI

    Φυσικό επίπεδο

    Επίπεδο σύνδεσης

    Επίπεδο δικτύου

    Πρωτόκολλα διαδικτύου: IPv4, IPv6, IPsec, ICMP

    IPv4

        0                   1                   2                   3   
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |Version|  IHL  |Type of Service|          Total Length         |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Identification        |Flags|      Fragment Offset    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Time to Live |    Protocol   |         Header Checksum       |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                       Source Address                          |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Destination Address                        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Options                    |    Padding    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    Επίπεδο μεταφοράς

    Πρωτόκολλα διαδικτύου: TCP, UDP, …

    TCP

        0                   1                   2                   3   
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |          Source Port          |       Destination Port        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                        Sequence Number                        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Acknowledgment Number                      |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |  Data |           |U|A|P|R|S|F|                               |
       | Offset| Reserved  |R|C|S|S|Y|I|            Window             |
       |       |           |G|K|H|T|N|N|                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |           Checksum            |         Urgent Pointer        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                    Options                    |    Padding    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                             data                              |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    Επίπεδο συνόδου

    Πρωτόκολλα διαδικτύου: Sockets API

    Επίπεδο παρουσίασης

    (Σε παρένθεση σχετικά πρωτόκολλα του διαδικτύου)

    Επίπεδο εφαρμογής

    (Σε παρένθεση σχετικά πρωτόκολλα του διαδικτύου)

    Αρχιτεκτονική του παγκόσμιου ιστού

    Προσδιορισμός στοιχείων με URI

    URI = scheme ":" ["//" authority] path ["?" query] ["#" fragment]
    
    index.html
    https://www.dmst.aueb.gr/dds/
    https://www.google.com/search?q=AUEB
    https://www.aueb.gr/Hmerologio.pdf#page=3
    

    Το πρωτόκολλο HTTP

    Το πρωτόκολλο HTTP υποστηρίζει τις παρακάτω μεθόδους επικοινωνίας:

    Παράδειγμα HTTP

    Αίτηση

    GET /dds/ HTTP/1.1
    Host: www2.dmst.aueb.gr
    User-Agent: curl/7.71.1
    Accept: */*
    

    Απάντηση

    HTTP/1.1 200 OK
    Date: Sun, 08 Jan 2023 10:00:32 GMT
    Server: Apache/1.3.33 (Linux/RHEL)
    Content-Location: index.en.html
    Vary: negotiate,accept-language,accept-charset
    TCN: choice
    Last-Modified: Fri, 30 Dec 2022 21:03:52 GMT
    Accept-Ranges: bytes
    Content-Length: 22599
    Content-Type: text/html
    Content-Language: en
    

    Αίτημα HTTP στη Java

    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.IOException;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.MalformedURLException;
    
    public class UrlRetriever {
        public static void main(String[] args) {
    	if (args.length != 1) {
    	    System.err.println("Usage: UrlRetriever URL");
    	    System.exit(1);
    	}
    
            URL url = null;
            try {
                // Make a request to the specified URL
                url = new URL(args[0]);
            } catch (MalformedURLException e) {
                    System.err.println("Invalid URL: " + e);
                    System.exit(1);
            }
    
            HttpURLConnection connection = null;
            try {
                connection = (HttpURLConnection)url.openConnection();
            } catch (ClassCastException e) {
                System.err.println("Specified protocol is not HTTP");
                System.exit(1);
            } catch (IOException e) {
                System.err.println("Connection error: " + e);
                System.exit(1);
            }
    
            try {
                connection.setRequestMethod("GET");
    
                // Get the response from the server
                int status = connection.getResponseCode();
                BufferedReader in = new BufferedReader(
                    new InputStreamReader(connection.getInputStream()));
                int c;
                StringBuilder content = new StringBuilder();
                while ((c = in.read()) != -1) {
                    content.append((char)c);
                }
                in.close();
    
                // Print the response
                System.out.println(content.toString());
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    Χαρακτηριστικά της αρχιτεκτονικής REST

    Παραδείγματα αιτήσεων REST

    java UrlRetriever https://www.gutenberg.org/cache/epub/1342/pg1342.txt
    
    curl 'https://aviationweather.gov/api/data/metar?ids=LGAV&hours=48'
    curl -v -k "https://www.wikidata.org/w/api.php?action=wbgetentities&format=json&titles=Moon&sites=enwiki" |  jq .
    curl -A "Mozilla/5.0" 'http://telematics.oasa.gr/api/?act=getBusLocation&p1=1822'
    curl -LH "Accept: application/vnd.crossref.unixref+xml;q=1, application/rdf+json;q=0.5" https://doi.org/10.1126/science.169.3946.635
    
    curl --request POST -H "Authorization: Bearer $ROBBIE_API_KEY" --url http://robbie.dmst.aueb.gr:50135/completion --header "Content-Type: application/json" --data '{ "prompt": "You are a helpful Assistant responding to User queries. User: Which city is the capital of Germany?\nAssistant: Berlin\nWhich city is the capital of Greece?"}'
    
    curl https://api.openai.com/v1/engines/davinci/completions \
      -X POST \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer $OPENAI_API_KEY" \
      -d '{
        "prompt": "I can convert a String into an int in Java program by ",
        "max_tokens": 50
      }'
    

    Εξυπηρετητής ώρας HTTP στη Java

    import java.io.IOException;
    import java.io.OutputStream;
    import java.net.InetSocketAddress;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    
    import com.sun.net.httpserver.HttpExchange;
    import com.sun.net.httpserver.HttpHandler;
    import com.sun.net.httpserver.HttpServer;
    
    public class TimeServer {
        static class GetHandler implements HttpHandler {
            @Override
            public void handle(HttpExchange exchange) throws IOException {
    
                var calendar = Calendar.getInstance();
                var dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss\n");
                byte[] response = dateFormat.format(calendar.getTime()).getBytes();
    
                // Set the response header and status code
                exchange.sendResponseHeaders(200, response.length);
    
                // Get the response body output stream
                OutputStream responseBody = exchange.getResponseBody();
    
                System.out.print(exchange.getRemoteAddress());
                responseBody.write(response);
                responseBody.close();
            }
        }
    
        public static void main(String[] args) throws Exception {
            // Create a server on port 8000
            HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
    
            server.createContext("/", new GetHandler()); // "GET /" handler
    
            server.start(); // Start serving requests
        }
    }
    

    Διαδικτυακές εφαρμογές στην πράξη

    Άσκηση: Επικοινωνία Πελάτη-Εξυπηρετητή

    Άσκηση 18

    Μπορείτε να κατεβάσετε το αντίστοιχο αρχείο και να στείλετε τους βαθμούς σας από τους δεσμούς που βρίσκονται στη σελίδα των ασκήσεων.

    Βιβλιογραφία

  • Rogers Candenhead. Πλήρες Εγχειρίδιο της Java 12. 8η Έκδοση. Εκδόσεις X. Γκιούρδα, 2023. Κεφ. 17, 20.
  • Ατομικές ασκήσεις και συμμετοχή

    Αρχείο των ασκήσεων και ηλεκτρονική παράδοση

    Οδηγίες

    Οδηγίες για την εκτέλεση, βαθμολογία και παράδοση των ασκήσεων υπάρχουν στην εισαγωγή του μαθήματος.

    Προθεσμίες παράδοσης

    Η ώρα παράδοσης είναι πάντα τοπική ώρα Ελλάδος.

    Άσκηση Ημερομηνία και ώρα παράδοσης
    1 Sun Oct 13 23:59:59 2024
    2 Sun Oct 20 23:59:59 2024
    3 Sun Oct 27 23:59:59 2024
    4 Sun Nov 3 23:59:59 2024
    5 Sun Nov 10 23:59:59 2024
    6 Sun Nov 24 23:59:59 2024
    16 Sun Nov 24 23:59:59 2024
    12 Fri Dec 6 23:59:59 2024
    9 Sun Dec 8 23:59:59 2024
    7 Tue Dec 10 23:59:59 2024
    8 Sun Dec 15 23:59:59 2024
    10 Sun Jan 5 23:59:59 2025

    Συχνές ερωτήσεις και απαντήσεις (FAQ)

    Περιεχόμενα

    Που θα βρω τεκμηρίωση για τις κλάσεις που υποστηρίζει η Java;

    Στον αντίστοιχο ιστότοπο της Oracle (https://docs.oracle.com/en/java/javase/index.html).

    Πως θα ρυθμίσω το Visal Studio Code για να παραδώσω τον τρόπο επίλυσης των ασκήσεων

    Διαβάστε την τεκμηρίωση που παραπέμπεται στη σχετική σελίδα των σημειώσεων.

    Για κάποιο πολύ σοβαρό λόγο δεν μπόρεσα να παραδώσω την άσκηση στην ώρα της. Μπορώ να πάρω μια παράταση;

    Η προθεσμία παράδοσης της κάθε άσκησης είναι η τελευταία ημερομηνία στην οποία μπορείτε να παραδώσετε την άσκηση χωρίς επιπτώσεις στο βαθμό της. Καλό είναι να την παραδίδετε πριν το επόμενο μάθημα έτσι ώστε
    1. να μπορέσετε να ασχοληθείτε με την καινούρια όταν αυτή ανακοινωθεί
    2. να έχετε ένα περιθώριο χρόνου για να καλύψετε προσωπικά ή τεχνικά προβλήματα που μπορεί να εμφανιστούν
    Σε περίπτωση που δεν μπορέσατε να παραδώσετε την άσκηση μέσα στην προθεσμία, θα πρέπει να την παραδώσετε το συντομότερο δυνατό για να έχετε τη μικρότερη δυνατή επιβάρυνση στο βαθμό. Για λόγους διαφάνειας και αποτελεσματικότητας στη βαθμολόγηση αυτή γίνεται αυτόματα χωρίς να υπάρχει πρόβλεψη για εξαιρέσεις. Ο αριθμός όμως των ασκήσεων σας επιτρέπει να καλύψετε τη διαφορά στις επόμενες ασκήσεις.

    Πότε πρέπει να κατεβάζω ενημερωμένη έκδοση του αρχείου Jarpeb.jar;

    Στη σελίδα αυτή εμφανίζεται η τρέχουσα έκδοση και η ημερομηνία τελευταίας αλλαγής της κάθε άσκησης. Αν έχετε κατεβάσει το αρχείο πριν από την ημερομηνία τελευταίας αλλαγής της άσκησης που σας ενδιαφέρει ή αν η έκδοση της άσκησης στον υπολογιστή σας είναι προγενέστερη αυτής που περιέχει το αρχείο τότε θα πρέπει να κατεβάσετε νεώτερη έκδοση του αρχείου. Για να μπορέσετε να δείτε την έκδοση της άσκησης που έχετε στον υπολογιστή σας μπορείτε να τρέξετε την εντολή
    java -jar Exercise.jar -v <κωδικός μαθήματος> <κωδικός άσκησης> <ΑΜ φοιτητή>
    

    Μπορώ να ασχοληθώ με ασκήσεις που δεν έχουν ανακοινωθεί ακόμα;

    Ναι, αλλά με δική σας ευθύνη. Ασκήσεις που δεν έχουν ανακοινωθεί επίσημα στο μάθημα και για τις οποίες δεν έχει δωθεί ημερομηνία παράδοσης μπορεί να μην έχουν ελεγχθεί πλήρως, να βρίσκονται ακόμα υπό ανάπτυξη και να περιέχουν λάθη στην εκφώνηση και στη βαθμολόγηση. Ο βαθμός που θα καταχωρήσετε ισχύει, αλλά είναι πιθανό κατά την επίλυση να συναντήσετε προβλήματα που θα έχουν διορθωθεί μέχρι την επίσημη ανακοίνωση της άσκησης. Επίσης, σε ασκήσεις που δεν έχουν ανακοινωθεί, μπορεί οι βοηθοί του μαθήματος και οι επιβλέποντες στα εργαστήρια να μην μπορούν να σας βοηθήσουν.

    Γίνεται να υπολογιστούν στο μάθημα οι βαθμοί των ασκήσεων που είχα λάβει την περασμένη χρονιά;

    Δυστυχώς όχι, αυτό δε γίνεται. Κάθε χρόνο οι εκφωνήσεις των ασκήσεων και οι κωδικοί ελέγχου αλλάζουν. Η βαθμολογία των ασκήσεων ισχύει μόνο για την εξεταστική περίοδο του χειμερινού εξαμήνου και την πρόσθετη εξεταστική περίοδο του Σεπτεμβρίου του ίδιου έτους με αυτό στο οποίο έγιναν οι ασκήσεις.

    Ποιες είναι οι ημερομηνίες παράδοσης των ασκήσεων;

    Οι ημερομηνίες παράδοσης εμφανίζονται στη σελίδα αυτή. Για ασκήσεις που δεν έχουν ανακοινωθεί ακόμα σε μάθημα η ημερομηνία παράδοσης είναι ανοιχτή και συνεπώς δεν εμφανίζεται.

    Τι ρόλο παίζει το πεδίο "σχόλια" στη σελίδα παράδοσης της βαθμολογίας; Δεν έχω λάβει απάντηση σε κάποιο σχόλιο που είχα κάνει.

    Τα σχόλια απλώς καταγράφονται στη βάση δεδομένων της βαθμολογίας. Στην καλύτερη περίπτωση μπορεί να τα διαβάσει ο διδάσκων κατά τον υπολογισμό των βαθμών. Αν θέλετε απάντηση σε κάποιο σχόλιο να στείλετε κατευθείαν email στο διδάσκοντα μια και στη σελίδα παράδοσης δεν έχετε τη δυνατότητα να καταχωρήσετε τη διεύθυνσή σας για να μπορέσετε να λάβετε απάντηση.

    Πως ελέγχεται το ποιος υλοποιεί και ποιος καταχωρεί την άσκηση;

    Το πρόγραμμα Jarpeb καταχωρίζει στοιχεία που έχουν σχέση με την άσκηση, τον ΑΜ του φοιτητή ή της φοιτήτριας, τον τρόπο επίλυσης (όπως καταγράφεται από το Visual Studio Code) και το βαθμό. Επιπλέον κατά την καταχώρηση ο βαθμός και ο ΑΜ του φοιτητή συνδέονται με τη διεύθυνση IP του μηχανήματος που έκανε την καταχώρηση. Με τη χρήση στοιχείων ελέγχου οι διευθύνσεις IP αντιστοιχούνται σε συγκεκριμένους φοιτητές. Όπου διαπιστωθούν στοιχεία που δημιουργούν την εντύπωση πως μπορεί στην υλοποίηση να έχει αναμιχθεί τρίτος ή να έχει χρησιμοποιηθεί λογισμικό παραγωγικής τεχνητής νοημοσύνης, ο αντίστοιχος φοιτητής ή φοιτήτρια μπορεί να κληθεί για συμπληρωματική εξέταση.

    Επιτρέπεται η υλοποίηση και καταχώρηση ασκήσεων σε υπολογιστές εκτός του εργαστηρίου;

    Ναι, αλλά η υλοποίηση πρέπει να γίνεται από τον ίδιο το φοιτητή — απαγορεύεται αυστηρά η κάθε συνεργασία. Σε περιπτώσεις που έχουν βρεθεί στοιχεία που δείχνουν πως έχει υπάρξει συνεργασία, έχει ζητηθεί απο τους φοιτητές να επαναλάβουν την άσκηση στο εργαστήριο. Σε περίπτωση υποτροπής όλες οι αντίστοιχες ασκήσεις μηδενίζονται στο τέλος του χρόνου. Επίσης, δε μπορεί να σας παρασχεθεί βοήθεια σχετικά με την εγκατάσταση και διαμόρφωση του περιβάλλοντος εργασίας της Java στον υπολογιστή σας - ειδικά για το θέμα της εμφάνισης των ελληνικών χαρακτήρων στην οθόνη σας.

    Έχω καταχωρήσει το βαθμό μου αλλά δε βλέπω ούτε το βαθμό ούτε την καταχώρηση στις αντίστοιχες σελίδες. Γιατί;

    Ο έλεγχος των καταχωρήσεων και η ενημέρωση των βαθμών γίνονται σε περιοδικά διαστήματα. Κοιτάξτε την ημερομηνία τελευταίας ενημέρωσης που εμφανίζεται στο κάτω μέρος της σελίδας. Αν είναι μικρότερη από την ημερομηνία που καταχωρήσατε την άσκηση, τότε σωστά δεν εμφανίζονται τα στοιχεία της καταχώρησής σας.

    Έχω καταχωρήσει το βαθμό μου παρατηρώ πως η εκφώνηση της άσκησης έχει αλλάξει. Τι πρέπει να κάνω;

    Οι ασκήσεις που καταχωρούνται με επιτυχία κατοχυρώνονται. Δε χρειάζεται να κάνετε απολύτως τίποτα, εκτός αν θέλετε να ξανακάνετε την άσκηση με τη νέα εκφώνηση για να την καταλάβετε καλύτερα ή για να πάρετε υψηλότερο βαθμό.

    Γιατί σε υπολογιστή με λειτουργικό σύστημα Windows η εκφώνηση εμφανίζεται με περίεργους χαρακτήρες;

    Δοκιμάστε να δώσετε την εντολή
    
    chcp 737
    
    πριν την εκτέλεση του Exercise.jar.

    Δοκιμάστε να αλλάξετε τη γραμματοσειρά του παραθύρου σε Lucida Console (κάντε κλικ πάνω αριστερά - Properties - Font).

    Αν ο υπολογιστής σας τρέχει Windows 7–10 με αγγλικές ρυθμίσεις, θα πρέπει να τις ρυθμίσετε στα ελληνικά, με την παρακάτω διαδικασία:
    Control Panel - Region (and Language) - Administrative - Change System Locale και από εκεί επιλέγουμε "Greek (Greece)".

    Σε υπολογιστή με λειτουργικό σύστημα Windows και Internet Explorer το αρχείο Exercise.jar σώζεται ως Exercise.zip. Τι να κάνω;

    Το πρόβλημα οφείλεται σε δυσλειτουργία (bug) του Internet Explorer. Κατά τη διαδικασία της φύλαξης επιλέξτε από την επιλογή "Save as type" το "All Files" και βεβαιωθείτε πως στην επιλογή "File name" γράφει "Exercise.jar". Εναλλακτικά, χρησιμοποιείστε έναν άλλο φυλλομετρητή όπως τον Firefox (http://www.mozilla.com/en-US/firefox/).

    Γιατί σε υπολογιστή με λειτουργικό σύστημα Linux η εκφώνηση εμφανίζεται με περίεργους χαρακτήρες;

    Καταρχήν, μπράβο που πειραματίζεστε με διαφορετικά λειτουργικά συστήματα! Δοκιμάστε να δώσετε την εντολή
    
    export LANG=el_GR
    
    πριν την εκτέλεση του Exercise.jar.

    Τι να κάνω αν μου εμφανιστεί το μήνυμα «Δεν βρέθηκε εγκαταστημένος μεταγλωττιστής»;

    Φροντίστε να θέσετε σωστά τις μεταβλητές περιβάλλοντος, όπως αναφέρεται στον οδηγό των ασκήσεων (https://docs.google.com/document/d/1-7XbmxX5ZhTrxFEAcoQcxQdqi2cnGeun/view).

    Τι να κάνω αν μου εμφανιστεί το μήνυμα «Can not find an installed compiler»;

    Φροντίστε να θέσετε σωστά τις μεταβλητές περιβάλλοντος, όπως αναφέρεται στον οδηγό των ασκήσεων (https://docs.google.com/document/d/1-7XbmxX5ZhTrxFEAcoQcxQdqi2cnGeun/view).

    Γιατί ο κωδικός που καταχώρισα δεν έγινε δεκτός από το σύστημα;

    1. Βεβαιωθείτε πως τρέχετε την έκδοση 1.7 της Java ή νεώτερη (βλ. προηγούμενη απάντηση).
    2. Βεβαιωθείτε πως τρέχετε τη φετινή έκδοση του συστήματος Jarpeb. Οι κωδικοί ασκήσεων του προηγούμενου χρόνου δεν ισχύουν.

      Μπορείτε να εκτελέσετε την εντολή

      
      java -jar Exercise.jar -version
      
      για να δείτε την έκδοση του συστήματος που έχετε στα χέρια σας. Η ημερομηνία της έκδοσης δεν πρέπει να είναι παλαιότερη από το Σεπτέμβριο του αντίστοιχου ακαδημαϊκού έτους.

    Σωστά καταχωρημένες ασκήσεις

    Χρονοσφραγίδα ΑΜ Άσκηση Βαθμός Διεύθυνση IP Αναγνωριστικό
    2024-12-04T18:57:11 8230059 9 10 [...].212.190.[...] 000B4D20EB8F456586FDBF92EB4373BC
    2024-11-30T22:30:35 8220044 12 9 [...].203.70.[...] 002F6AC2D6F94C4695E41187D6FAE7E5
    2024-11-23T16:14:19 8230138 6 10 [...].4.87.[...] 0035CB8E853741B59EFB1EF17F447EDB
    2024-11-19T14:56:44 8230036 16 10 [...].74.8.[...] 003F8EE1ED3444D2AB5A9753F4BB6F3B
    2024-12-06T13:55:35 8230098 7 10 [...].58.196.[...] 004963093C644C88B288180A8AAED4DA
    2024-12-05T23:48:53 8220148 9 10 [...].86.10.[...] 0053164E640F41DAA9E95DBB38E26F70
    2024-12-21T01:14:52 8230063 10 6 [...].242.186.[...] 006581D3C44A4AA38558D59D49C7FAFD
    2024-10-16T22:03:40 8230154 3 10 [...].92.162.[...] 006EFADB42874B2F92D1AE7F9A7891E6
    2024-12-18T14:44:44 8230027 8 10 [...].26.75.[...] 0083064B24144DDEA203434F34E41BF8
    2024-10-10T02:37:31 8230129 1 10 [...].65.88.[...] 00BE1C52390243D7B5E2B844FC2D49F5
    2024-10-16T19:49:19 8220086 1 8 [...].168.0.[...] 00EFBF669EB848B2BFF34B2CC569D937
    2024-11-28T17:33:27 8200171 10 8 [...].86.179.[...] 00FCFAD345DB4746B90356ECBF4AE5B3
    2024-12-14T14:32:24 8230163 13 10 [...].242.187.[...] 011EBBF00F084DF3A5BA59509A689F42
    2024-11-27T21:41:08 8230091 12 10 [...].6.160.[...] 012963C02DC341B6BC7AFB9AEDF649A6
    2024-11-02T15:29:01 8230040 4 10 [...].55.80.[...] 013E7AC462954B2787528BF9CDA84E67
    2024-12-15T20:42:21 8230019 8 6 [...].86.152.[...] 016186E1AFE64CAEAD97044FDDB38338
    2024-11-02T18:10:12 8200168 1 8 [...].177.150.[...] 0165239F1DA44D7C81002A478489FD4E
    2024-11-02T13:58:16 8230151 4 10 [...].225.135.[...] 016EB0975CB24C98A1639C6986D92C0D
    2024-10-25T21:30:13 8230164 4 10 [...].167.110.[...] 017B09EE71A9444A86378C1083F55AE4
    2024-12-21T00:43:32 8220228 10 10 [...].92.94.[...] 0196253180B4415AA270228F2186A1E0
    2024-10-15T19:05:04 8230014 2 9 [...].49.236.[...] 019856DB705F4CC9A3214ED5EA47AE27
    2024-12-12T15:50:37 8230052 8 10 [...].38.25.[...] 01B1C59C631545D19B06F18D26A07C20
    2024-11-24T17:41:28 8230147 16 10 [...].106.14.[...] 01B6F603E0C249BDAC3C9D2577B4D90B
    2024-11-28T13:31:49 8220221 11 2 [...].66.136.[...] 01B759B8DA484E47B364496732B9C2C3
    2024-11-10T22:03:17 8220145 7 10 [...].87.88.[...] 01F92DFB910241B7AD09C7226A0DE4FB
    2024-10-20T14:04:51 8220071 4 10 [...].74.158.[...] 020120A5BB5C48CB867DC0DE52F60F1B
    2024-12-12T01:08:45 8230083 8 10 [...].130.27.[...] 0219BC2D9EAB46E2B08ABCDA77CF701D
    2024-11-02T16:33:36 8230161 4 10 [...].58.226.[...] 021D4952A6E140C082A7951C273483E2
    2024-10-26T17:03:17 8210220 3 10 [...].217.175.[...] 02342DC9D1714CF09490E58C328B95D7
    2024-11-16T15:49:36 8150025 3 10 [...].66.136.[...] 023C37A154794E7B9B164B164CC38C94
    2024-12-15T19:38:45 8230044 8 10 [...].190.4.[...] 026F34990C754812B6A5E63A208C55A7
    2024-10-28T20:23:57 8230001 4 10 [...].246.142.[...] 02735151024B4EAC994B250B214C888B
    2024-10-23T23:16:20 8230023 3 10 [...].58.194.[...] 02E753E0B35C42FAAD49A8A41A7EA07F
    2024-11-05T12:39:23 8170204 2 8 [...].65.116.[...] 02FA876A7794498CA61F8443610D571D
    2024-12-15T16:13:04 8230145 8 10 [...].84.161.[...] 02FD51CDF8EC48348649653361E18E0A
    2024-10-28T00:18:47 8220211 1 10 [...].168.2.[...] 02FE72C6ECB34ED1A958F5BBC360FA3E
    2024-11-17T15:40:21 8230094 16 10 [...].217.165.[...] 03162C6BD0204DCFA50A14738E17FE88
    2024-11-24T23:06:38 8220025 16 10 [...].38.100.[...] 03263EC711354C4186561F10AAC44F1A
    2024-10-31T14:14:57 8230150 2 10 [...].203.234.[...] 032A92E016ED4A05A54295BCF15DAD63
    2024-12-08T19:37:14 8230123 9 10 [...].71.227.[...] 0335209E42FF444589F97842145400C8
    2024-10-13T16:28:45 8230111 1 10 [...].103.189.[...] 035C9D682D9941EF83F187E478D82ED5
    2024-11-24T22:08:24 8230152 16 10 [...].65.18.[...] 0364DF501D06494DA4F604A66AA6F9B4
    2024-12-16T20:15:20 8230098 10 10 [...].4.69.[...] 036DF562E182438CBAB7C0F7F8F0FB44
    2024-10-10T00:39:51 8220057 1 10 [...].217.161.[...] 0389A0A03A034CC78677F138F565DC6D
    2024-12-03T01:10:54 8230117 12 8 [...].237.6.[...] 03A46F5620A84365B200AC5CE7D22706
    2024-10-12T16:41:10 8220149 10 10 [...].168.0.[...] 03DC297DD516446EB200B24CCBE6279C
    2024-12-17T23:19:34 8220136 8 7 [...].202.124.[...] 04259B8AAA984950A83F701E9A6C9926
    2024-10-26T23:09:12 8230023 4 8 [...].177.132.[...] 042AC61140E54FACB563BBF6D39AEBDB
    2024-11-22T21:16:11 8230001 16 10 [...].4.158.[...] 043FD147BEBC4059AA23D75D62C1C75A
    2024-12-03T22:16:28 8230129 12 6 [...].65.88.[...] 04555396514D42C8A2F64C40B459A10A
    2024-10-13T21:55:27 8200095 1 10 [...].168.0.[...] 04713B3BB15240049927BFEA4D86A2A2
    2024-12-07T13:42:51 8220044 9 10 [...].87.107.[...] 049052833C0944699F9B917418EC2920
    2024-11-21T21:17:18 8230135 16 10 [...].242.187.[...] 04BF7333C3714F7EA96846193B714074
    2024-11-17T20:44:27 8230053 6 10 [...].74.24.[...] 04C27EBD80A64B3FB57DECB2DB415839
    2024-12-07T14:13:42 8220053 9 10 [...].66.136.[...] 04E7063FADC34FF8898A3F145838E666
    2024-12-06T13:17:33 8230056 9 10 [...].242.224.[...] 04EE34C348CB4F3690C67A99B95F7B59
    2024-12-07T14:56:00 8220169 7 10 [...].71.169.[...] 0522792D89314C8CA3BA28F9099E8F83
    2024-12-05T16:10:07 8230129 12 10 [...].65.88.[...] 05234B48E1D14F22A24CE7598E143DF5
    2024-11-18T11:59:52 8230144 16 10 [...].26.4.[...] 052F9268FEE04FD6824C75F6418FDA93
    2024-11-23T15:21:03 8230142 16 10 [...].87.25.[...] 054F36F18E6E4D98A00C137E8D111D47
    2024-10-11T22:14:24 8230006 1 10 [...].140.44.[...] 0571A7E6F403456CBCDA8778E29513AE
    2024-11-09T12:53:31 8230104 5 10 [...].178.235.[...] 057958A2526E4BBA8B7FEC6A28A42E5F
    2024-12-06T15:11:23 8230056 7 10 [...].242.224.[...] 058E1B33B04F4804BD00A36D39E6CD75
    2024-12-11T00:43:30 8230070 11 10 [...].217.161.[...] 05C9C9A3B81E4FC083EAD470823255CA
    2024-12-17T09:26:39 8230077 10 10 [...].74.48.[...] 05CC265482884B949026865E76F46FDD
    2024-11-18T14:05:59 8210226 1 4 [...].138.155.[...] 05F8579E32C0438ABF3DA9517C72DAB5
    2024-12-10T15:04:07 8230036 8 10 [...].74.9.[...] 06220E5388EE48A986AEF2F4A6996998
    2024-10-21T20:03:10 8230030 4 10 [...].131.254.[...] 0623648031B64E01A9F9723E33C741C3
    2024-10-23T22:33:04 8230126 3 10 [...].86.212.[...] 06288804CDFA401BAC73ABBD3E609C56
    2024-10-27T19:38:16 8230074 3 10 [...].237.199.[...] 063FABD72EEA4BF4B5BC2FE4BC4D6242
    2024-10-13T18:21:59 8220007 6 10 [...].166.35.[...] 0644641A4CC2496396AE197D835295F8
    2024-12-17T17:21:40 8230018 7 10 [...].177.82.[...] 064F57DCE57F4EA5BA1A58772AE015F9
    2024-12-05T16:07:55 8220112 7 10 [...].59.89.[...] 065147FBFB444181B7893650997C63A0
    2024-10-21T19:40:21 8220011 10 10 [...].168.1.[...] 065C7BCD954C4F12B167A9F5134203F1
    2024-10-25T19:35:09 8230102 3 10 [...].130.135.[...] 0663761B77A442A88666B1488442B3DB
    2024-12-08T11:52:16 8230148 7 10 [...].87.72.[...] 069317E8127D4502B6AC92E56CE5C01F
    2024-12-17T15:52:45 8230035 10 10 [...].176.104.[...] 069542525EA943D3941041DD51893003
    2024-12-15T13:56:39 8230021 8 10 [...].251.255.[...] 069B59807AAE4A9CB8C4D0F8C46EBD30
    2024-11-20T21:38:10 8200117 17 10 [...].92.100.[...] 069F41EC65B6473BBBFD2D2834049C63
    2024-12-14T18:12:17 8230224 8 10 [...].74.186.[...] 06B0DFAB18B042D79932801CD55443E1
    2024-10-11T17:43:02 8220141 1 10 [...].251.255.[...] 06D3107966EE4C43A4067D5FFE1CB720
    2024-12-03T14:46:08 8230107 9 10 [...].14.243.[...] 06F706218F084971BF0DF59184E770E2
    2024-10-17T03:16:45 8230068 2 10 [...].75.76.[...] 070D43E417E84B3D9CA4DABECCFB3BA8
    2024-10-21T12:27:51 8230117 2 10 [...].166.186.[...] 071FE0E6A1F04605B5347D825E30FB58
    2024-11-28T20:04:58 8220136 12 10 [...].203.87.[...] 07218D68E9054B569CA8E5C3316C6B72
    2024-10-19T21:16:44 8190304 8 10 [...].217.176.[...] 0730B5D320744F5FB5B55095B017F879
    2024-10-30T21:55:30 8230142 4 10 [...].87.25.[...] 0743D15FA59846168FCB59E964B93D07
    2024-11-13T18:01:22 8230059 6 10 [...].251.255.[...] 075D3CA833C74DA5914A25CB996C1467
    2024-12-04T23:29:24 8230043 9 10 [...].4.92.[...] 079309BE50CD48AB8A9323BC5E360D90
    2024-10-12T18:12:27 8230044 1 10 [...].107.189.[...] 079A0444CA884FDEAFC41F7B2D675E8B
    2024-12-12T15:40:30 8230057 8 6 [...].92.142.[...] 079BAFF81D7C4B9889EB6C3EA4C811A6
    2024-12-01T20:33:36 8230114 12 10 [...].131.158.[...] 07A439A0C2124B12B9BBE4EC1CBCF001
    2024-10-13T11:52:45 8220105 6 10 [...].1.100.[...] 07A44BC71CA542B58A30AFF603B720E4
    2024-12-02T18:38:14 8230033 12 10 [...].43.36.[...] 07D9A15669484791837AF1F46A61102C
    2024-10-14T00:13:11 8230016 1 10 [...].168.1.[...] 07EEFCA5F4DD44D8815CF357CE608EBB
    2024-11-23T20:11:41 8200223 7 9 [...].251.52.[...] 08279A48D5B3472F9E5CF88BE851D56A
    2024-12-02T22:40:14 8230028 9 10 [...].87.106.[...] 0829AC5F2A5B4A8EAEC0326A3D1AB95D
    2024-10-19T14:09:43 8230079 4 10 [...].6.110.[...] 08411C7B5D10404A881890DCB266FEF1
    2024-11-30T01:40:29 8230029 12 10 [...].86.132.[...] 0864EFB7C5434836A467A9A94A6B59B6
    2024-12-07T16:22:23 8230025 9 10 [...].73.116.[...] 086E4E253EC64EB8AC1E79291DAC29AE
    2024-10-10T19:48:04 8230123 1 10 [...].64.18.[...] 08755A713ACE4CB3AFC4994486ED113F
    2024-12-13T19:14:12 8230132 8 10 [...].140.28.[...] 0887F258F0D147E88B6FBD9F19F29392
    2024-11-20T22:13:52 8230073 16 10 [...].131.238.[...] 0894F04C729F4D6CB68876C7E3C91ABE
    2024-10-20T15:06:58 8230038 2 2 [...].71.4.[...] 08B846235AB64F2FACA72523F4433380
    2024-11-05T21:45:27 8220228 5 10 [...].103.101.[...] 08C85BCBBCA942BF95A69603B09AD78F
    2024-11-26T14:23:40 8230100 16 10 [...].235.16.[...] 08DEBD8F8BC540AB82180EC0E92CE5B7
    2024-12-06T19:18:15 8230042 7 10 [...].49.218.[...] 09366D7480014E15B9837EA4313BEB53
    2024-12-01T23:57:13 8220085 12 10 [...].107.160.[...] 096ECBB3F2D54D63BF3CEA692527A073
    2024-11-22T13:55:45 8230079 16 10 [...].26.25.[...] 0980C8C057754A228D53512205B92D19
    2024-10-20T18:06:46 8220053 6 10 [...].217.161.[...] 09BE826A3AE446FFA9564BE35A57010C
    2024-12-10T01:24:03 8230218 7 10 [...].74.38.[...] 09C323F0C7CC4981AFF0343EE121F9A0
    2024-12-06T01:09:24 8230021 7 10 [...].49.196.[...] 09C454D12E684D34AA570387381B36EC
    2024-10-24T10:17:04 8220114 4 10 [...].242.187.[...] 09CFF02DFDDB4169B3A2C7BB726CEB72
    2024-12-11T13:29:44 8220011 13 10 [...].168.0.[...] 09DC4B22B7CE49BAB5A5392FEAEAF015
    2024-12-02T23:09:14 8230073 12 10 [...].217.174.[...] 09DF372B3EAA41F29EA85330673CA69B
    2024-11-04T20:13:26 8230033 4 8 [...].49.124.[...] 09E5E5611100443FBCB062F5C8D043ED
    2024-10-17T13:29:45 8230001 2 10 [...].246.142.[...] 0A1AFEC7645D43EF8A4DD04BD0156CEF
    2024-10-20T22:22:02 8230168 2 10 [...].251.52.[...] 0A2FC30416644420AC2EADC6F5BC62E6
    2024-12-12T20:37:37 8230122 8 10 [...].71.37.[...] 0A660733560C41318F771520D8F6D7FD
    2024-11-15T17:14:47 8150025 2 10 [...].66.136.[...] 0A721E4CD8654EA8965D6F61DE81E51C
    2024-10-28T00:09:50 8230101 3 10 [...].73.37.[...] 0A9998C4DB1B42FAA668617F881360D4
    2024-11-10T12:39:51 8230007 5 10 [...].140.12.[...] 0ACAE798FBF54E45A1F9545EF40467ED
    2024-10-23T23:59:44 8230072 2 6 [...].65.67.[...] 0ADE331B3D0842D086A5191FDF96B77F
    2024-11-28T11:34:04 8200168 7 10 [...].177.150.[...] 0ADFF86D75284284B1E4F89D148BEEA1
    2024-11-02T20:24:12 82000464 4 10 [...].177.77.[...] 0AE334873F364D5B936481FD75E6071A
    2024-10-20T18:31:40 8230143 1 10 [...].66.146.[...] 0AF5CC15BB184A8281D62193C518AD00
    2024-10-19T16:10:30 8230045 2 10 [...].73.124.[...] 0B0415E899F94E3E9345618CA799F521
    2024-12-08T23:29:50 8220091 7 10 [...].168.1.[...] 0B0FFFB735CC4411A09A0507056DAB13
    2024-11-24T23:22:10 8230220 16 10 [...].71.169.[...] 0B134D7C331C4181B64811CAB9BE86AE
    2024-11-04T21:31:25 8230043 4 10 [...].4.92.[...] 0B2CEB0B86D547D6ABA542AE9007AB91
    2024-11-18T23:05:52 8230153 16 10 [...].246.241.[...] 0B5916C214C445DEBFC17BDDA71F703A
    2024-11-13T19:24:32 8230148 6 10 [...].87.72.[...] 0B8306E1B8FB4A0183228DD2D338521D
    2024-12-16T22:13:41 8220136 7 10 [...].202.124.[...] 0B8308E05AB64B8AAEF84CB0A74D53CC
    2024-11-09T11:37:01 8230132 7 10 [...].217.174.[...] 0B98F76F4A38425BB54EA2907B8C4253
    2024-11-11T17:15:11 8220148 6 10 [...].86.9.[...] 0B9E149073D0469EB77954DA69723ED7
    2024-11-24T20:26:04 8220086 16 10 [...].168.0.[...] 0BAF7F401D2C46A48054EE7021552595
    2024-10-23T15:02:39 8230070 3 10 [...].26.4.[...] 0BBED44A3421489AA74B1EB5CDE61F87
    2024-11-10T17:38:31 8230102 5 10 [...].130.135.[...] 0BCBE6F82A1E4854A9D8652A99E4A603
    2024-10-09T17:47:08 8230028 1 10 [...].203.222.[...] 0BF062CF8F274CC486EEA4B5E3701A22
    2024-12-06T00:20:07 8230102 9 10 [...].87.119.[...] 0BFB10F0D0054B1BB05B13356CBA23DC
    2024-10-16T20:41:50 8220141 4 10 [...].75.104.[...] 0BFDDD212CB14D47B5DF4A456C3D6B8F
    2024-12-01T17:47:18 8220145 12 10 [...].72.171.[...] 0C07853C21EF4A56AFE4371756C7A31E
    2024-12-09T20:46:36 8230116 8 10 [...].49.120.[...] 0C16CD20CCE44C859E41E637D49217E3
    2024-10-13T14:43:53 8230017 1 10 [...].72.171.[...] 0C22AA190E044490846E067DE50B3B8C
    2024-12-02T22:06:40 8230125 9 10 [...].74.252.[...] 0C2DAB650251429BA0171CA74DC2659E
    2024-11-24T12:29:27 8230057 16 10 [...].92.142.[...] 0C361593DBDE415A96D84D94FB92B7B6
    2024-11-10T14:44:50 8190381 5 7 [...].237.222.[...] 0C378981F1684F34B1E62D906327C143
    2024-12-12T21:47:52 8230127 8 10 [...].176.122.[...] 0C502F0000FB4BD8B78563F859D50C6A
    2024-12-06T01:24:52 8200066 11 10 [...].168.0.[...] 0C58A48775DC4CF0B8771DB210554214
    2024-10-29T00:36:40 8230063 4 7 [...].242.187.[...] 0C5E06CA19B5418789FC4223CF13C5DF
    2024-11-26T13:27:29 8220221 1 10 [...].26.27.[...] 0C7DABBC5B4B465CA12A0B91F6DBBA26
    2024-10-19T12:53:17 8230085 2 9 [...].217.161.[...] 0CC0EFAA7EC74F43A7C93BCC9D439F65
    2024-10-11T12:45:54 8230031 1 10 [...].84.23.[...] 0CC1105CB027469792E732BE4175FAF7
    2024-12-20T14:19:12 8230050 10 10 [...].6.1.[...] 0CC62BF288954AF6B114A53EE5CCA2EF
    2024-11-13T01:36:42 8230129 6 10 [...].65.88.[...] 0CD28D1E4E7540DDBB55EFA96646F37D
    2024-10-23T00:25:21 8210208 4 8 [...].131.172.[...] 0D180FC2F6BB4AE184D48F801D0BE2AF
    2024-12-01T20:39:37 8230153 12 10 [...].74.35.[...] 0D18E06E59D1436AB246DD14BA80E3F2
    2024-11-24T21:50:18 8150188 7 10 [...].92.185.[...] 0D19E886D5094A539EFF1788724AA08E
    2024-12-13T23:09:02 8230148 8 10 [...].87.72.[...] 0D2883D34B874B44952B68F32D169219
    2024-10-22T16:54:08 8230013 4 10 [...].26.9.[...] 0D3164037B7048A489249CD55586ECE0
    2024-10-12T20:11:52 8230043 1 10 [...].251.255.[...] 0D43BF014569483E9121A55131DB8268
    2024-11-27T14:02:50 8230003 12 10 [...].217.174.[...] 0D49E6E1025A4986AC67939D50F3B1E1
    2024-12-07T15:55:48 8230025 7 9 [...].73.116.[...] 0D77EE61FFB74A178E7A23A78F65C529
    2024-10-29T17:46:41 8230045 4 10 [...].26.63.[...] 0D8C6A1842F941AD93BDEB774D48FCB6
    2024-10-20T23:33:21 8190333 2 10 [...].168.0.[...] 0DB809EB5E7046A2BE0505906565F2CD
    2024-11-24T17:09:52 8220148 16 10 [...].73.99.[...] 0DBDF28781084485A4FA4751E1C8021A
    2024-10-13T12:28:30 8220123 2 10 [...].242.185.[...] 0DBFDF728AA141818360DBD4DB62E0AB
    2024-11-28T21:58:55 8230116 12 10 [...].49.232.[...] 0E051405FC104E7EAFD68DAE2219682B
    2024-11-07T11:20:36 8230159 6 10 [...].86.65.[...] 0E1FFAFDEEEC4D97A3F8F5AB0D7AFAE8
    2024-12-12T16:54:54 8220029 4 8 [...].54.144.[...] 0E2810F6035C4128967DC4E87CFF889D
    2024-11-13T18:59:16 8230044 6 10 [...].107.183.[...] 0E4D46B08828435396EF0E99057477CB
    2024-11-07T12:13:42 8230155 5 10 [...].129.228.[...] 0E5403BB8B174B9F8883D18886E919CE
    2024-12-12T19:55:00 8230157 8 6 [...].217.175.[...] 0EB0A35FED9F47709607FF7C8D85D29C
    2024-11-10T14:58:44 8190091 5 6 [...].217.174.[...] 0ED1761BF4B5492DB9F9E043AF2BD79A
    2024-10-19T14:34:51 8220036 2 10 [...].86.31.[...] 0EFB70351482424490B957DF1F7539E6
    2024-10-10T20:08:41 8230076 1 10 [...].166.11.[...] 0EFDCDBBB0334510B57D237A3C30E8EA
    2024-11-08T15:38:42 8230053 5 10 [...].74.24.[...] 0F1B1C0E3E9B4E308A61F130C4F8F6D6
    2024-10-12T01:28:55 8170068 1 10 [...].174.10.[...] 0F24605515C94DB1A3B4DA5DA3585470
    2024-10-18T17:32:58 8190304 3 10 [...].217.176.[...] 0F3C5774E54944D1BAF702D9A1B95241
    2024-11-12T13:25:19 8230099 6 10 [...].74.126.[...] 0F43773B934E422398670DA7181BDCAB
    2024-12-16T21:58:49 8220036 8 10 [...].152.146.[...] 0F5218AFB5AC46978EC180358AA52C69
    2024-10-09T00:46:53 8220149 1 10 [...].168.0.[...] 0F542F8C2A1D46A7A5E70E9089FFD4E0
    2024-11-19T17:10:06 8230247 16 10 [...].26.18.[...] 0F69D15A48E44BB1A029A9FCB9377368
    2024-12-08T19:17:43 8230074 7 10 [...].237.199.[...] 0F8730DB1E45410BB2E7A644D11567DF
    2024-12-21T13:14:44 8230159 11 10 [...].84.9.[...] 0FB6FF45653C40599B0507E744A0D7A9
    2024-10-30T00:09:08 8230068 6 10 [...].75.76.[...] 0FD0899E23A34939B399505E90E9AB11
    2024-11-19T13:44:52 8230052 16 10 [...].26.51.[...] 10045812C55541C89FF5B663F9D1370E
    2024-10-21T19:59:59 8220039 3 10 [...].49.99.[...] 10098040AC33433CBAD25FD56601F7D1
    2024-11-30T17:00:28 8220016 9 10 [...].64.248.[...] 1057129DF9434AE5ACFB4E28E09E5122
    2024-12-05T23:40:46 8230145 9 10 [...].87.226.[...] 105E03D2177D4B5BB0B1273FA65C3BD8
    2024-12-05T22:25:32 8220123 9 10 [...].87.46.[...] 10A30F97B4ED4818A57290F6DFB7B819
    2024-12-15T15:43:06 8230005 8 10 [...].59.92.[...] 10B88492CEBC45FCAE88E7B606C2FEF7
    2024-12-06T22:33:37 8230218 9 10 [...].74.18.[...] 10D48A1C7A2D4BBF90281C6B1E6F501B
    2024-11-01T13:55:03 8230122 5 10 [...].131.230.[...] 10E88A55605048318F83F5D8ECF0D55C
    2024-10-13T19:57:36 8230007 1 10 [...].140.28.[...] 10F6C88FD6594109B99B00A416B353E5
    2024-12-02T22:43:16 8230218 12 10 [...].74.60.[...] 1131BABD83374A67BC00E421BC30278A
    2024-12-02T18:01:32 8230114 15 10 [...].203.139.[...] 1134ACFECAD94B76AEE554759FE76732
    2024-10-17T21:51:50 8230052 2 10 [...].38.25.[...] 114B539BC67949BDAD3BEE3942C05F70
    2024-10-28T20:16:01 8230097 3 10 [...].73.34.[...] 1161A6F0883F433DB6951092BB30C63B
    2024-12-13T14:37:25 8230101 8 10 [...].217.161.[...] 116DAA4F9DEB4A9F89ED0992015F84A4
    2024-11-23T16:14:33 8230138 16 10 [...].4.87.[...] 118B70A5F00F4B0293D2D80B4E778FC2
    2024-10-13T21:55:41 8230037 1 10 [...].64.49.[...] 11B06E7A427C4919AE786A1F2435FBA7
    2024-10-26T10:38:06 8190051 3 10 [...].1.238.[...] 11B997FD83AC42F985BB8EE869357116
    2024-11-15T21:27:40 8230161 7 10 [...].58.224.[...] 11E0F13F3A6E4C34B803C45DDE48EDDD
    2024-12-01T22:25:26 8230064 12 10 [...].86.44.[...] 122B49D74FBA441EBAE3026FEEE97FC0
    2024-12-06T17:06:00 8230005 9 10 [...].138.148.[...] 12418531AA3942EBA5F5054A53E7A34C
    2024-11-18T20:55:35 8190332 4 10 [...].6.72.[...] 124F46EA748E4B669699CA87572C5F08
    2024-11-28T16:22:42 8220136 16 10 [...].203.87.[...] 125771DC05CE4AB1AF6179BB46E6CD73
    2024-12-17T14:08:56 8230083 10 10 [...].130.27.[...] 12622D4F56064AC2A5505B0B3BB63F6A
    2024-11-07T11:03:12 8230050 5 10 [...].6.1.[...] 12E830A24A4445BA951FF41975126601
    2024-10-20T17:57:40 823143 2 10 [...].66.146.[...] 12FD8C385B554E07ADC062659E1A95B9
    2024-10-23T11:26:02 8220228 3 10 [...].103.47.[...] 1338575ACE0F4663AF8F68CA2C475191
    2024-10-16T18:42:50 8230059 2 10 [...].6.3.[...] 134AD8C5EBFB47E4A3225069579935F1
    2024-11-19T15:39:09 8230058 16 10 [...].26.6.[...] 135F7EA16482416D8929E13F29799D89
    2024-10-24T12:33:07 8230135 3 10 [...].140.90.[...] 1366106225B3401E9F72201B27094E42
    2024-10-08T00:08:32 8220145 1 10 [...].84.44.[...] 136686FDA90F4D4680760855CCD03477
    2024-10-09T20:26:33 8230131 1 10 [...].103.219.[...] 136B4EDAC8B64EDFB15415BAAB9ECE7B
    2024-12-04T01:03:08 8230091 7 10 [...].6.3.[...] 136BD577B71548819C0F03A7D441E21E
    2024-10-19T22:29:38 8190304 10 10 [...].217.176.[...] 137B398B45E84D96AC9E61EB9C19DF4D
    2024-11-08T17:56:58 8230116 5 10 [...].58.247.[...] 1380912D316647FF9952C0B5139DCBE3
    2024-10-20T13:37:34 8230220 2 10 [...].71.169.[...] 139F8B668EBB40C190A305C7AF86BF7A
    2024-12-13T18:24:02 8230085 8 10 [...].203.205.[...] 13B2524B3549423D9CFF6EF20BF023BD
    2024-10-18T01:21:11 8220145 4 10 [...].87.88.[...] 13CF9789B521437BA72779581A7CFC2A
    2024-12-10T18:10:08 8230069 7 5 [...].75.26.[...] 1424FB76B5F447F991E833035D7A4D43
    2024-10-25T21:14:14 8230043 4 10 [...].251.255.[...] 144FB63AFA0641FEA19919D8FF68D30E
    2024-11-12T23:59:43 8230154 12 10 [...].167.82.[...] 146319166E434A20AF02A239D3473CA8
    2024-12-08T22:32:49 8230045 9 10 [...].73.126.[...] 14AE705D06784844B3F2C9DA03F42B94
    2024-11-24T22:17:49 8220025 6 10 [...].38.100.[...] 14D78A0F00A54C59B830C0CF81600BCD
    2024-10-24T13:13:03 8220046 18 10 [...].26.43.[...] 14E081DA81364041AC226B3591786D33
    2024-12-03T23:21:24 8230040 9 10 [...].87.26.[...] 14E51A4DFFD148579F5BB8C0954E2E62
    2024-12-06T03:12:23 8230010 9 10 [...].4.48.[...] 151EC8CC126C4FC9A8FFBD1576CEB451
    2024-12-05T23:22:47 8230073 7 10 [...].217.174.[...] 155CCB1590C14CDABEEE04D0352D4439
    2024-10-18T19:44:10 8230030 3 10 [...].131.254.[...] 15716B7A75D44C7AB8C6F0AB0856DF18
    2024-11-11T22:39:38 8220014 4 8 [...].103.239.[...] 15CCE7C4B6E94AA18CFC7F21D0C4C905
    2024-12-11T22:41:26 8190332 15 10 [...].107.113.[...] 15E7D8E300FD409A97FE9C3D8AF5DFBE
    2024-12-11T23:01:39 8230011 8 10 [...].73.127.[...] 15FC5099527341509C07B77DBA4E4CC2
    2024-11-04T13:43:08 8220108 12 10 [...].26.22.[...] 163F57BC9A124881BA7C842E70A104FE
    2024-10-18T17:58:35 8190376 2 10 [...].26.37.[...] 16BEEB7FF5A248EDB4DC5BA24A36AAF2
    2024-10-21T21:15:38 8230037 3 10 [...].64.49.[...] 16CEA924988C4D0FB9E07F83C46FEBE6
    2024-10-20T19:55:34 8220215 2 8 [...].59.85.[...] 16D96AA6B0304C199BFEB6DE57EFBA3C
    2024-11-10T19:42:03 8230038 5 10 [...].71.4.[...] 16E16424F73C41F999D37878FC7504F5
    2024-12-16T12:51:59 8220025 10 10 [...].26.44.[...] 16E54B079EBE463A8756182386439E82
    2024-10-25T12:44:03 8230156 3 10 [...].49.132.[...] 1733D8A8BE30492D8BDCAEA978F4AF70
    2024-10-10T15:24:43 8220123 1 10 [...].26.53.[...] 174482BBFA544CC1972970225D69F2E2
    2024-11-09T00:11:14 8170017 8 10 [...].87.194.[...] 17902CB93A834123A935101DF2B8AF2E
    2024-10-29T23:46:49 8230160 4 10 [...].251.66.[...] 17BBE64399884B12BE365DAD38DA20B3
    2024-12-04T11:32:16 8230072 9 10 [...].84.142.[...] 17BDD833054E4249A7A13A9D26A3DE96
    2024-12-10T16:13:15 8220142 9 10 [...].107.37.[...] 17CE7DB530344F479C6C7F5456EEE18F
    2024-12-12T09:34:52 8230089 8 6 [...].74.161.[...] 18065479054B415C88A75AB0478E0E8C
    2024-12-17T22:43:03 8200223 8 10 [...].251.52.[...] 1809E54E5D204073BB999347B63B4049
    2024-12-06T23:58:01 8230165 12 10 [...].1.239.[...] 180F17ED520E44EC9AAFA74219D2CD60
    2024-11-06T23:35:18 8200171 4 10 [...].86.179.[...] 1836491739D2422B9AA4D259F387CC4B
    2024-12-09T17:39:43 8230093 7 10 [...].86.152.[...] 186279F3A2844B33B89D5FEEEE31198F
    2024-11-29T18:06:25 8230134 12 10 [...].58.192.[...] 18751FF023CC417B9CEFB97A0C03EA46
    2024-10-15T11:32:46 8190378 2 10 [...].58.136.[...] 1897760468B049F8B37C7C7C3D674EEF
    2024-11-06T09:41:55 8220007 17 10 [...].55.70.[...] 18A3EC5F2F7C46BF810031453BAB3ECE
    2024-12-15T21:34:19 8190051 8 10 [...].58.251.[...] 18DB9AF79E4849BCBF88EA8EDB5DA207
    2024-10-22T16:35:49 8220131 4 10 [...].73.201.[...] 18F895112F85486A9FD981709D1F18D2
    2024-12-02T23:42:40 8230011 9 10 [...].73.112.[...] 19364830316A41E8B28DDC10C7F074BB
    2024-12-14T13:40:38 8230101 8 10 [...].217.161.[...] 196C8673D37D47F5A85A799F3B159140
    2024-10-13T22:45:48 8230078 1 6 [...].203.191.[...] 19789444216B42528C1D054C053EAB08
    2024-12-15T21:06:49 8230156 8 10 [...].49.118.[...] 198BE774532C479080682B78B390AC85
    2024-12-20T14:37:12 8220016 10 10 [...].87.53.[...] 19979096DC694BE392DFA5B118541421
    2024-11-30T12:03:58 8220057 12 10 [...].217.161.[...] 19E76FC4F4E944CA8D406015B3673B83
    2024-11-30T13:27:14 8230013 12 10 [...].97.214.[...] 1A18C8696678457792E2773D4AEE688D
    2024-10-15T20:52:23 8230083 2 10 [...].130.27.[...] 1A1F0C897EBB4222B4EA38F3416090F9
    2024-12-21T18:32:13 8230025 10 10 [...].73.116.[...] 1A271E67712A485FBA89802A42119F87
    2024-11-24T01:58:06 8220057 16 10 [...].217.161.[...] 1A29A30650A444849AE470956E9EE7C8
    2024-11-25T12:32:30 8230065 6 10 [...].26.26.[...] 1A2B494069C8407D8CEAE3915A69D21B
    2024-10-20T21:33:25 8230123 2 10 [...].64.18.[...] 1A610C2B44A946D88C33D54DDD417E9A
    2024-11-02T21:26:50 8230002 4 10 [...].131.130.[...] 1A742D2C644F42F49BF702E995E0679C
    2024-10-30T23:09:15 8230100 4 8 [...].166.61.[...] 1A8FC76DA86040E9A85A4F2A45FEEC04
    2024-12-18T01:46:01 8230024 10 10 [...].103.42.[...] 1AA64F506C754E5EAE4C8FFFF8FFFD5B
    2024-11-25T11:26:28 8230151 16 10 [...].178.230.[...] 1AACD1480E8448159C34626DB5DA72BC
    2024-11-17T00:53:12 8230147 6 10 [...].152.221.[...] 1AB70EAA89B442548669E35D8E3035F4
    2024-11-30T20:23:46 8230094 12 10 [...].87.16.[...] 1AC1091C2A804FB6A22BA49E2E8BAB5D
    2024-10-27T11:09:04 8220142 3 10 [...].107.37.[...] 1AC8C95143B94A44AD35B5F4DF72BA2E
    2024-11-19T13:41:09 8230159 16 10 [...].86.94.[...] 1AC944E4A4694701A50079140FD26D14
    2024-11-17T18:53:05 8220143 6 10 [...].167.107.[...] 1AD4879FD1D2473C8AA7FCC5EB7E83A2
    2024-10-17T21:46:51 8230154 5 10 [...].92.162.[...] 1AE64E5EBFCD4254B4EBF448397A052D
    2024-12-08T00:09:40 8230220 9 10 [...].71.169.[...] 1AFF4FBDDE3747F996E49E45DAF2CDF8
    2024-10-10T18:48:53 8230008 1 10 [...].84.27.[...] 1B0177D68B244021B2ACDE4D7EB530D7
    2024-12-06T17:11:20 8230245 9 10 [...].210.65.[...] 1B0A0478C5804447988E6C3452F24B7B
    2024-10-25T12:16:17 8230022 3 10 [...].178.193.[...] 1B1B5670D2A4492B80C9405E102F6DA0
    2024-11-09T20:28:37 8230076 5 10 [...].246.223.[...] 1B53E4C3822247558980A6228380E4F4
    2024-11-27T15:21:00 8220221 6 10 [...].66.136.[...] 1B578F025D9E473EB31880A947F79BFC
    2024-11-08T21:13:03 8220110 5 10 [...].74.160.[...] 1B5BDC02DB1F4508BFC308BE1EE59FE9
    2024-10-27T18:26:02 8200223 3 10 [...].251.52.[...] 1B5BDC22449443F79B97D163B7861BBC
    2024-11-10T17:40:24 8220131 5 10 [...].74.252.[...] 1B60772331394A6ABADB2124962B018B
    2024-12-01T18:38:10 8190381 15 10 [...].55.98.[...] 1B62D12CFE2B4ECBB68B2DEAF7091049
    2024-10-23T21:32:31 8210163 4 10 [...].168.1.[...] 1B99F9BE38F64AAD9FC568A48822E7A7
    2024-10-21T12:31:33 8230132 4 10 [...].26.33.[...] 1BE020906BD940E8A43E292A3B47E162
    2024-11-15T19:43:46 8230070 8 10 [...].217.161.[...] 1C0229ADE9AC4290BF3BACA39B81AFC5
    2024-10-11T13:33:43 8220231 1 10 [...].140.32.[...] 1C40FAE305F44B7288B45F0A7AADD8BE
    2024-10-13T12:08:24 8220110 1 10 [...].84.22.[...] 1C441291D7204D42B8B1BDEBDB60FE2F
    2024-12-01T23:33:44 8220052 12 10 [...].168.0.[...] 1C9B0C5757854AB7B6200357188B63AC
    2024-10-18T17:16:46 8190304 2 10 [...].217.176.[...] 1CBE76D27010412A86E950CFCAA3DDE6
    2024-10-22T01:13:14 8230107 3 10 [...].65.127.[...] 1CFAD0971EB740C6A190E491BDD02E25
    2024-11-08T22:35:01 8210087 6 10 [...].1.114.[...] 1D231BDF4C17423883C2A91611C80629
    2024-11-24T11:46:58 8230050 6 10 [...].242.138.[...] 1D2A35F9A27E4B65A9DD408963C0CDB5
    2024-12-02T16:55:08 8230092 16 10 [...].26.27.[...] 1D4D97268FFC47DF8A129C0B0FA567F5
    2024-10-19T13:07:02 8220145 5 10 [...].87.88.[...] 1D74F5863BA9408BB76F843142DD7A31
    2024-12-08T13:32:43 8190381 9 9 [...].55.98.[...] 1DA5DC1E2D154F85918236BD1D90F95E
    2024-11-07T11:35:10 8220052 5 10 [...].168.0.[...] 1DA6805B0FEA45BD8FC59BEEB6E22572
    2024-12-16T21:21:41 8230021 10 10 [...].49.196.[...] 1DA814F7F5354DE490E4FD33AD51ED74
    2024-10-15T22:56:10 8220152 2 10 [...].66.136.[...] 1DD7351CBC914BB5B2618BEB4B14369E
    2024-10-29T19:02:56 8230047 5 8 [...].84.197.[...] 1DF73C7C02B34BB09C7C9011AB4D2177
    2024-11-16T16:47:39 8230017 5 10 [...].87.161.[...] 1E17D48FA97545B3826DCB8BA1C979DD
    2024-11-11T22:46:35 8230117 5 10 [...].178.177.[...] 1E725F7CF73C407B99759AA5D070EBD5
    2024-10-13T19:23:26 8230045 1 10 [...].74.48.[...] 1E8644EF3F8F4AE2B9A9C0881CE47EE8
    2024-10-18T19:03:30 8220231 3 10 [...].140.32.[...] 1E9063192AEF4C359E637758B8DE9AE4
    2024-12-03T01:19:36 8220215 3 10 [...].59.85.[...] 1E90E736583D42B89F317E8C2584C750
    2024-11-04T19:34:21 8170204 1 9 [...].65.116.[...] 1ED6192A3BA64AC4A0151CF19D8CE0FC
    2024-10-23T18:30:06 8210163 3 10 [...].168.1.[...] 1EDB30A4381044FEB7236A809FF4C4CC
    2024-10-09T12:16:41 8230099 1 10 [...].75.111.[...] 1F132A229D9B44AF90FC3BB5684DF74F
    2024-12-01T02:22:07 8230063 12 10 [...].140.91.[...] 1F17D81F825A40699D605E26D6C42B39
    2024-12-10T22:53:41 8230094 7 10 [...].217.165.[...] 1F22C3ED42E548EFB483CAFD3687071F
    2024-12-13T11:54:17 8230105 8 10 [...].6.162.[...] 1F2C47B4EFB14353A2EDB1072023D8D2
    2024-11-24T15:53:51 8220231 16 10 [...].140.32.[...] 1F494050B17D47C99CA8CBACC0FF7BCE
    2024-12-01T21:57:25 8230244 12 6 [...].72.95.[...] 1F625196E9104F67961AFD634575B6CA
    2024-10-29T19:56:32 8170017 6 10 [...].87.194.[...] 1F67394227804071B052C554AAF84605
    2024-11-24T23:26:33 8210208 16 10 [...].131.172.[...] 1F819BDC9C2842E7B579AE80BAFB952E
    2024-12-08T15:47:28 8230044 7 10 [...].190.4.[...] 1F949832229447799B148B767EA2F8D3
    2024-12-04T11:56:55 8230106 9 10 [...].58.193.[...] 1FEE93301EA141EBB504399123E44CA0
    2024-10-27T15:26:39 8220016 5 10 [...].64.18.[...] 1FF868C4365C4C9E980053DEE8C28AB1
    2024-11-23T14:32:23 8230025 6 8 [...].73.118.[...] 200BB3B651894FD39F64F9252D702A03
    2024-10-26T18:19:22 8230094 4 10 [...].217.165.[...] 2027CA03BE1448CA988815E94F1703D7
    2024-10-27T19:02:56 8230168 3 10 [...].225.135.[...] 202EA6C7ED8A473B9CBF43A8FB440917
    2024-10-21T00:41:40 8230029 3 10 [...].203.105.[...] 203A1BDD7A73441EA06C1F8E20D91D09
    2024-12-02T00:08:27 8230163 12 10 [...].242.186.[...] 2040699000F144CC99807B8DEFC8B381
    2024-10-09T13:18:34 8230013 1 10 [...].26.9.[...] 20920B94262D4885B0702F0203C721D9
    2024-11-22T11:47:21 8230075 16 10 [...].203.241.[...] 20A172EE7B7846F396931CB0713B6EB4
    2024-11-05T16:16:06 8220108 17 10 [...].73.237.[...] 20B5BC3B4A024009AAECF9290B5C1C28
    2024-12-15T23:47:08 8230071 8 10 [...].203.219.[...] 20D021CDC1234EB68750DFB533B64D84
    2024-11-05T16:17:53 8210219 5 10 [...].168.1.[...] 20D7FA404C5F483A9173774CEA23216B
    2024-11-26T17:16:52 8230098 12 10 [...].26.12.[...] 20DD00ABBC8C4494BD5959C37466F824
    2024-10-23T13:53:50 8220112 5 10 [...].251.255.[...] 20DE5077DB7F432993AD3B486E462924
    2024-10-24T00:41:05 8230153 3 10 [...].74.239.[...] 20EAE8852DFB4C568F7CF994011A7289
    2024-10-24T22:06:53 8220156 15 10 [...].65.125.[...] 20F4D8AE8D5B4751BA5651CF2C26579D
    2024-10-22T17:58:46 8230144 4 10 [...].49.227.[...] 21099987D23D43169A9EEAF926DBB05F
    2024-11-24T15:50:28 8230030 16 10 [...].131.254.[...] 216E3902238B491E90667E81FD591BDA
    2024-10-26T21:11:24 8230005 3 10 [...].217.161.[...] 217F5CCB42FE46D78FD670114CC9A1A8
    2024-10-23T02:03:12 8200152 5 8 [...].140.91.[...] 2187436FB966453DB111A156EA02E7D5
    2024-11-23T21:40:04 8230017 16 10 [...].87.161.[...] 21BA817D085243B7B0E0DCF3446C696A
    2024-10-29T16:48:31 8230047 4 10 [...].84.197.[...] 21F27ADF91704BDD992762615FA510C3
    2024-10-27T19:40:20 8230120 3 10 [...].74.35.[...] 22040730E9A5482BA0426567D5D8E230
    2024-10-20T21:13:22 8220042 7 10 [...].168.0.[...] 222AA8B234CF474A991270ABA9EB3EF3
    2024-10-19T16:58:46 8230028 3 10 [...].130.230.[...] 2239E1C95F214C8F86A454701308F4F6
    2024-12-11T00:52:32 8230150 7 10 [...].203.234.[...] 225F2BC3A0FE42F9B39E0BACA2A0B2FA
    2024-10-21T20:41:20 8220053 7 10 [...].217.161.[...] 226125181F7B4BBD9CBBAFB922BD24D1
    2024-11-15T16:27:55 8220141 9 10 [...].74.61.[...] 22681B621DB24F14A34423C276902469
    2024-12-07T18:38:35 8230035 7 10 [...].177.146.[...] 22757B67D3224ECA819B02BC0A5F1FF1
    2024-11-10T23:40:15 8230045 5 10 [...].73.124.[...] 2279C331D999464DA862B8C633AA9B22
    2024-11-12T19:35:09 8210163 10 10 [...].168.1.[...] 22906789F70C45E38766D0BCA2FBE140
    2024-10-29T22:39:27 8230067 4 10 [...].166.115.[...] 22D6687226AC4F908507CCC813D32023
    2024-12-18T14:51:11 8230103 10 10 [...].66.136.[...] 22EAF64E84D542799B1E4658884F4FF5
    2024-12-15T19:47:53 8230076 8 6 [...].4.186.[...] 2306E23CC765463092086885664F1679
    2024-12-08T12:16:09 8230147 9 10 [...].72.62.[...] 233C2FFA349740E1AC5AF851AC04DF53
    2024-11-23T14:16:05 8230131 16 10 [...].103.27.[...] 238A10C0B2E34DA69ADD44D87ECA624D
    2024-10-13T12:30:44 8210208 1 10 [...].131.172.[...] 2392060163EB435A8BFDAA86F1825380
    2024-11-06T20:27:33 8220169 5 10 [...].75.50.[...] 239FB6C2BC3C4631804F60AE2110C15E
    2024-10-27T22:21:31 8230027 3 10 [...].251.121.[...] 23A16B0360BB449E8824C915A10DAC14
    2024-11-10T19:43:39 8220229 6 10 [...].140.28.[...] 23B0D8946FDB431E89927C89F1387C9A
    2024-10-12T21:20:59 8230029 2 10 [...].203.190.[...] 23B2B68607E74B4A9B6EA061ABB6E031
    2024-12-05T15:05:06 8230017 9 10 [...].87.161.[...] 23C314AAD21D4F40A79F3D703C65E90B
    2024-12-06T17:10:01 8230075 9 10 [...].70.168.[...] 23CFE4434900480D96FC12944EEF8974
    2024-10-16T21:18:59 8230050 2 10 [...].73.239.[...] 23DB5DAD481643BE96C73EA2092A8821
    2024-10-14T15:11:43 8230101 1 10 [...].26.5.[...] 23F70165179E4C03A2F1A0C65CDC5E83
    2024-11-19T22:51:18 8230103 16 10 [...].66.136.[...] 2433BF780CD3437A98CC765D1303BE36
    2024-12-01T00:16:46 8220169 12 10 [...].203.70.[...] 243DDA0F8CF84AD0B91F4131D5D02F76
    2024-10-10T10:34:40 8220229 4 10 [...].140.29.[...] 2444CAC013F343CF808BAF193C37FF1B
    2024-11-24T21:20:19 8210163 16 10 [...].168.1.[...] 246C188D26F24AA1A2D2EB1E149EA273
    2024-11-22T15:22:31 8230154 18 10 [...].14.243.[...] 2471815F1CDE469487B3CEB1CA6249F6
    2024-10-28T12:34:09 8230122 4 10 [...].130.34.[...] 24A5C4632FC248089E227F92997D1088
    2024-11-09T12:28:27 8230101 5 10 [...].217.161.[...] 24B06C1D718B4513A80AAC012C96853C
    2024-10-22T18:44:26 8210219 3 10 [...].168.1.[...] 24C2E96D10534240B00510AA9A4C0EE5
    2024-11-24T19:58:09 8210111 16 10 [...].6.0.[...] 24CE7D8556F24BD682F169F6AA8183E0
    2024-12-08T02:22:30 8230093 9 10 [...].86.152.[...] 24D71478691944359F2BCD17EAC9BD77
    2024-10-30T15:08:21 2210175 4 10 [...].26.74.[...] 24E0157044904B6E9576F9C967937C97
    2024-12-07T14:19:47 8210220 7 10 [...].217.175.[...] 24E4E8DB64C44879B3D2601CD4997F54
    2024-10-14T23:31:45 8220053 4 10 [...].217.161.[...] 25004EB7BC2149C4844A486DC59E703B
    2024-10-18T09:26:42 8220230 1 9 [...].6.104.[...] 2518D34E51984182AB8E37193102F15B
    2024-11-05T10:40:50 8200117 6 8 [...].92.100.[...] 2536F3BA31DD42719202EF149F50D614
    2024-11-08T13:06:59 8200117 9 10 [...].92.100.[...] 2587AF8DB35D4AB887C0C38ECEC39988
    2024-11-08T17:49:12 8230113 5 9 [...].75.220.[...] 259630C1AFBD4E5F8985D819C60381F7
    2024-12-06T22:38:25 8230083 7 10 [...].130.27.[...] 25A17BB0D2784D74A74D49DD0A8D7459
    2024-10-13T16:08:29 8230167 1 10 [...].107.105.[...] 25C075B3D5ED4DB48AB8C1A9AB211C79
    2024-11-27T16:30:19 8220221 9 2 [...].66.136.[...] 25D59DDE871A4607B7FDE60F8ACBD029
    2024-11-10T19:24:10 8220086 5 10 [...].168.0.[...] 25EE7B97AF4B4A44B276F98BDC08D027
    2024-11-03T19:55:56 8220085 4 10 [...].107.160.[...] 25F9C2DEC9D74D89A2CCB78AE6DF8E18
    2024-11-15T22:56:57 8200095 6 10 [...].71.129.[...] 26382AEE473C4D7FBA40321DA3CDBEE3
    2024-10-16T12:59:14 8200223 1 10 [...].251.52.[...] 263C8CF5A3B441EC93085E4456DC5F2B
    2024-11-12T16:10:15 8190338 6 8 [...].147.19.[...] 2689063C3787498F97FC68F7F6AC2D21
    2024-11-30T14:55:09 8230145 12 10 [...].210.253.[...] 270AE228359C490B92CA66C63820CF6C
    2024-10-13T16:33:43 8230072 1 10 [...].103.189.[...] 2711637FCDFB46988008FD05F9558CAD
    2024-10-29T17:31:33 8230089 4 10 [...].84.16.[...] 272268195D7F44829C332B5F2ED792C7
    2024-11-19T19:24:05 8230116 16 10 [...].4.170.[...] 272FCCFB21D440B89406817673A104B2
    2024-10-27T20:37:13 8230044 3 10 [...].107.189.[...] 273C1948A4274213B425B9099A050ED0
    2024-12-15T20:04:07 8230035 8 6 [...].176.104.[...] 2775EDCDD5894D4CAA43A3F6107372CE
    2024-10-22T17:10:30 8200152 1 7 [...].140.91.[...] 278530409BF341D8861094BF583685B9
    2024-10-17T22:07:53 8220042 5 10 [...].168.0.[...] 27894EA1103542E0A960A4B97DC1BE6E
    2024-10-16T19:38:25 8230069 1 10 [...].86.43.[...] 279493132E984FCEB646CA4EDB715225
    2024-10-28T13:29:38 8230106 4 10 [...].58.195.[...] 27AA1388CADD47E09C9C12E256539B25
    2024-11-23T16:06:15 8210087 16 10 [...].74.237.[...] 27C190BB94E947C1975BE0834AB872A9
    2024-11-23T20:19:41 8230025 16 9 [...].73.118.[...] 27DA470EA715443C871E90B69FD9E87F
    2024-11-24T13:35:43 8230155 6 10 [...].131.30.[...] 27EC454CE8D94C1B85579A848EE4FF2B
    2024-10-31T17:58:14 8230003 6 10 [...].86.249.[...] 27F69F211FFE4C9EB7DC04023005CF66
    2024-10-10T09:46:11 8190051 1 10 [...].246.233.[...] 28145BC798A940729F7517D80213BF40
    2024-12-14T11:30:41 8230016 10 10 [...].168.1.[...] 281A380B94FE4175A0CE68545D438C28
    2024-12-20T17:31:28 8230246 10 10 [...].84.15.[...] 28390172A44C423F99EBB18A2E211705
    2024-11-15T19:39:28 8230152 6 10 [...].65.18.[...] 2848DADA5B264D10B62DFB93318A25D8
    2024-10-15T10:56:39 8220046 6 10 [...].26.43.[...] 2868E07AB8E2478481D0EC24EDF8CA40
    2024-12-10T19:14:02 8230077 8 10 [...].74.48.[...] 2869B787288D4F8C89CC680CB9C5E617
    2024-10-25T21:24:36 8230220 3 10 [...].71.169.[...] 28E6448D6BC54281A752457EC83326EE
    2024-10-14T22:14:13 8230156 1 10 [...].49.129.[...] 29071D5C80644922B080B75687C2FC64
    2024-12-14T21:29:50 8190271 8 10 [...].66.119.[...] 29224ADD927848CAB382CAACD388904D
    2024-12-01T21:00:37 8190381 12 6 [...].55.98.[...] 2956F4927867407194C8C832CBD2E6C0
    2024-10-26T17:56:18 8220143 4 10 [...].177.141.[...] 298D64AF92E340AEAE1BB8BF872FE465
    2024-12-02T22:42:26 8220131 12 10 [...].103.255.[...] 29BFAACEBE594422B5E560D7222CDE65
    2024-10-19T13:28:32 8220131 2 10 [...].74.252.[...] 29C33249C3FF4CBBA7339B8DDCC9253D
    2024-12-12T13:22:14 8230134 8 6 [...].152.154.[...] 2A4B05BDAC924A308B839F9434932D0A
    2024-11-02T18:20:39 8200168 3 10 [...].177.150.[...] 2A677D79D3A540FC972FEEEA49050F99
    2024-12-08T23:47:31 8190376 7 10 [...].86.84.[...] 2A70F2F837A74EEABC394A93FC2543AD
    2024-10-13T23:42:42 8190271 1 9 [...].217.172.[...] 2ABA86A07B1B448083825154F4D78194
    2024-10-09T20:44:45 8220071 1 10 [...].168.0.[...] 2ADDD17A2BFE4545882231D45DD280EC
    2024-11-23T22:20:16 8230111 16 10 [...].71.169.[...] 2AEE33DE30A54BE3A5D6BAB532F9D5BA
    2024-10-12T15:20:51 8230064 1 10 [...].217.161.[...] 2B12E455D5B14378B2078DF5B071F6F7
    2024-12-02T23:06:51 8230155 12 10 [...].87.46.[...] 2B36F5E8F3F34D1F904E67EA6D895D43
    2024-10-14T13:51:21 8220108 7 10 [...].26.22.[...] 2B62B098223B40F998BB96AB79D69E04
    2024-12-19T11:41:08 8220142 13 10 [...].242.139.[...] 2B98F554228B4C6DBE329096E0E5ED11
    2024-11-21T15:31:39 8230145 16 10 [...].210.253.[...] 2BA4834D6B8C4EBDA2457646A82A50E4
    2024-10-20T14:39:09 8190304 14 10 [...].217.176.[...] 2BA9415C0FD649DDB2F43B317D7F4AEE
    2024-11-05T00:29:09 8220149 4 10 [...].217.175.[...] 2BBD3DDE85504B1D9FD7EE32FAA01595
    2024-10-23T12:44:06 8220228 3 10 [...].103.47.[...] 2C05525C7073443A828FEB688509A861
    2024-12-07T16:45:13 8230069 9 10 [...].75.26.[...] 2C3BB5588A18477B8A0D6AA60275FEB6
    2024-10-17T18:42:15 8230247 2 10 [...].26.18.[...] 2C6318718F43442C94F44A71C78A5B37
    2024-10-26T20:31:20 8230120 2 10 [...].74.9.[...] 2C6B4658BAFF4AE8BEB8996AD67B41B3
    2024-12-15T19:40:35 8230012 8 10 [...].74.14.[...] 2C7EDDE13053456CB03CB89771A36CE0
    2024-11-03T20:27:01 8230102 4 10 [...].130.135.[...] 2C91B518F6AE48359B9BB8E081E06185
    2024-10-14T10:44:12 8230019 1 10 [...].86.152.[...] 2CB99403BE504004B814BFA7F613A7AC
    2024-10-25T12:47:07 8230156 4 10 [...].49.132.[...] 2CD04E59476646D6AF2E525344BDA1DA
    2024-10-18T20:04:36 8230063 2 10 [...].242.187.[...] 2D08A8CC0E6C49E0A905164AD4F8EBFE
    2024-10-10T11:51:15 8230077 1 10 [...].74.54.[...] 2D4842E42D4449658909045976E15B60
    2024-11-24T20:02:19 8230245 16 10 [...].4.76.[...] 2D895E28C5314478928E10B82B5CF234
    2024-10-30T12:41:56 8230057 5 10 [...].59.225.[...] 2D9000DF343D4501A211FBB917319C2D
    2024-12-11T00:31:50 8230165 7 10 [...].203.234.[...] 2D977CEFC7EC4C87A0C8F096F52C4B0E
    2024-12-01T00:13:08 8230105 12 10 [...].73.112.[...] 2DC4C30077714BCBBF4757EED391D604
    2024-12-18T00:46:37 8230011 10 10 [...].73.127.[...] 2DD1298C70E7499E8BB0C57BF9110900
    2024-11-05T17:47:03 8230103 5 10 [...].66.136.[...] 2DD50D9B33094383A1E511D735DF7BC9
    2024-11-02T15:48:08 8220007 11 10 [...].217.172.[...] 2DD58B4469C24653AA6F93CD426A4715
    2024-12-14T13:13:54 8230045 7 10 [...].73.123.[...] 2DD5D59548014F6882C29A611210C7BA
    2024-11-24T18:20:26 8190333 16 10 [...].168.0.[...] 2DD75D3CE15249C1AC78E5F1C66CA49A
    2024-12-04T18:37:00 8150188 9 10 [...].177.237.[...] 2DE2A41C4CBF4D8A9FCB700276E2D134
    2024-10-12T21:56:56 8210163 1 10 [...].168.1.[...] 2DFAD356FCAE42369089FAD099B31F54
    2024-10-26T19:57:55 8220148 3 10 [...].86.9.[...] 2E56FB41430C48F69FC0FCFE15F8C0EB
    2024-12-18T23:54:24 8230123 10 10 [...].74.19.[...] 2E5E71A700F0473D98DF1DD753D6DA56
    2024-11-17T15:04:54 8230069 6 10 [...].202.124.[...] 2E67AB973BE148C79A42D448E9D9843C
    2024-12-12T17:13:25 8220029 4 10 [...].54.144.[...] 2E9A56C514924B3F9A4EAAF650D2F58B
    2024-12-08T21:07:41 8230120 7 10 [...].74.33.[...] 2EA706C9B6FF4165B613AB8D9D57AF17
    2024-11-21T00:26:00 8230071 16 10 [...].210.61.[...] 2EB23EB70E374B64BC78AB9D23D4B86E
    2024-11-25T20:31:00 8200066 6 10 [...].168.0.[...] 2EB273932127423F8E4FE5D4CD71CDA2
    2024-10-17T20:05:00 8230114 2 10 [...].73.16.[...] 2EB68DE81257404AAE61AC80CC746BDE
    2024-11-14T17:12:08 8220142 6 10 [...].168.0.[...] 2EBC85F1CC50423EB43E5B092869A341
    2024-10-19T22:34:01 8220085 2 10 [...].107.160.[...] 2EEF9D392DCF4710857B3FD05B7C0884
    2024-10-15T22:10:08 8230134 3 10 [...].242.186.[...] 2F78B6D79E084A918EBD78F4735F1241
    2024-11-19T12:54:29 8220169 16 10 [...].87.218.[...] 2F9EF48695834FDFA03569CF460984F1
    2024-12-06T11:43:14 8210219 12 10 [...].168.1.[...] 2FAD3615249F4D50AEE6890725676E08
    2024-12-10T16:12:29 8230075 7 10 [...].70.168.[...] 2FB0D651BFA8464BA3EAFD942C631A10
    2024-10-30T17:38:32 8230097 4 10 [...].26.30.[...] 2FBA441F87674CC1952952F88A88E7DC
    2024-10-24T13:06:01 8230135 4 10 [...].140.90.[...] 2FD3BF8670F74022A1A88E77C07DFE29
    2024-11-09T18:25:14 8200223 5 10 [...].251.52.[...] 30125738E42843968408F53AD526E181
    2024-10-19T22:48:34 8230139 3 10 [...].140.90.[...] 301D1BC19E894B9B9B28C7ECA17FC7B1
    2024-10-25T16:25:18 8230053 3 10 [...].74.27.[...] 30251DD0532E4A32ACD2FF88DF2D3F43
    2024-10-25T15:20:24 8230224 3 10 [...].86.123.[...] 3053ED3CABDF4488B62D0BF68A221F50
    2024-12-11T22:56:12 8190332 17 10 [...].107.113.[...] 3082619DC0A54E27AA551F084D3D4773
    2024-12-14T23:50:44 8220145 10 10 [...].72.171.[...] 3082D5C539B54401B80A9A9D994665CC
    2024-11-30T22:43:30 8230170 5 10 [...].86.31.[...] 30B7A557FA7943BE8BA519DD8BB1F9E3
    2024-12-05T22:42:09 8220036 9 10 [...].178.253.[...] 30EBF9EE4D334854AB6D9D524C25D775
    2024-11-17T22:13:47 8230124 6 10 [...].178.235.[...] 30FA0FC6E4C441FFA1ED46E8ABC553D0
    2024-10-30T22:48:53 8230147 4 10 [...].217.161.[...] 30FD5A63FB8443289F154113967E5B46
    2024-10-18T10:10:10 8220230 2 9 [...].6.104.[...] 311E38BF703744EEBCF89B26F7162891
    2024-12-18T13:46:07 8220070 8 6 [...].74.8.[...] 31384D512C0B4234B222488D5F2CDE46
    2024-11-24T02:31:50 8220014 6 9 [...].103.40.[...] 3144306FC48A4E168CEE38A925363BBC
    2024-12-14T20:36:22 8230144 8 10 [...].1.100.[...] 314CFB883EA04D3890FF625824526B49
    2024-11-23T08:32:06 8230217 16 10 [...].203.156.[...] 31BAE599D8644445919182CA2E8D250A
    2024-10-19T02:29:58 8230079 3 10 [...].6.110.[...] 31EBB3EA28ED4BF3B7B8DE453B152E35
    2024-11-09T21:01:53 8170017 10 10 [...].87.194.[...] 320853CDB6984EB48D4B933D1BF123C5
    2024-12-15T20:03:20 8230093 8 10 [...].86.152.[...] 32099D18590049B19F314A3A82F96409
    2024-12-07T18:51:01 8230019 7 10 [...].86.152.[...] 321870A11E004567B9B0CE77ECD5CB96
    2024-11-02T02:54:54 8230150 3 10 [...].66.136.[...] 32333F57CE5E4E79810DBC99D407133D
    2024-10-12T23:07:48 8210163 2 10 [...].168.1.[...] 32BD23FD56FA4BE2B82221E8241E83E3
    2024-10-30T13:55:38 8210226 11 7 [...].26.10.[...] 32CA7A6CDD264EADA0588F7D63C211FC
    2024-11-01T17:40:41 8230155 2 9 [...].131.230.[...] 3331BF32CEA84F238AE163ADC745CD16
    2024-10-31T22:25:43 8230007 4 10 [...].75.76.[...] 333D8B9E3E5049B0BB9CB9E0FBEEEE68
    2024-12-04T23:53:42 8230044 9 10 [...].190.4.[...] 338011C57BCB4BC28FAC4080F014E34E
    2024-11-06T09:50:34 8230022 5 10 [...].169.211.[...] 3382C6639E5B4645B0D393E239E94BDA
    2024-11-07T23:01:40 8230036 6 10 [...].74.60.[...] 338696F30F4B4238A44EF7A8D5AB17EB
    2024-10-24T23:56:40 8190238 1 10 [...].129.191.[...] 338EDF22562E46EFA646176F96B3EFE6
    2024-11-26T18:10:04 8230122 12 10 [...].69.25.[...] 338FCD0124F74160988E8681CD73A0A9
    2024-11-21T13:31:48 8230008 16 10 [...].84.227.[...] 33A26FD73AF4446A91D2A326A10105EA
    2024-11-01T13:14:19 8230005 5 10 [...].69.184.[...] 33CFA8FCA65A4A53ADF9DBE62B04B5FB
    2024-12-17T16:38:40 8230218 10 10 [...].26.40.[...] 33D3CF478ADF4BD583076164D5B99F02
    2024-10-16T19:57:14 8220156 6 10 [...].65.113.[...] 33F23B34116E46EDAC78A9DF0C85F3D4
    2024-11-05T15:47:24 8230155 3 10 [...].129.228.[...] 341FDEB154864989A9DD4C870347F9DD
    2024-11-08T18:05:06 8220141 6 10 [...].26.64.[...] 34A13A57213744079067D6699BB9487A
    2024-10-22T22:54:48 8190304 17 10 [...].217.176.[...] 34AA5018D93541ABB07060DE81E4C916
    2024-11-04T21:21:02 8230023 6 10 [...].58.192.[...] 34AD65924B944936A64D737B126189BC
    2024-10-11T14:18:14 8220149 3 10 [...].168.0.[...] 34C0EDF7569C411684F6E4584CCA7BA9
    2024-11-04T18:36:23 8230246 5 10 [...].130.252.[...] 34D1E0332A0C49C89B4C187473BB8B31
    2024-10-15T18:04:19 8230134 2 10 [...].242.186.[...] 34D683795C5B44EAA74218BAE05F8FEE
    2024-11-19T21:56:33 8230021 16 10 [...].246.176.[...] 34E0296872D84CAC91F5E3A966489CE0
    2024-12-07T18:44:03 8200168 12 10 [...].166.86.[...] 3509515625EC4A97BE26E016F08DDEA2
    2024-11-14T15:34:12 8150188 6 2 [...].92.185.[...] 3517125CF4914C27A6C54CB39F35E3E3
    2024-10-13T03:01:02 8230058 1 10 [...].210.98.[...] 351F43FAB1E5426892AD7072EEE6331C
    2024-10-28T17:47:28 8200095 3 10 [...].168.0.[...] 35351A33534A46B1B4C010F4347CDC9B
    2024-12-15T19:31:26 2210175 8 10 [...].54.148.[...] 353681D833904D5EB1A878A08336B95A
    2024-10-11T14:20:55 8230010 1 10 [...].246.185.[...] 3546F3B668E54608B42ECE47AC4DAFD2
    2024-12-03T15:29:51 8220068 2 10 [...].14.243.[...] 35782651EDCE4E558A7353DC42F3167D
    2024-11-19T01:17:56 8230231 16 10 [...].167.176.[...] 359893874F464170A60C9F819DC09B0B
    2024-12-06T14:46:16 8230050 7 10 [...].6.1.[...] 359DB8E129314E9AB8B6D507C924DBF0
    2024-10-25T16:17:54 8220110 3 10 [...].84.22.[...] 359F5324082C423590FAA4D729DFD643
    2024-12-14T13:07:21 8230007 8 10 [...].140.12.[...] 35BBB35FA9224DCFA559A28EB6C3A470
    2024-10-31T13:52:08 8230114 5 10 [...].87.226.[...] 35CDA18E99E8452FAF73DE56BD0FB755
    2024-10-21T20:53:25 8220086 4 10 [...].168.0.[...] 35DC1C3E9EBF44E49E9421BC92D7528A
    2024-10-27T13:47:19 8230114 4 10 [...].87.226.[...] 35FF72EB24354B8F9BB90AA53ED96471
    2024-12-08T23:47:17 8230217 7 10 [...].210.95.[...] 3621F8EB6097467785D41F2AE49CC644
    2024-11-23T17:40:29 8220152 6 10 [...].66.136.[...] 363E7DC2641C49E3948F03F25797F058
    2024-11-24T17:43:46 2210175 6 10 [...].176.157.[...] 364BE9A8F3054C4191710D7A6F244A13
    2024-10-30T23:16:41 8230027 6 10 [...].251.121.[...] 3654C3E10FBD4B19B49AB5DF5B071D5A
    2024-11-05T11:12:35 8190378 5 10 [...].58.139.[...] 36ACF4D2ED4844E9891AFC177872B1B2
    2024-11-20T00:15:26 8230023 16 10 [...].58.193.[...] 36E82FA2EF9F4BD8A9CEF28ED8772215
    2024-12-15T20:38:21 8230124 8 10 [...].86.31.[...] 36E98B100D5D44D2802F4F71BD5F7AE4
    2024-12-15T20:15:31 8220112 8 10 [...].87.115.[...] 36F7F3F47D0440238CB4004D34D8AE58
    2024-12-15T16:07:12 8230061 8 10 [...].251.255.[...] 372AC5DC8E8B4DA0B7562CD6F965E9CB
    2024-11-21T15:27:09 8230159 9 10 [...].73.230.[...] 375EA3D918D04434A09F876FAAE2E056
    2024-12-15T15:10:55 8230151 8 6 [...].28.98.[...] 37AEFA98FE8C49A794E3040C582A1204
    2024-12-14T00:00:53 8230063 8 10 [...].58.192.[...] 37B826F3C5FB459994D1E9E0D1128657
    2024-10-17T19:03:36 8230031 4 10 [...].84.23.[...] 37D62A988621457C9DE0128F462A9A10
    2024-11-02T19:28:16 8230014 4 10 [...].49.236.[...] 37F865645D574AA0AF08CE883BA3FFC1
    2024-12-07T13:37:55 8230047 7 10 [...].84.201.[...] 381530850378456E90D8590F8240ED59
    2024-12-07T18:27:38 8190338 9 8 [...].65.170.[...] 381C299170E145F095C8505FB310D8E4
    2024-11-10T18:21:42 8220131 6 10 [...].74.252.[...] 386600DE62514E9694FAEA37A3CCE1DC
    2024-10-19T19:57:26 8230154 6 10 [...].92.162.[...] 387B1DED12214F66BE72EFDC602BBFCF
    2024-11-10T20:43:22 8220145 6 10 [...].87.88.[...] 388EAADB38974A9C88E6F1A3E9441259
    2024-11-10T13:35:40 8190238 5 10 [...].130.246.[...] 389405115B94440EB9B689EF2A4F8272
    2024-12-08T17:10:41 8230067 7 10 [...].251.255.[...] 38A14294C4044169B589AC465048E5A6
    2024-11-04T20:16:49 8220105 12 10 [...].4.66.[...] 38AADE3273284973AA7AE39CE0237C11
    2024-12-14T03:48:26 8220145 8 10 [...].72.171.[...] 38DEA07AD2BA4EB2B83BB92D8E7C5DA2
    2024-10-23T11:56:30 8230144 3 10 [...].49.227.[...] 38F1A147C2054803906C213CDE4C67B3
    2024-10-12T18:34:07 8230106 1 10 [...].58.195.[...] 38FEF2D83FF64A27A20A63977785D09F
    2024-11-04T15:41:46 8210087 5 8 [...].26.18.[...] 3907D9C9F1914F2E93C0B0DC01A5FB1D
    2024-12-01T20:59:27 8190333 12 10 [...].168.0.[...] 390ADBFE47714FF38DD386FD9609B837
    2024-12-01T21:20:03 8230027 12 10 [...].251.124.[...] 3919B1794C294F41BA9EE2711D922E5C
    2024-10-10T22:47:50 8220007 5 10 [...].166.35.[...] 394D3398CCED49519C3AF8418362E3A6
    2024-10-15T12:23:13 8230159 2 10 [...].74.12.[...] 3957A534C841490B9F32AB04BB175CAA
    2024-10-23T12:10:13 8230246 3 10 [...].70.74.[...] 3973127D713542FAAD95DD018BE29EE9
    2024-11-10T21:01:04 8230244 5 10 [...].86.152.[...] 397D9910C4BE420DAB2C02491ECD74A2
    2024-11-14T14:04:31 8230030 6 10 [...].131.254.[...] 398F3C7DFCD746B5A6C2DBAA168ABAA0
    2024-10-21T11:28:57 8220046 16 10 [...].26.43.[...] 39915D1F62CD477BBED08D8E4B7D1D68
    2024-11-04T16:28:01 2210175 5 10 [...].140.30.[...] 39924BC5BFAC4529B2D9B2ADB6767A7B
    2024-11-02T13:26:30 8230025 4 10 [...].73.116.[...] 399C2B95437141A7B51310AEAEB08A71
    2024-12-06T14:43:21 8230221 12 10 [...].59.80.[...] 39A63FFC9F9D457BB47AA2C7E290D376
    2024-11-22T17:09:58 8190376 6 10 [...].131.255.[...] 39AF7B2D80944B7D8C90653AF8987241
    2024-12-15T18:26:55 8220044 8 4 [...].87.107.[...] 39C6DB81F1214F07B1B119588682951C
    2024-12-10T19:27:27 8230010 8 10 [...].4.48.[...] 39D5D9773D2C49D5967B0DA29270F756
    2024-10-26T16:36:01 8230064 3 10 [...].72.62.[...] 39E2D711532341B1A32C7252B415842E
    2024-10-22T00:44:29 8220057 3 10 [...].217.161.[...] 39F4C9D3C95B4BF3AA13C7E724669A28
    2024-10-17T11:51:12 8220007 7 10 [...].26.43.[...] 3A2EA488F7E04AA7AFD4E968482B6794
    2024-11-10T19:16:20 82000464 5 8 [...].177.77.[...] 3ADCEB19DF19460080F0259171252A97
    2024-11-24T17:46:08 8190333 6 10 [...].168.0.[...] 3AF4D0DC79A348BDA1F61B1034FA43F5
    2024-11-11T22:36:58 8230010 6 10 [...].49.160.[...] 3AF984C0E2D64518BA65CDA7F856CCAE
    2024-12-07T19:05:48 8230001 7 10 [...].1.136.[...] 3B0BE7714A58459C90E09E17B2ACF28D
    2024-11-02T12:41:46 8230217 4 8 [...].92.141.[...] 3B34B49D18FC4216A81D1A67FD9F2F7D
    2024-10-14T23:09:20 8230013 2 10 [...].74.59.[...] 3B3EB718FEA54B06ABFA1DF2F1BC662D
    2024-10-22T20:02:15 8210087 3 10 [...].1.114.[...] 3B4DA5603ABA4E02A0C4990ACEA5D277
    2024-12-10T19:02:24 8230163 10 10 [...].242.185.[...] 3B789F27E868438F8A294676B4C0EB1A
    2024-11-10T15:36:57 8230245 5 10 [...].103.39.[...] 3B7B7FE9CA2D4A78B5D9D92A7220E651
    2024-10-14T18:48:22 8230006 2 10 [...].140.44.[...] 3B883908A65442FC9C93F79E79A72625
    2024-10-28T17:13:17 8230045 3 10 [...].73.124.[...] 3B8B7034EB9048F1A6F93BF46978DAF9
    2024-10-13T21:42:06 8220071 2 10 [...].74.158.[...] 3B8BE8AF9EA64C5C9A210D79765A3227
    2024-11-15T17:28:13 8150025 2 10 [...].66.136.[...] 3BA6BBD74BC846509CAB15F9523070BC
    2024-10-22T20:23:37 8220152 5 10 [...].66.136.[...] 3BB87DF6827E49109DC260FB7A50C9C5
    2024-10-27T22:46:25 8230218 3 10 [...].74.9.[...] 3C18DEECAFBD485FB469E4DC1AAD70C5
    2024-10-11T13:37:11 8220156 4 10 [...].131.12.[...] 3C3D0C6AEF124E4E9A7B194C935E431A
    2024-12-05T18:37:27 8190238 3 10 [...].75.58.[...] 3C4CF2B55095486D88C237A72768B9EA
    2024-12-17T15:53:12 8230136 10 10 [...].86.15.[...] 3C525F1EC2C64B9D81FE627640D0CC97
    2024-11-24T17:08:04 8220152 16 10 [...].66.136.[...] 3C990E9648D1408CBE6D13C6BECBCF3A
    2024-10-12T12:35:47 8220152 1 10 [...].66.136.[...] 3CCA207BD8A64BC3BC9D5B43197ADFA6
    2024-12-17T18:36:14 8220142 5 10 [...].55.123.[...] 3CD28736046D4AC0B29FC014B77B3B84
    2024-12-10T00:10:14 8230088 7 10 [...].168.0.[...] 3CFB67BB78214DE8AB490B2EBA6C1FC7
    2024-11-28T20:02:56 8230117 6 10 [...].167.38.[...] 3D1A426FCD38444DBE29A1DDE2AD9EB9
    2024-12-02T21:34:12 8230218 15 10 [...].74.60.[...] 3D2DC4E295CE40D997D6D67AF2227C06
    2024-12-07T01:35:45 8220042 16 10 [...].168.0.[...] 3D42C72FF6674FC49798EAEB91A044D9
    2024-11-08T08:43:43 8220114 6 10 [...].242.184.[...] 3D4806291F9A4B69945B6E8D493E1D4F
    2024-12-05T18:30:49 8230143 9 10 [...].203.113.[...] 3D516E929C4E4AB9ABC52BDC9ADAE851
    2024-12-01T22:49:36 8230138 12 10 [...].4.87.[...] 3DB50CB74BBC483794070E2B18E655C9
    2024-10-24T12:33:35 8220007 8 10 [...].55.70.[...] 3DBAE8137F394A34845E52500F5D18EB
    2024-10-21T19:55:49 8230066 3 10 [...].86.254.[...] 3DBC840027E64553B3F5940B4CF7A940
    2024-10-16T21:20:04 8230079 1 10 [...].6.108.[...] 3DD9D5F9673E47649544871CC7A449EA
    2024-12-04T21:07:38 8230224 9 10 [...].74.186.[...] 3DDAA0FAECF84C65971A1965EE65417C
    2024-10-28T23:16:23 8220036 4 10 [...].178.164.[...] 3DE3620A5C05444082DD1E1702358E1D
    2024-10-18T20:43:16 8220148 2 10 [...].86.9.[...] 3DF9537181074A9BB926008B14EBD305
    2024-12-03T21:55:06 8230227 12 10 [...].66.136.[...] 3E33092B06B4414D866730F7BCA0B881
    2024-12-01T16:41:33 8230025 12 9 [...].73.127.[...] 3E5617247E0C4DED881A1A088F96CB0D
    2024-10-15T18:32:55 8230043 2 10 [...].251.255.[...] 3E5C2A3C7FD44F0083985D28A637888A
    2024-11-27T13:34:27 8220221 1 10 [...].66.136.[...] 3E62C5C419F54F65BCB2B5D553450AB7
    2024-10-18T12:02:24 8230122 2 10 [...].203.204.[...] 3E7D6049B17E49A5B4AE69D5DD7B9C61
    2024-12-19T13:18:45 8210219 10 10 [...].168.1.[...] 3E7FEBEA563D4103890702DBDEE72DED
    2024-11-09T20:13:42 8190238 2 6 [...].130.246.[...] 3ED8F1EF118844549260427F9E862309
    2024-12-09T20:57:51 8230143 7 8 [...].203.113.[...] 3EE5C106ABBE40E2AA40839BCBF60DE3
    2024-10-07T21:44:14 8220053 1 10 [...].217.161.[...] 3EEB1FEF229F4E3BB49642DB8F826500
    2024-12-01T20:55:10 8190091 12 9 [...].72.194.[...] 3EF6B95FC5724864B6C502C7DECB3E1C
    2024-10-26T20:54:15 8230224 4 10 [...].86.123.[...] 3F39847FD9C246A38A7D35D44CFFBD0B
    2024-10-21T20:19:39 8230028 4 10 [...].130.230.[...] 3F4F1001142149529A2B3DDE79B2E471
    2024-11-14T12:02:02 8230114 6 10 [...].87.226.[...] 3F5F6CD86AE14074ADCFA4BF45AB03E8
    2024-12-14T15:51:10 8230067 8 10 [...].167.114.[...] 3F9A5DBC2CAD4C29B9E0BA1D2A73F2F0
    2024-11-26T20:23:41 8220142 16 10 [...].107.37.[...] 3FB9393642D743739BCC9729D0A7E127
    2024-10-15T21:47:24 8230157 2 10 [...].217.175.[...] 3FCC933167EF4F16A8F438FEB485EE3B
    2024-12-07T14:42:43 8230156 7 10 [...].49.113.[...] 4012A28DAE10499DA19AAAF50A600573
    2024-12-05T17:10:59 8200066 12 10 [...].168.0.[...] 403CAABAFA7D4E869060BDE97A659139
    2024-10-10T21:50:22 8220007 4 10 [...].166.35.[...] 4073B79828E9428EBC5255FE3AFC777C
    2024-10-13T01:35:01 8220149 15 10 [...].168.0.[...] 40A906A328C749ADAC501E9B3EADB3E9
    2024-10-25T19:27:25 8230129 4 10 [...].65.88.[...] 4103E23DE6DC48A28AD70C8A6CE7BA78
    2024-11-30T15:16:02 8230050 12 10 [...].6.2.[...] 4115FC1CC5BD4868A79F9502FA21BE83
    2024-11-22T15:30:20 8210087 7 10 [...].129.15.[...] 4119857F17124854B5200C54C3B3D3B0
    2024-10-22T23:52:29 8230129 3 10 [...].65.88.[...] 412888CCEBB245EF9EA7C39A0BEE3870
    2024-12-01T20:30:18 8190091 16 9 [...].72.194.[...] 41686882832B474F8A56BB510EAB4F1A
    2024-11-30T12:24:41 8230029 12 10 [...].86.132.[...] 416A95C487444B2CAE2149F56BF6B7B1
    2024-12-01T14:47:03 8230231 12 10 [...].255.22.[...] 418D1EF42AB24B0C95BF5D6F6F398847
    2024-10-14T14:11:24 8230001 1 8 [...].74.15.[...] 41A51BBE294141E09B6C43C1CD5D5A90
    2024-11-14T02:29:18 8230164 6 10 [...].167.110.[...] 41B149ED3FB24B288898312F486E790C
    2024-12-15T21:27:57 8230001 8 6 [...].1.136.[...] 41C155562841488998A87263379B3515
    2024-10-11T19:11:30 8230039 1 10 [...].166.67.[...] 41C8448FE69140DDBAE862C902915FD4
    2024-11-20T23:23:30 8230224 6 10 [...].74.222.[...] 41C9B763D08741B0B8037654F74814EE
    2024-11-05T20:50:12 8230023 7 10 [...].58.194.[...] 41D5CAFB9D0148579FBB97A9D4CEEA4E
    2024-11-03T11:34:16 8230218 4 10 [...].74.13.[...] 41DDF340D4A442CBAD14E42B97D7C41B
    2024-10-15T18:19:23 8220231 2 10 [...].140.32.[...] 41E3590127F84FD185E36B2BC8FF297D
    2024-10-17T00:31:04 8230148 2 10 [...].202.117.[...] 422E10D4402E4E44AB7621446B2F8915
    2024-10-14T21:56:43 8230021 2 10 [...].246.176.[...] 4275AF776A544BADA72B92FDAADF44AF
    2024-12-08T23:28:18 8220230 7 9 [...].210.241.[...] 42D245F097D0480D9C9D5EA37C4E0AB7
    2024-11-24T11:15:02 8230045 6 10 [...].73.124.[...] 42D5C5EEE8E24553ACD6B7832DDBA2E3
    2024-12-05T18:52:49 8190238 10 8 [...].75.58.[...] 42EB92E71E8942C9ABA51382238D64BA
    2024-10-14T20:34:33 8190381 1 9 [...].237.203.[...] 43101CC72E4B4F6D87A78419E923225D
    2024-11-04T19:27:14 8170204 1 7 [...].65.116.[...] 43140D05913D4FF88A9F13A54B4D7091
    2024-11-09T00:58:09 8220149 18 10 [...].6.178.[...] 4325C9E99D79428DB4BB3A72D0ABE0B6
    2024-10-27T17:28:38 8230065 4 10 [...].176.151.[...] 43590EDBFD9F40369C2B3B7398125F8A
    2024-11-19T21:01:09 8230089 6 10 [...].66.64.[...] 43738A7FA06D40048B9C60F442EB36CF
    2024-12-06T17:05:23 8230061 9 10 [...].251.255.[...] 4381908543274B02BDC5351C1D05C76E
    2024-11-29T18:41:13 8170017 12 10 [...].73.1.[...] 438B87C161C94256A0A21B9C73A9243F
    2024-11-14T17:04:10 8230071 6 10 [...].166.109.[...] 43DD8C3C554D4EE2B303BB66AB016F8D
    2024-12-09T10:27:22 8230227 16 10 [...].66.136.[...] 44147E9C041C42CA99D414FDE9C6F872
    2024-10-25T12:32:50 8230142 3 10 [...].87.25.[...] 4422D29C13F747A28AEE275FAC1D25DB
    2024-12-18T15:03:53 8230042 10 10 [...].26.5.[...] 443CA1E2EFFF4AB996650B086D5B234A
    2024-10-23T15:02:21 8230070 4 10 [...].26.4.[...] 4456A97B0F7C4F9DBB8766C5FC05085B
    2024-11-04T23:37:56 8230037 5 10 [...].64.49.[...] 4476CA5725D84454AC33F8C40688E56F
    2024-10-22T22:41:02 8230057 2 10 [...].210.232.[...] 44859B3EBF4047DFA70A77C40195E0CB
    2024-11-09T23:01:54 8230138 5 10 [...].4.227.[...] 44C2697C76244DCC82EBF67FDB4F7FA7
    2024-10-23T23:34:09 8230116 3 10 [...].49.74.[...] 44C3D969FB864DADA62CDE7D5F8A4807
    2024-10-26T18:51:46 8230010 3 10 [...].49.179.[...] 44D28405CF1C498DB7DEE04E2B86150F
    2024-11-13T18:29:19 8230070 7 10 [...].217.161.[...] 44D38243B82047BAA88F91A89D27CDE5
    2024-11-03T15:25:52 8190381 4 10 [...].237.222.[...] 450E6F53EC8B434AB3960A32434D5ED4
    2024-10-23T14:14:04 8230244 4 10 [...].86.152.[...] 453F422BD6474A9FBB58DFCAFEA0B351
    2024-10-22T14:41:31 8230089 3 10 [...].84.16.[...] 45504D11B32243DA9D997694EE565B0E
    2024-12-06T20:53:51 8230066 9 10 [...].86.251.[...] 457BBB3C22DE40BB932D9582C51B09B5
    2024-12-10T21:52:15 8220142 10 10 [...].107.37.[...] 4598AD0E2673418895F735FB423700A0
    2024-10-24T10:49:43 8230042 3 10 [...].49.79.[...] 45CD029576534E74ACABC1BE085EE72A
    2024-10-22T17:15:57 8230157 3 10 [...].217.175.[...] 45F2061F6C0340EE87D74B908D262A9B
    2024-12-02T02:20:43 8220114 12 10 [...].140.91.[...] 461AA2D2E4174FA1888099C80E2E2E63
    2024-10-18T16:57:41 8230044 2 10 [...].107.189.[...] 4639066B09734F309B632B9925A1ADA3
    2024-10-14T13:32:14 8220046 5 10 [...].26.43.[...] 464E4651F6BC43098794DB614595AA35
    2024-12-10T16:08:43 8230078 7 10 [...].251.255.[...] 467C47DDD987400DB2566D304BC1D54E
    2024-10-15T20:56:12 8230033 2 9 [...].43.46.[...] 467CC3F9DD0E416886B89093412A41F2
    2024-10-29T19:17:55 8160117 3 10 [...].217.161.[...] 468F934E215F48D2859F783CB6DD50EA
    2024-11-06T23:01:37 8230155 4 8 [...].129.228.[...] 46BAB7E3686D4014AF01B6EE098F2557
    2024-12-11T02:12:22 8230168 7 10 [...].225.135.[...] 46BF1D3CE07F4D04ABC127CA2EF64145
    2024-11-25T17:26:18 8230007 6 10 [...].26.5.[...] 46D3EC7FC33D4FD48636A5AF813BB451
    2024-11-01T17:21:18 8230122 6 10 [...].129.234.[...] 46EC92B44DFC4E5096DD364DF4873E50
    2024-10-11T17:39:31 8230063 1 10 [...].242.185.[...] 46F35D8D3FAE4FA18BB1EFDE5E59EE49
    2024-10-23T18:01:19 8230017 2 10 [...].235.108.[...] 47054E09985B4F408AAE6FA43E226589
    2024-12-12T20:22:53 8230157 8 6 [...].217.175.[...] 4766A6D5C19A42BE897F477DD949F80E
    2024-11-10T17:12:47 8230167 5 10 [...].86.97.[...] 47D00DF218C44250A8DABD34D6C4B56B
    2024-12-08T22:07:40 8220131 9 10 [...].58.227.[...] 47E25A5872434ABE927D4A75DAF29A53
    2024-11-12T21:37:25 8230085 6 9 [...].217.161.[...] 4811DFB770844ABFA9C58ABFD15E5271
    2024-11-10T22:27:33 8220085 5 10 [...].107.160.[...] 4817B350667A4B2A9E82D304028D6E94
    2024-12-07T19:24:57 8230019 9 10 [...].86.152.[...] 48357ED804874EEA9D9D3E00E1CB0A6C
    2024-10-09T13:11:51 8220007 2 10 [...].26.43.[...] 487E60A03BCE4165ABE598F65486994F
    2024-11-30T15:56:13 8230057 12 10 [...].92.142.[...] 4885A8D441CC40A58685B0D5E4A02CDF
    2024-11-26T17:54:59 8230077 12 10 [...].242.139.[...] 48948ECB766F4DB198FD2A6E2C8742DB
    2024-11-17T13:15:50 8230018 6 2 [...].54.3.[...] 489F819B84BF4D1398EB86486C6BD37E
    2024-10-24T14:37:28 8230057 3 10 [...].26.37.[...] 48E10B45DD954E52BEC9B4D30D0530A7
    2024-10-11T02:58:16 8230006 1 10 [...].140.44.[...] 48E31B069E274EE4870B660E726B70AB
    2024-10-16T16:39:30 8210219 2 10 [...].168.1.[...] 48E5382470034E378F325B602DE829F5
    2024-11-30T17:06:54 8230113 12 6 [...].65.112.[...] 48FB8F735C664D559AFFEE1ADCD65A4B
    2024-11-29T15:51:35 8230139 12 10 [...].140.91.[...] 4908A9B153AE450CBF1C0FEBB3D33F10
    2024-12-01T14:05:12 8230016 7 10 [...].168.1.[...] 4929DA068B1345CE81DECEE655D132F3
    2024-10-11T14:31:53 823143 1 10 [...].66.146.[...] 496D515EB8B34D33B9C8C0ABBAF5B1E7
    2024-12-01T22:50:47 8210163 12 10 [...].168.1.[...] 498D90700A194368A6E5BE513BFB97B0
    2024-10-11T23:51:41 8230059 1 10 [...].6.2.[...] 49B5CB442CBD469A8E322998C5C3F91F
    2024-10-18T00:56:26 8220145 3 10 [...].87.88.[...] 4A08A4EE05C249108834C8F3BC433CC7
    2024-11-26T20:17:07 8220131 16 10 [...].174.23.[...] 4A22FCDA32904B1D894BA7D88B11F3E5
    2024-10-12T15:42:03 8220016 1 10 [...].168.0.[...] 4A27527BE7A94A788CD5FBEF6BCFEB06
    2024-11-21T16:42:51 8230018 6 10 [...].26.22.[...] 4A29755DE8724D08B86645EEAFB85369
    2024-12-06T13:56:54 8230103 7 10 [...].66.136.[...] 4A54E282932C4E16BED4A4CEE6EDAC8C
    2024-10-18T16:03:01 8230074 2 10 [...].71.4.[...] 4A6E1E804DB140E5A17A44ABE807D59F
    2024-10-14T12:18:40 8220046 4 10 [...].26.43.[...] 4A805E9626E3494EB869CFDC055F84FE
    2024-10-22T01:10:18 8230107 4 10 [...].65.127.[...] 4A8A173EA49845CA8E0F3DB27E7DD745
    2024-11-26T20:38:42 8230125 12 10 [...].70.73.[...] 4A9130E15CFE4CB28BDBE8E519AE62D4
    2024-10-20T18:42:00 8220071 5 10 [...].74.158.[...] 4AEEFD139A0044B8906B6C86924B4858
    2024-12-05T18:48:21 8230136 7 10 [...].86.15.[...] 4B0269179A0F45B5973915A920E562E5
    2024-10-23T11:13:42 8230148 3 10 [...].202.117.[...] 4B4DFAC601C54D13911E98847A348C9C
    2024-10-30T13:18:39 8230057 6 10 [...].59.225.[...] 4B65C97904D044BC93380B0CE6D9302B
    2024-12-16T20:03:30 8230114 10 10 [...].86.206.[...] 4B73595C8989496084AB63E26C61C3F9
    2024-10-13T15:10:10 8230050 1 10 [...].168.0.[...] 4B81AE42775944D98CC671AF02236CAE
    2024-10-26T22:00:20 8230165 2 10 [...].74.62.[...] 4B89C233C937429BB171909A32EC1F03
    2024-10-17T12:38:00 8230129 2 10 [...].203.153.[...] 4B8C4CE30F874C6F9119FACBDF128C87
    2024-10-09T21:10:51 8220071 1 10 [...].74.158.[...] 4B8FC81B9F234598A1EE0447B9D48D9C
    2024-10-12T20:17:25 8230029 1 10 [...].203.190.[...] 4B934626EA1347189403AF9AB92DC735
    2024-10-12T00:00:04 8230164 1 10 [...].177.135.[...] 4BA7258F0638442A8CBBB83B9AAACAEC
    2024-11-21T13:16:40 8230010 15 10 [...].246.197.[...] 4BAB585C70EB4F6797396C077C8B413A
    2024-11-17T23:20:45 8230070 9 10 [...].217.161.[...] 4BB69F863F86409FA63B8EC976C9FE0B
    2024-11-26T19:15:08 8190301 1 10 [...].68.196.[...] 4BBCBBFF349243248AF0126168B7FEE7
    2024-10-22T18:44:45 8220136 3 10 [...].74.100.[...] 4BDD4AEC0A2F497D94CADD8BDE793B70
    2024-10-11T14:44:56 8230224 1 10 [...].72.133.[...] 4BE0A82EA8D94150940D407FF0C313AC
    2024-10-21T20:05:53 8230154 7 10 [...].92.162.[...] 4C095542BA8D40D8BA4690B794787196
    2024-11-30T20:26:34 8230037 12 10 [...].74.119.[...] 4C20A685ED4047A6A01B30E33684A9A8
    2024-11-28T14:12:56 8220221 17 10 [...].66.136.[...] 4C41087841F4469AB727A1750B16BF40
    2024-10-20T21:04:38 8230165 1 10 [...].251.93.[...] 4C50088085D848BB97D4ED8693A4DF63
    2024-10-27T15:57:11 8220123 4 10 [...].6.160.[...] 4C53E583E31145D8979B49ED4273AD3A
    2024-11-17T21:45:10 8210111 6 10 [...].6.0.[...] 4C65FCF5294341ADB5F3BE47842B86D1
    2024-10-10T14:58:17 8230105 1 10 [...].203.147.[...] 4C7697C39B1247C3AEF637D4FDEAADAB
    2024-10-24T11:59:54 8230247 4 10 [...].246.138.[...] 4CCF82160A304144A44D995C41435E44
    2024-12-15T22:50:30 8220110 8 10 [...].74.163.[...] 4CE4ED9CA7BA4A8CB3860A3C58B2FA79
    2024-11-19T18:12:55 8230013 16 10 [...].26.9.[...] 4CE7DEED9DCC4A97872C105055651D47
    2024-10-09T20:35:16 8230220 1 10 [...].71.169.[...] 4CEA87772185483D872A82F0BE25A57E
    2024-10-28T23:54:20 8220136 4 10 [...].74.100.[...] 4D238C8A3F114B8CB08F1965A4BD156E
    2024-12-02T00:01:27 8230220 12 6 [...].71.169.[...] 4D357C8494634AFF8BE27299CB4F69C8
    2024-10-27T18:37:32 8230115 3 10 [...].210.232.[...] 4D3EC9B93D2D4F3F830821289662FC0F
    2024-12-04T13:29:08 8230050 9 10 [...].251.255.[...] 4D46A4E04A4B40049F8E4E6B019156C8
    2024-12-20T15:05:46 8220229 10 10 [...].4.226.[...] 4D4BD96E008541289885FC285E342B76
    2024-11-29T11:53:34 8230035 12 9 [...].177.146.[...] 4D7F6B6B8A1D42E39FD6B70A34480C08
    2024-12-15T19:28:15 8220042 17 10 [...].168.0.[...] 4D98158CCBA440F684A5FD7630372537
    2024-10-13T18:21:13 8230247 1 10 [...].49.86.[...] 4DA1ED4BC8E54D139196457FD796EB0A
    2024-11-18T22:18:36 8190332 6 10 [...].6.72.[...] 4DA2864D52C842068470CA454A2104A1
    2024-12-15T17:34:34 8230123 8 10 [...].74.19.[...] 4DC23DD06F4C40189DE549F44C7B9E3E
    2024-10-22T23:46:02 8230052 3 10 [...].38.25.[...] 4DD3137DC15945BD892298D6E6B4B123
    2024-10-12T14:55:43 8190376 1 10 [...].86.93.[...] 4DF2886976DC447BBBEB94FFA6CD38D3
    2024-12-06T19:09:53 8230005 7 10 [...].138.148.[...] 4DFD2F4276E1489F910D00EA0333EC71
    2024-11-29T18:50:15 8230126 12 10 [...].74.217.[...] 4E3598A0031F4DF282BD807AFC8D425A
    2024-12-10T23:58:14 8230117 7 10 [...].237.6.[...] 4E3E5C254535498480F417B2ABFBD217
    2024-10-23T11:09:21 8230006 3 10 [...].242.189.[...] 4E5C9C92ACCD46A0BFA82377A749D26A
    2024-10-12T19:32:36 8230101 1 6 [...].217.161.[...] 4EA680946DF843CEA3BD9A0A40CDCB72
    2024-12-06T11:33:26 8230089 7 10 [...].84.21.[...] 4EA9F07BA85549FA980215121DABD7F7
    2024-10-26T14:45:38 8230145 3 10 [...].54.94.[...] 4F12FE02656B426A9CC2F9AD07E1377E
    2024-12-10T19:39:32 8220042 10 10 [...].168.0.[...] 4F197F0517454ECEAE765B25942278E5
    2024-10-26T12:53:16 8230104 3 10 [...].203.193.[...] 4F1ACA6E7912424984CC013BE7D338C4
    2024-11-19T19:04:18 8230134 16 10 [...].242.185.[...] 4F3D4F8C28DE47B09F2A1240F4DCD6F7
    2024-11-29T00:06:35 8230117 16 10 [...].167.38.[...] 4F3DD45A5932496BAEF0CA05F5DE5F36
    2024-10-23T22:25:20 8210163 5 10 [...].168.1.[...] 4F45EBB44269413396B5B824E4EC0181
    2024-10-12T15:19:24 8230056 1 10 [...].242.226.[...] 4F74578A95974D1A876B3ED396F3A39B
    2024-11-30T13:49:05 8220011 16 10 [...].168.0.[...] 4F98A1195D3A431ABFD597D186A9F01F
    2024-12-11T17:20:36 8220011 17 10 [...].168.0.[...] 4FBABF220BF94A16BC43DE4C18B00B81
    2024-10-26T18:16:42 8190338 3 10 [...].43.98.[...] 4FBFA872A075493DB56ED742869F8587
    2024-10-11T00:18:49 8230102 1 10 [...].130.135.[...] 4FC04B6391434AB68914C0D11EFC7A0F
    2024-11-23T00:54:24 8220145 16 10 [...].87.88.[...] 4FDE81336463424DBA3B27CE09FBC116
    2024-10-29T20:59:35 8200171 3 10 [...].86.177.[...] 4FFA8C4F65554552924D1E8927783C85
    2024-12-09T22:39:30 8220086 7 10 [...].168.0.[...] 504151CEDC444EE691572509A3A79905
    2024-10-12T15:01:09 8220149 7 10 [...].168.0.[...] 506812BED15147D887F8097F8368DB1F
    2024-10-10T18:44:01 8230163 1 10 [...].26.43.[...] 506A3BDA2C67463DA7FB74B59233DBA7
    2024-11-21T00:21:23 8230124 16 10 [...].86.31.[...] 506E434B54454E3E920948729F58A272
    2024-10-20T15:13:51 8230073 2 10 [...].71.218.[...] 50712E0AA49D4E8B9B6C143FAC31C5C3
    2024-11-20T21:24:59 8230033 16 10 [...].49.132.[...] 50777C3B5CC642FEBB4F13C1D40F5A8D
    2024-12-10T15:04:52 8230107 8 10 [...].44.96.[...] 5080E9B0633646ACBE72EC687DA306ED
    2024-12-05T12:58:27 8230028 7 10 [...].87.106.[...] 50812BA180CB4EFDB1E0CFCA64EC3536
    2024-12-12T16:49:33 8230153 8 10 [...].86.152.[...] 508E095120C44415AEF414838BA9B239
    2024-11-30T11:44:47 8230151 12 10 [...].225.135.[...] 50944DAC1A65400B86CF43FA7CBBFE12
    2024-11-23T11:11:51 8230120 16 10 [...].74.55.[...] 50C5C288999F410282AC330B4CDFF233
    2024-10-21T18:46:38 8220011 9 10 [...].168.1.[...] 50E0618CB544486199C1CCAB50014AC2
    2024-12-06T16:13:31 8230036 7 10 [...].74.15.[...] 510089C4CD6046C1AA5A4E5B63B50DF8
    2024-11-28T11:52:48 8230136 12 10 [...].26.47.[...] 5111203F450840B682D6D6334B829796
    2024-10-28T00:43:37 8190091 2 10 [...].217.174.[...] 51437A863997420094E7420C5DADB834
    2024-10-09T22:51:35 8220053 3 10 [...].217.161.[...] 5177B073E49C4C46B350C8A4FD9137A2
    2024-10-13T23:53:48 8230027 1 8 [...].49.157.[...] 51894565E302429C97FE6F2A0175BF17
    2024-10-09T12:07:32 8230125 1 10 [...].72.95.[...] 518C441E12C64D68A8C0D564E58796CD
    2024-12-05T19:45:22 8230006 9 10 [...].242.245.[...] 519279855CBE4D66881CF9BB211BFDD7
    2024-12-15T22:57:25 8220169 8 10 [...].75.50.[...] 51995E927DAB4681868C0BC0F19470B4
    2024-12-15T17:08:41 8230157 8 10 [...].217.175.[...] 519F8D502C4E4F7A9123A77F26E96724
    2024-11-30T15:50:02 8230043 12 10 [...].4.92.[...] 51A8CD5AE33B47889A28E303A6F2EE31
    2024-11-02T12:28:39 8230069 4 10 [...].86.43.[...] 51F915E6A6A942EEBE1B06F74FD3B254
    2024-10-14T11:41:13 8220046 3 10 [...].26.43.[...] 52174010E5084891B3FE91906E687BA6
    2024-11-30T16:56:12 8190376 12 10 [...].131.255.[...] 524E41B643D447D4B99697AF78ECE8B3
    2024-12-18T19:07:19 8230142 10 10 [...].55.11.[...] 5267A506FCD94AD1BF48B4E7A630741C
    2024-10-19T19:45:00 8210208 2 10 [...].131.172.[...] 526990D085244905A1ECBD8B789335B3
    2024-12-08T19:17:05 8210208 12 8 [...].131.172.[...] 527C5F2A7CAF40388CBF5A8A87452595
    2024-12-11T01:34:42 8230136 8 10 [...].86.15.[...] 52E7FDBB2A8A4DD09E217E16DC43A385
    2024-10-20T19:46:32 8230111 2 10 [...].237.18.[...] 52FA0763B1AC4E4E9A0C73B4EE2BAF20
    2024-11-08T00:36:22 8230107 5 10 [...].65.127.[...] 531C80B2392E4568B5023669F1D23A66
    2024-10-18T18:10:09 8210220 2 10 [...].217.175.[...] 531D66FC93B84FD1A206D4A15D4D576C
    2024-11-23T12:06:36 8170017 16 10 [...].73.1.[...] 5395FF8069FB44648C6A40664E4338CE
    2024-11-21T15:57:13 8230143 16 10 [...].203.113.[...] 53B54846A8314AE1945C82FB2237FE95
    2024-10-24T11:29:56 8230247 3 10 [...].246.138.[...] 53D174F28BFF4B0691F0B837E4120946
    2024-10-26T13:42:02 8190271 3 10 [...].217.172.[...] 53D195CAF2A34FE9A2F266898D1B7E77
    2024-10-09T22:35:03 8230022 1 10 [...].203.202.[...] 53DE2E2F0560485BB717AB06591AF3F0
    2024-10-18T13:21:08 8230106 2 10 [...].58.195.[...] 54135A772D7942FEAE0BF96235BDBC3B
    2024-12-08T19:29:15 8190091 9 10 [...].73.14.[...] 543E71129D4A45B0967BF300632AD80F
    2024-12-06T14:38:19 8230068 9 10 [...].75.76.[...] 543FD9952EA348CB9EB8E2257281313B
    2024-10-17T00:08:28 8230027 2 10 [...].49.157.[...] 5459860AB6BC41EBA2C0406C638705E9
    2024-12-07T17:36:21 8230019 12 6 [...].86.152.[...] 546326F541BC4B6A8EC286A4345D168D
    2024-11-01T00:02:18 8170068 4 10 [...].173.84.[...] 5469A6E9CA2747C88775F83856E5A421
    2024-10-16T17:47:05 8190273 1 10 [...].177.233.[...] 547D82B65C95424A8AA47F61724E7B4B
    2024-10-12T18:10:52 8230005 1 10 [...].203.162.[...] 547F0F429F1C426D9B13BDE09F2CDDF2
    2024-11-22T15:36:27 8230071 7 10 [...].210.61.[...] 548A7E8AB6CC4F89928432AD615C9850
    2024-10-31T22:19:06 8230154 8 10 [...].167.82.[...] 549D47A97689462F83813BCA243C5183
    2024-10-11T18:39:46 8220114 2 10 [...].242.184.[...] 54CF0DC842A345F4B484B4DC410F3926
    2024-10-16T22:15:00 8230008 2 10 [...].152.158.[...] 54DC6BD866E9401CA52D395FF3D53D6F
    2024-11-18T20:05:48 8230247 7 10 [...].16.208.[...] 54DEAE6B77FC482EA213C11F260E52F8
    2024-10-15T18:59:11 8220143 1 10 [...].177.17.[...] 54F64DFEFF714A229220DF2F75EE7A68
    2024-12-15T01:44:20 8230040 8 10 [...].87.26.[...] 5545BE93C9E442F892E0F86B15AFE765
    2024-11-24T23:28:57 8230123 16 10 [...].71.227.[...] 55626B99A4DF49D2B56979A3A10F4E8D
    2024-12-17T19:09:34 8230101 10 10 [...].217.161.[...] 556AF86666C44117B0837401218F7E93
    2024-11-10T18:23:20 8230152 5 10 [...].203.182.[...] 55783FBECCDA42CE89D35AC33871EC2C
    2024-10-15T22:52:30 8230101 2 10 [...].217.161.[...] 558AC3043B554C9EAA72B166123859C6
    2024-12-09T16:11:31 8230135 7 10 [...].26.14.[...] 55A024BB90A84C66ACFB3F876444EA06
    2024-10-25T17:10:49 8220110 4 10 [...].84.22.[...] 55AF2E2E37614B4F8D80238CDF013D63
    2024-11-26T11:36:15 8200066 9 10 [...].168.0.[...] 55CC2E89F4AE49469DDBB9C197B94E1E
    2024-11-30T14:07:47 8220228 12 10 [...].103.216.[...] 55D80120C25349E8B76138315C6B709D
    2024-11-13T16:28:25 8230227 5 10 [...].65.115.[...] 55E36BB8AA20486090C6154A78A52052
    2024-11-05T20:08:20 8230218 5 10 [...].74.226.[...] 562207CFB5DA405E80F1D0356A0B536F
    2024-10-29T10:29:43 8230005 4 10 [...].26.71.[...] 562250ABFE164486988BDEC32EFEFD35
    2024-11-24T01:21:10 8230022 16 10 [...].152.208.[...] 56535A9C06724C27B1E2F47118397E68
    2024-11-20T22:40:57 8220091 16 10 [...].168.1.[...] 568AF6EF08F74E5CB79DE3D4C7943C71
    2024-10-29T14:45:29 8220156 7 10 [...].65.125.[...] 56A2C7BDC18646FE98E970FF516C989D
    2024-10-24T11:05:37 8230083 4 10 [...].130.27.[...] 56B701BD5933498F874B3B0F2CFFE61B
    2024-12-01T22:09:40 8190051 12 10 [...].58.251.[...] 56BBC40B084442609C81BC86DAF3C4C2
    2024-10-24T15:01:10 8230143 4 10 [...].26.77.[...] 56D3906D078B4BDBBCDDCA3D86592F24
    2024-12-05T18:04:06 8230247 10 10 [...].74.9.[...] 56E9EB50F49342119169741EC26EF744
    2024-12-02T23:01:37 8230071 12 10 [...].203.147.[...] 572D50644672470E85D9D57701AEA408
    2024-10-30T18:26:23 8230064 4 10 [...].217.161.[...] 572E1011BED44F7AA81EDC9CFA662E41
    2024-12-05T17:42:32 8200066 13 10 [...].168.0.[...] 575F6076C1A041A8A1A51327DD7EEE2C
    2024-10-14T18:37:51 8230053 2 5 [...].74.24.[...] 576D0FE09258445F8755500FA357CDA3
    2024-12-19T22:30:05 8230231 10 10 [...].199.16.[...] 577A23A27D7A409C9D4CFC5BC50A6E1B
    2024-11-12T05:01:01 8210220 6 10 [...].217.175.[...] 5782CD6F7DD6481AB11D22ADEA7AA314
    2024-12-07T16:36:39 8230085 7 10 [...].217.161.[...] 5789ED7491494DDD84310BDC92FA9CC8
    2024-10-22T20:07:37 8230131 4 10 [...].103.219.[...] 579D532E29FA4DCBAA9FE4AEE6A579FE
    2024-10-15T00:34:22 8230023 2 10 [...].87.147.[...] 57B352C3D43B41A98EC8B5F0AA41B80A
    2024-11-05T09:29:50 8190271 5 10 [...].71.4.[...] 57B71B20F06D4B8AA1E1AD6112E4F63F
    2024-11-02T13:59:52 8230134 4 10 [...].242.187.[...] 57D32DD573054C648858B8EE5AF8C02B
    2024-10-20T20:30:00 8230231 5 10 [...].166.35.[...] 57DBE44E969A423E9230F27673CECBB2
    2024-12-16T01:49:25 8230022 8 10 [...].140.28.[...] 5825F9952C8149B99BE8A014A0A7B81C
    2024-11-13T14:39:18 8230103 6 10 [...].66.136.[...] 5842872280884B0FBD0363E5692D1743
    2024-12-03T01:16:18 8230244 9 10 [...].86.152.[...] 588746687FD541F5811CA972FD98F752
    2024-10-15T00:25:18 8220014 1 10 [...].103.239.[...] 58E05BF11D8D40098A91BD744BA1EA72
    2024-11-21T03:08:31 8230164 16 10 [...].74.12.[...] 58E84C17B99B46DD8F37D0FE6A12E693
    2024-10-13T22:52:30 8230104 1 10 [...].49.78.[...] 58F7D8EC0F434BB9817B6B6192090AAD
    2024-10-13T14:52:17 8230168 1 8 [...].225.158.[...] 590C7EC3C007418FAFDC05076F02E892
    2024-10-27T11:13:30 8230016 3 10 [...].168.1.[...] 591EAD8616FE47DFA4648CC98FF38F6F
    2024-12-08T14:25:52 8230016 8 10 [...].168.1.[...] 59284CB63E4A4EF59EFE98482CC99062
    2024-10-26T14:53:18 8230111 3 10 [...].87.40.[...] 592BCD69B78D43BD96E8779889D64674
    2024-11-01T12:26:53 8230136 4 10 [...].86.16.[...] 592D5814829D41E4A3DFCC066FDAB95E
    2024-10-14T22:56:47 8230098 2 10 [...].49.227.[...] 595E5710295A4327BF38CDB4E40783FC
    2024-10-21T22:23:48 8230013 3 10 [...].251.52.[...] 597157158ED8443FACB928AB8CB76964
    2024-10-15T15:54:44 8150188 2 10 [...].92.185.[...] 59803C5119D64D57B7998DC578A9B9F7
    2024-10-09T23:55:28 8230070 1 10 [...].217.161.[...] 599F461A7C9F48328FC26F4676A2FB8E
    2024-12-08T20:12:10 8220215 5 8 [...].59.80.[...] 59B9F2B67DC341B3A5F5B21A8D608F0D
    2024-12-12T20:08:35 8230056 8 10 [...].58.225.[...] 59CE10C2B36143B8BA3FE1286649071F
    2024-12-05T13:07:44 8230153 9 10 [...].84.5.[...] 59F38FD1C4534FAB8FFEDFC0BB3F45C9
    2024-10-15T18:04:26 8230091 2 10 [...].6.161.[...] 5A05D45A2D21490B9205F788F8150F10
    2024-12-08T22:15:29 8230053 12 10 [...].74.24.[...] 5A1244F26F41411DB37A02CF9E763128
    2024-11-12T21:41:26 8220141 8 10 [...].75.104.[...] 5A12C85F85A94670A95C35DAB0E014BC
    2024-12-07T14:11:40 8220169 9 10 [...].71.169.[...] 5A4B2CBEFCD343EBB4296D3DC87D4022
    2024-11-29T12:51:29 8230157 12 6 [...].26.35.[...] 5A51EB676BEC41E0973ECE362B664788
    2024-10-13T22:49:24 8220011 1 10 [...].168.1.[...] 5A5EC6A16455471C9CC1BBD1E328E0F0
    2024-11-06T20:22:55 8220149 6 10 [...].58.138.[...] 5A72C26A337F4E8EA675A79E05639D91
    2024-10-23T14:30:37 8230148 4 10 [...].202.117.[...] 5AA2CAAC729948D4B7EDF91F74916291
    2024-12-14T16:29:19 8230025 8 10 [...].73.116.[...] 5ACD9DECBDF6488B94A1081D426AF525
    2024-12-15T23:13:22 8230117 8 4 [...].251.96.[...] 5AD68AF8C4A84E0F9D396B3A8AC759D8
    2024-12-11T19:59:49 8230066 8 6 [...].86.251.[...] 5B003703C5394557BC0DCAF569D7F260
    2024-12-14T17:12:13 8230050 8 10 [...].73.236.[...] 5B0451C132B24D8D86599603D9F1B84A
    2024-11-02T14:26:40 8230245 4 10 [...].49.119.[...] 5B08FD4B190146AC8CDF6A6DE31B4ACA
    2024-11-28T14:19:34 8200171 8 10 [...].26.26.[...] 5B2D829332544745972F8E41F5348876
    2024-12-17T23:22:17 8230066 8 10 [...].86.251.[...] 5B3E7351AB71476A9F66114306289DB0
    2024-12-17T10:48:49 8190271 10 8 [...].74.107.[...] 5B57D7F147E742459B1FF109E5D859EA
    2024-10-20T20:49:27 8230104 2 10 [...].178.237.[...] 5B7D048AB22949C1A2363222D5B4B5F7
    2024-11-01T21:04:43 8230044 4 10 [...].107.183.[...] 5BA7F7BCEDA74679B3607E017A03B067
    2024-11-23T13:38:10 8190271 16 10 [...].217.172.[...] 5BD94981682341D1B9FE0677B3A6DA7F
    2024-10-15T21:14:54 8230071 2 9 [...].166.103.[...] 5BEC6FB33FB342AA88E1728FD8E2C983
    2024-12-17T17:34:42 8230116 10 10 [...].1.103.[...] 5BF0274704284341ACDFE9D6171AB758
    2024-11-10T16:34:30 8230076 6 10 [...].246.223.[...] 5C185304BBB047D49D1C48F4EBEBAC80
    2024-10-22T21:24:38 8220057 4 10 [...].217.161.[...] 5C1997516AC24B9FAA5B1C4F2B46F671
    2024-12-05T20:15:38 8230038 9 0 [...].75.54.[...] 5C2CBB839886467AB7F4593EF4B6C5CC
    2024-10-31T00:41:30 8210163 8 10 [...].168.1.[...] 5C4490CFBAB44E7E89DC9D2BE64FE490
    2024-12-03T20:51:59 8230116 9 10 [...].49.134.[...] 5C78FEE3417349D189C5DCF77FF1E66D
    2024-10-09T13:24:53 8220085 1 10 [...].147.63.[...] 5C9BE1FF05084668B721552EA0469376
    2024-11-07T21:06:51 8200117 7 10 [...].92.100.[...] 5CB356B8BF84441C9393DEE70523339C
    2024-10-17T22:22:05 8230002 2 10 [...].131.130.[...] 5CB834D3CFB642A084BDB2D220497919
    2024-11-19T16:48:31 8220068 1 10 [...].14.243.[...] 5CFA87CD01F848C193A01FB5C2E40D5F
    2024-10-18T18:10:17 8190304 5 10 [...].217.176.[...] 5CFCBE60EE3A4FD2B2BAB19BF1F07BE6
    2024-12-01T21:31:34 8220230 12 6 [...].210.241.[...] 5D1511A276C5456A833679F3815F9DFC
    2024-11-19T12:27:17 8230097 6 10 [...].26.30.[...] 5D189C5C66F840BCAC813305578F5A12
    2024-12-04T16:48:26 8230136 9 10 [...].86.15.[...] 5D20A5C65B244A3484521C44B4ACDC32
    2024-10-24T17:42:31 8230147 3 10 [...].178.194.[...] 5D2B6E4C293B440D80F52470808F83AA
    2024-12-11T15:55:51 8230038 7 10 [...].251.255.[...] 5D40E3D3D6414DAFAC6ED3764DA31E29
    2024-12-08T13:50:28 8220229 9 10 [...].251.115.[...] 5D420FDF500743E9B2C0450355167181
    2024-12-02T01:34:37 8230117 12 8 [...].237.6.[...] 5D5590A2BB9241CDB114209B23BA9293
    2024-11-29T21:54:14 8220053 16 10 [...].217.161.[...] 5D57A66506BF4C5089A132A0314A60C2
    2024-11-20T15:39:41 8230109 16 10 [...].26.60.[...] 5D6ED32B54D74A75B6A370805C723380
    2024-12-20T21:06:39 8230044 10 10 [...].190.4.[...] 5D78F3CE1095480593F3489673A05D7E
    2024-10-15T12:20:02 8220070 2 10 [...].26.55.[...] 5DE287E0353946F08450D13BD5B616F4
    2024-11-24T21:32:24 8210220 16 10 [...].217.175.[...] 5DF5669858BA48DDA01F360A14FCCDCC
    2024-10-21T20:23:38 8230029 5 10 [...].203.105.[...] 5E0F64FDD9A84F67B7A8A95F7C4CB9B2
    2024-11-26T16:29:13 8220007 12 10 [...].103.253.[...] 5E2E9201A86D42ECB580E3C445AF5100
    2024-11-13T20:15:12 8230093 6 10 [...].152.183.[...] 5E4183A2C5364471967C4541FBE1E7F3
    2024-10-14T19:27:08 8230061 2 10 [...].138.151.[...] 5E4A2760A6D84B22846D0545F420556C
    2024-12-06T21:52:53 8230220 12 10 [...].71.169.[...] 5E4B4E5FDF2A4394B8071F9204719593
    2024-11-28T23:28:43 8200152 16 10 [...].74.73.[...] 5E59E7CEE3B64011841658EE998EBE0C
    2024-12-11T22:32:44 8190332 14 10 [...].107.113.[...] 5E71472CFA664668AFB92892F1DC23EA
    2024-10-27T18:45:35 8230122 3 10 [...].130.34.[...] 5E88B444015A49C68E0F5860BEDEE53B
    2024-11-03T19:58:34 8230092 4 10 [...].58.139.[...] 5E89EC0FBF884B968880C68C5F580C4A
    2024-10-27T22:25:59 8230076 3 10 [...].66.136.[...] 5E905405C82240B7B8C44C5D16D8FC6C
    2024-12-07T17:17:36 8230035 9 10 [...].177.146.[...] 5E92B682F4324D428E88ED5AE961B5EF
    2024-12-10T23:14:46 8230097 7 10 [...].131.183.[...] 5EAB8159BE31427D95E0927A93D5995F
    2024-10-28T00:03:31 8230101 3 5 [...].73.37.[...] 5ECA7ED59333476393C2A62756761363
    2024-11-24T20:44:24 8220085 16 10 [...].74.27.[...] 5ECD7235C541480BA12044C71638E922
    2024-10-09T20:21:54 8230042 1 10 [...].4.75.[...] 5ED41733855C4E1D95473ED49DC733B2
    2024-11-06T18:49:32 8230136 5 10 [...].86.16.[...] 5EFDBA1090D0465A8B550178E0F44DCF
    2024-11-01T15:05:28 8230154 9 10 [...].167.82.[...] 5F768B99C4E149F2BDCD0843B26F016C
    2024-12-07T16:31:09 8230163 9 10 [...].242.187.[...] 5F8CA75586B54F25A541459C72091DAA
    2024-10-21T11:39:12 8230092 2 10 [...].26.27.[...] 5F995ACA6B02457F9C6D1C0221C135A4
    2024-12-10T00:33:19 8230098 8 10 [...].4.69.[...] 5FDD73643FBE40DBB0A9F9D77358E960
    2024-12-04T18:00:40 8230034 9 10 [...].107.85.[...] 5FE321F6DD4649CF890DCED34B36EC88
    2024-11-12T19:12:40 8220143 5 10 [...].167.107.[...] 600AD50573C84FFA9E6A916E04F94BBE
    2024-10-19T17:05:38 8230025 2 5 [...].73.116.[...] 6016CC5DED884174BB514969FA301BBF
    2024-10-11T11:06:43 8230031 1 8 [...].84.23.[...] 602271EAF70142C0972C954BD32E6071
    2024-11-29T20:52:09 8230123 12 10 [...].71.227.[...] 603C4B1A968847F48B20BE45B4849519
    2024-10-18T16:54:49 8230016 2 10 [...].168.1.[...] 6075E8DBD6D6474CAF82067844B01A8C
    2024-12-07T17:47:09 8230127 9 10 [...].176.122.[...] 610A7A785BF04832863F7DA3E9C04FB0
    2024-10-20T14:47:48 8230008 5 10 [...].84.18.[...] 61284F05FAD241F6BA269A36E06DDB0E
    2024-10-09T22:57:09 8230154 1 10 [...].210.115.[...] 61622F504BBB44559CA06EFA56EDFC23
    2024-10-16T00:03:07 8220145 2 10 [...].87.88.[...] 617B9A42B4D24E299E1FF3C4E8992A15
    2024-11-09T19:04:51 8230069 5 10 [...].86.43.[...] 61A426F7E813436E9236FC964436C57A
    2024-12-07T17:51:08 8230052 7 10 [...].38.25.[...] 61C80BAC1B7443C4AA54B48D0E1FF6F0
    2024-12-06T14:06:26 8220215 12 10 [...].59.80.[...] 61D0D5DAAD2C4E9A86473F91349934D3
    2024-10-11T18:54:38 8230136 1 10 [...].86.16.[...] 61D20F91B61F4BC1B267DEE66F9B7D75
    2024-11-01T23:47:33 8220148 4 10 [...].86.9.[...] 6260D430435D4485BAB6360A0411D280
    2024-11-09T20:06:21 8230074 5 10 [...].237.199.[...] 6260F7D0E64943BCBBC796DD681EE1C2
    2024-11-10T23:57:28 8230002 5 10 [...].131.130.[...] 6268B78EAA29426FA00B9BEEE86D1DD5
    2024-10-29T21:28:12 8230021 5 10 [...].246.176.[...] 628C87D78E7F4147B83CF6B13394F0AD
    2024-12-19T19:51:46 8230006 10 10 [...].58.144.[...] 62A8C1780BE04C31AA9FE0F0F7628E84
    2024-10-23T21:53:31 8230038 3 0 [...].65.113.[...] 62DBFD66757E443787CE7606436C8DA3
    2024-10-20T18:23:26 8230143 2 10 [...].66.146.[...] 62DD96E0116C432F8D4D7602C1CF356C
    2024-10-27T15:43:37 8190333 3 10 [...].168.0.[...] 62E0C1024BDA4799B40D776F39045C88
    2024-10-21T23:54:28 8230125 3 10 [...].86.168.[...] 62ED1EEE20C348679F2CC66933463353
    2024-10-11T15:40:30 8220148 1 10 [...].86.9.[...] 62F8B065E1B54FBB966501783D740DF0
    2024-10-23T17:30:31 7220234 1 10 [...].26.60.[...] 631FDBF90AFF4328828A460ACF3FD620
    2024-12-16T00:13:23 8230109 7 10 [...].251.255.[...] 632B1DC777F44DEC98CC9635603A2595
    2024-11-05T23:50:54 8230091 5 10 [...].6.162.[...] 6336C1622F964F10AE52263FC2CF0962
    2024-10-30T23:43:08 8200117 4 10 [...].92.100.[...] 634A2CABEC1B4CAFBDF17FC6024566DA
    2024-11-25T21:16:15 8220123 16 10 [...].87.46.[...] 6351EA87B431416795A2F0AC721EE377
    2024-12-06T13:17:17 8230104 9 10 [...].251.255.[...] 637A8083AACB4D20AC0648400AC6BCFB
    2024-10-27T18:51:18 8230217 3 10 [...].92.141.[...] 637B6E8D3BC34B65BBE2E9F9D03855EF
    2024-11-24T21:56:33 8230115 16 10 [...].74.27.[...] 6380B8BF628141FDB08CA5D0242A9709
    2024-10-18T18:45:01 8220112 3 10 [...].138.151.[...] 638D7B6D388641B58762F5592A19BCE7
    2024-12-08T20:06:31 8230066 7 10 [...].86.251.[...] 63A1912839804BEFBB7F055A07E243B7
    2024-10-29T17:22:52 8230145 4 10 [...].103.102.[...] 63AE41B248DD446AA047C6ADD2394E9E
    2024-12-02T21:26:01 8230036 9 10 [...].74.38.[...] 63B96FCC25A947669F5CC9EC8F8BA4CF
    2024-11-10T20:35:46 8220148 5 10 [...].86.9.[...] 63E7246CA82C4F9280A2EE5CDA67F6F5
    2024-11-20T20:02:22 8220091 6 10 [...].168.1.[...] 6402D096181B41939F50A34C3E8AF749
    2024-10-09T20:37:10 8220105 3 10 [...].1.100.[...] 6410EC0E3FDB4826BAFA7473A4C6B024
    2024-11-12T15:54:44 8230003 15 10 [...].74.225.[...] 64213305586F4ED5B8790ABD7480500C
    2024-11-30T18:11:35 8230058 12 10 [...].210.98.[...] 64778F10B79E497B934E629ABF450BC0
    2024-12-09T23:00:27 8220086 9 2 [...].168.0.[...] 64A1BDF220904528A670847FF1A5B4CB
    2024-12-05T17:48:22 8230091 9 10 [...].6.3.[...] 64B9B38743FC472186B4064AA4F3696D
    2024-12-11T18:55:20 8220011 17 10 [...].168.0.[...] 64CCAAA2D09347588A790878B7FC9F62
    2024-12-21T14:11:14 8190378 10 10 [...].58.136.[...] 64DA47DE0A4D4D048FC087DC2962FD88
    2024-11-14T12:35:16 8230037 6 10 [...].166.185.[...] 64E4D3EB6E204B9E956D47D1018821C7
    2024-10-16T21:31:41 8230116 2 10 [...].49.74.[...] 64F2901016D14CA2AC859B1BF1425FA0
    2024-11-20T14:32:09 8230077 16 10 [...].73.119.[...] 651F97D2378748DE817AD1AA68A377E2
    2024-10-22T21:32:31 8230164 3 10 [...].177.135.[...] 652A356EFFD045B1B51BE740AF78D755
    2024-12-08T03:34:09 8230058 9 10 [...].210.98.[...] 654C340CE3BC46F6B2BDA3E87DD763B7
    2024-12-16T00:15:54 8220230 8 10 [...].251.255.[...] 6572DC1048834E74A4E663F541D6CC48
    2024-12-01T14:51:13 8230075 12 10 [...].71.4.[...] 658F98A7505745FB867D919C21CC05D0
    2024-11-09T21:30:45 8190238 3 0 [...].130.246.[...] 659324D34AE94B839E4E85CBA951F5F7
    2024-11-19T19:22:49 8210219 7 10 [...].168.1.[...] 6595D07EBCF54A32A864004E5760C9D7
    2024-11-21T01:22:47 8230083 16 10 [...].130.27.[...] 6625DDB67EBF42A2BCCBFB04CE26398F
    2024-12-01T15:24:44 8230245 12 10 [...].49.65.[...] 66266C51CC1C49C58A45F8614C81A623
    2024-10-16T20:15:07 8220141 3 10 [...].75.104.[...] 6627BF1488204048BB4E57E5492E86A6
    2024-12-06T19:03:51 8230135 9 10 [...].242.187.[...] 664CB181107C40CCBAD0ABB926566EC5
    2024-11-03T12:32:35 8230154 10 10 [...].167.82.[...] 664D5451754B497297CB448CA179AFBB
    2024-11-08T01:48:32 8230059 5 10 [...].6.161.[...] 667A0D61E71A4495A4B732148AC51F89
    2024-10-27T12:47:58 8220016 4 10 [...].251.255.[...] 669CEFD21DC14C688F58E7648C96AB02
    2024-11-28T14:08:33 8190378 12 10 [...].58.139.[...] 66B5EBAFBF2B4192BA35F66D33B6E5EC
    2024-10-10T18:04:49 8220108 4 10 [...].73.236.[...] 66B6BEA5A20346F4BC02A44318D4DA7A
    2024-10-12T13:18:07 8220136 1 10 [...].74.100.[...] 66DC2E52D31E4C80A7E772E0C19EBD89
    2024-10-27T15:25:11 8230127 4 10 [...].176.109.[...] 677E95BC14344CC7ACADDB9DCE221984
    2024-10-19T13:09:14 8230065 2 10 [...].176.151.[...] 67A4255DA0804CD8AEDCC5563287D4EF
    2024-11-23T02:41:30 8230068 16 10 [...].75.76.[...] 67E6937B0D1B45A6B1C656E0CEFCD4E8
    2024-12-07T16:58:14 8230061 7 10 [...].138.148.[...] 67F70557FD7841EA8DE6A4101372CB89
    2024-10-11T12:44:58 8230139 1 10 [...].73.236.[...] 67FBA30FFB32423B8BAF889C2B58A981
    2024-11-21T21:14:00 8200168 5 10 [...].177.150.[...] 67FF7B0982214DAA96561E1ADF3909F9
    2024-11-06T16:38:42 8230159 5 10 [...].26.47.[...] 680265A87FA944A1B581F9A0EEECB244
    2024-12-17T09:56:13 8230143 10 10 [...].203.113.[...] 6845EEB4EC0544F6946F0BD27A3E605E
    2024-10-15T03:04:12 8230164 2 10 [...].177.135.[...] 686B82135D9A4D43951E3AA770E0336A
    2024-10-16T20:05:06 8220011 2 10 [...].168.1.[...] 68AFDD5034FA49E89250B29298F26927
    2024-11-14T13:30:35 8220229 7 10 [...].140.28.[...] 68C22E8E8918478F9A08D33870E77872
    2024-10-25T18:55:23 8220112 6 10 [...].138.151.[...] 68C302BB39BC4743A0963CAD1D39678B
    2024-10-22T22:14:16 8230147 1 10 [...].217.161.[...] 68C4ECAFF2D545D887337D64CE7A26AC
    2024-10-28T01:04:39 8190091 3 10 [...].217.174.[...] 68EF64A91A264542BC7BB778B9384AFB
    2024-11-06T23:16:47 8230111 5 10 [...].167.163.[...] 6904839D3CFE44EF937D9A19E3DDF54B
    2024-11-19T15:25:29 8230035 6 10 [...].177.146.[...] 69124275422D41FCA4DCA459B50A7FE2
    2024-10-30T12:36:52 8230226 2 6 [...].210.83.[...] 691BD15242834082AE3E1D33CF138107
    2024-12-21T22:48:51 8230134 10 10 [...].242.73.[...] 69489363FA34485B8F9145B4B040E174
    2024-10-18T21:59:28 8230244 2 10 [...].86.152.[...] 694E338397914B31AFBA519107E35B12
    2024-12-04T13:01:35 8220071 9 10 [...].84.30.[...] 695A28EDA05848C387E46FC9A3385695
    2024-11-03T13:26:37 8190381 2 9 [...].237.222.[...] 697D9FB95CEF455295340E4292B2B2E5
    2024-12-04T18:11:29 8220156 9 10 [...].66.79.[...] 6984148A112F4B9C9EC2F661CC516EAB
    2024-11-26T16:19:41 8230092 6 2 [...].26.27.[...] 698CD4A3F70F448A852FDAC90CFE9C05
    2024-12-17T15:09:38 8230144 10 10 [...].1.100.[...] 69A07DABD4BD463F9952F705017F3C51
    2024-12-01T18:31:53 8220231 12 10 [...].140.32.[...] 69B4D8751EC44558A966627980FB6DA5
    2024-12-17T11:03:46 8230045 8 10 [...].26.63.[...] 69D2101DF60F426BAB88057B136D9501
    2024-11-09T14:38:46 8230085 5 7 [...].217.161.[...] 69E8676B8A6D4EC99F6C5DB7BAD25A26
    2024-11-24T19:26:33 8230099 16 10 [...].84.122.[...] 6A2DC497639041B18F62E99A24BFA8F3
    2024-12-01T17:29:25 8230069 12 10 [...].75.26.[...] 6A56EC7683D445729D3EF2FF5E4DC6CA
    2024-12-05T01:56:50 8220145 9 10 [...].72.171.[...] 6A75A4894A2048E4A705C0FEE7928F9B
    2024-12-17T16:40:35 8220044 10 5 [...].26.4.[...] 6A80A0E0B4AB4A08AD39E09A0B430EFE
    2024-10-14T20:43:19 8230102 2 10 [...].130.135.[...] 6A937D62D2F0472D94CD8F607F1A812D
    2024-12-11T01:24:29 8230129 8 10 [...].65.88.[...] 6AA3F6AF132C42A7958EEC6A37FE665A
    2024-11-03T10:54:34 8170017 7 10 [...].87.194.[...] 6AA72EFBBFDF49978B1568679B33C0E6
    2024-12-11T19:41:22 8220011 18 10 [...].168.0.[...] 6AA76FD4875F4B9E96F62875DE5F2AEE
    2024-11-19T21:26:00 8230089 16 10 [...].66.64.[...] 6AB4295476544AEC8A8C4BEE6055463C
    2024-10-23T17:56:17 8230139 5 10 [...].26.42.[...] 6AC51D9EC08247ADA4B58A1407D2D3B5
    2024-10-11T17:27:42 8200171 1 10 [...].86.178.[...] 6AEDFFC8AE3B4A0786884A134C2203FF
    2024-11-07T20:04:57 8230145 5 10 [...].103.238.[...] 6B1CDF3CFC2D464088B4540B6BF6E104
    2024-10-27T21:55:47 8230109 3 10 [...].202.96.[...] 6B2E1013C3DA440A959A97F71138416B
    2024-11-09T21:01:12 8230161 6 10 [...].58.226.[...] 6B356293E50F4D4EA672CAED117134F6
    2024-10-31T12:39:17 8190273 3 10 [...].177.233.[...] 6B3ABDAFC1CB4DBF822D2FF53298111A
    2024-11-07T20:51:39 8230094 5 10 [...].86.152.[...] 6B3E1DAAF7C444E1B6E491154D78E391
    2024-12-01T22:15:18 8230244 12 10 [...].72.95.[...] 6B5F492956674223A119909DA581143B
    2024-11-19T23:25:44 8200117 6 10 [...].92.100.[...] 6B6CA82F294A40038B89306186C4B969
    2024-12-16T23:47:39 8220039 8 10 [...].4.246.[...] 6B7708AF26B14085A9396DBE93437664
    2024-11-20T19:47:06 8220044 16 10 [...].64.157.[...] 6B9B0407E4A84B9E987BB6494FF8444E
    2024-10-19T16:44:18 8230031 5 10 [...].84.23.[...] 6BA4846DECB54DF9B47640F6F8F94577
    2024-12-15T22:47:41 8220071 8 10 [...].74.158.[...] 6BC0CE76955440C0BE3ADFA53459C303
    2024-11-07T23:20:45 8230135 5 10 [...].140.90.[...] 6C0C1E2C4628425AA1846270D2652200
    2024-10-30T19:01:19 8230027 5 10 [...].251.121.[...] 6C1548A1288D46479743C59997A8D142
    2024-11-16T15:10:45 8230100 6 10 [...].178.132.[...] 6C326261A4DC4F4D86B2F28A1C1713A4
    2024-10-15T17:20:58 8230154 2 10 [...].210.115.[...] 6C83D801B3134F488A703AF028ECD1C7
    2024-12-03T18:06:12 8230151 9 10 [...].28.60.[...] 6C8FDD33BA9044AAB7F22E452BFCC1CA
    2024-11-05T14:19:08 8220149 5 10 [...].26.78.[...] 6CBF1D88ED37455BB2AE5BF925336DC3
    2024-10-21T22:42:06 8230021 4 10 [...].246.176.[...] 6CE242E34A9349DABB240DB4EC8C7635
    2024-10-22T11:28:39 8220046 17 10 [...].26.43.[...] 6CE367C8E66B43B681E4E4BE236EA8CE
    2024-10-16T13:38:26 8220042 3 10 [...].168.0.[...] 6CF3966AE07D4A92A2E4FCC14C37031E
    2024-10-12T16:30:17 8220105 5 10 [...].1.100.[...] 6CF7245F33EC446884E6F94AEADD977A
    2024-11-02T18:17:16 8200168 2 10 [...].177.150.[...] 6D042450572C406CB373B6A39A513D21
    2024-12-01T20:03:06 8230014 12 10 [...].43.36.[...] 6D195A097997499DB7036B8E8274748E
    2024-12-01T18:19:06 8190238 16 10 [...].75.58.[...] 6D2B091AD0844BDDB6D79DB19CDDE0F1
    2024-12-08T20:16:05 8210087 9 2 [...].178.244.[...] 6D776F01EE5E47AF9B63B108F7C28DAD
    2024-12-08T02:14:20 8220052 9 10 [...].168.0.[...] 6DB93AC548FA465BB6DED1A686357838
    2024-11-10T19:28:24 8230044 5 10 [...].107.183.[...] 6DE47BAA726B44BEBB6881B9F39F9C2C
    2024-10-20T22:53:42 8230221 2 9 [...].178.183.[...] 6DEF718F1FAB4438A3AEE6B1F3DD941E
    2024-10-27T12:34:12 8230016 4 10 [...].168.1.[...] 6E1B5CAA23D047E3B312FB97828C3F50
    2024-10-11T20:16:20 8230031 2 10 [...].84.23.[...] 6E32CF8F2EEA47D3A431AEC07B76D938
    2024-12-15T21:54:00 8230002 9 10 [...].131.130.[...] 6E375740D2154C40A09F94059DF3A932
    2024-12-06T13:01:45 8230085 9 8 [...].217.161.[...] 6E51FFA11864481EB6D5751DCB1E675D
    2024-10-23T18:39:44 8230017 3 10 [...].235.108.[...] 6E605BB36DB24832827114606934E917
    2024-11-06T20:27:29 8230024 5 10 [...].92.147.[...] 6E6427D38B0342E3BEBEF863B2AACE2E
    2024-11-04T23:33:37 8230129 5 10 [...].65.88.[...] 6E72F7C232B945B587D51CBBDCBEF4E2
    2024-11-05T14:16:26 8170204 4 9 [...].65.116.[...] 6E8FFF6FCB34477A95CFCA96B81A93EE
    2024-10-25T15:48:36 8230116 4 10 [...].49.74.[...] 6E9B8C422D7F46DCA01E754E37B4D14C
    2024-11-28T14:55:18 8200171 9 10 [...].203.149.[...] 6EA94602E452444791992FE7FC40435A
    2024-10-14T23:41:23 8230035 2 10 [...].177.146.[...] 6EB2470D6A474959BEF3DDE1F2DD0A16
    2024-12-12T17:15:02 8230086 2 6 [...].246.210.[...] 6EBFA355368048F59FE85D749C105FC6
    2024-12-14T13:42:49 8230047 8 10 [...].84.197.[...] 6EC99B76D7004EB48BBB883BB194AA94
    2024-12-14T11:46:23 8230033 8 6 [...].92.7.[...] 6EE5596785924C32B8AD9D58C7FD7BB4
    2024-12-01T21:14:07 8230040 12 10 [...].87.26.[...] 6EF8E43EBFCC41B48BF0DA132FC97B5E
    2024-12-10T16:43:50 8220011 8 10 [...].168.0.[...] 6F036298EA324834ACC5621BEBE471E3
    2024-10-17T21:02:58 8220042 4 10 [...].168.0.[...] 6F3506D900DB477F8DAAE1EAF30889C6
    2024-10-31T20:21:04 8230036 5 10 [...].74.32.[...] 6F438326FCFD4DE0886EC0370D01F5BE
    2024-10-22T19:37:01 8230131 3 10 [...].103.219.[...] 6F560FCE515D43CA97C8E8A9F69A5EBD
    2024-12-05T14:59:12 8230099 9 10 [...].87.198.[...] 6F56133F7D4E4DCFB9E91D43007318C2
    2024-12-03T19:56:25 8230161 9 10 [...].58.224.[...] 6FA06CE28E4B4CA6A0C2E3E8BF6E2935
    2024-11-09T19:45:07 8230160 5 10 [...].246.165.[...] 6FAC01D0BB3547F2B85F4D385E6D7696
    2024-12-15T19:48:58 8230094 8 10 [...].86.152.[...] 6FCC486B798A43C99ABE0C98CFF1375D
    2024-10-13T13:38:00 8220036 1 10 [...].86.31.[...] 6FE1A17FBBF845AEA7AA03DD9BAA40F0
    2024-10-31T19:20:22 8230106 5 10 [...].58.193.[...] 6FE5D34F5B0B403193FE16EAEB48C785
    2024-12-09T20:38:37 2210175 9 10 [...].74.47.[...] 6FEF75A961824FD7A06FEEA13A752BB7
    2024-10-14T20:42:53 8230099 2 10 [...].75.111.[...] 700CA6EACDC74F08A7C19C111C9D9780
    2024-12-01T19:48:35 8190338 8 7 [...].74.87.[...] 703B4824C39C4339B14FB8CB450F9A93
    2024-11-13T15:16:21 8230116 6 10 [...].4.170.[...] 704A74A6BDD440BC85D842D536218D87
    2024-10-08T10:56:33 8220228 1 10 [...].103.47.[...] 70627D218BB64DF89675EC20F71EE3B3
    2024-10-10T18:04:42 8230127 1 10 [...].26.75.[...] 709F7AF5325749888323E1B37596F3F8
    2024-11-10T14:50:08 8190238 7 10 [...].130.246.[...] 70A1E27524FC4E4FA65B85A22770FCA7
    2024-11-22T19:33:35 8230067 16 10 [...].166.71.[...] 70B9FD937E594DCFBAF8862DE17F01C8
    2024-10-16T13:24:57 8230022 2 10 [...].203.231.[...] 70C37CE818FB40CE851C6A2F55B8FE72
    2024-11-25T22:51:32 8230021 12 10 [...].246.176.[...] 70E3F86421024D72A4C12D12F38EAFFF
    2024-10-13T19:51:28 8230114 1 10 [...].73.16.[...] 70EE1FDC4C78457A896112714E842CA1
    2024-11-28T16:35:55 8220036 12 10 [...].26.25.[...] 70EF84628CF7407EB8A45E658BFE426F
    2024-10-10T20:51:51 8230151 1 10 [...].28.98.[...] 712B7B99F05A4D648F2EA6309426D0E9
    2024-11-22T13:36:18 8220016 16 10 [...].86.156.[...] 713952F59319480FB6B3587A60622CE3
    2024-10-31T18:46:20 8230002 3 10 [...].131.130.[...] 715AD507B2FF4DEFAEC75F51C6392306
    2024-11-11T16:50:07 8230159 7 10 [...].58.192.[...] 715F17227B7C4AAEB40790A617F31683
    2024-10-19T20:53:07 8220016 3 10 [...].168.0.[...] 7160C7B3C08441079C3CB77E32E88CAD
    2024-11-24T20:41:33 8230160 16 9 [...].74.27.[...] 71650B7301D5468F9EEA3E9A4C7A8789
    2024-11-24T18:17:37 8230063 16 10 [...].140.91.[...] 71922D30EC7546268E779E84F52331A0
    2024-10-16T12:39:35 8230113 1 9 [...].75.220.[...] 71997B288EEF4A7DA0E6CBD5C8AB3CF6
    2024-11-20T19:46:51 8230023 9 10 [...].58.193.[...] 719E46A8BC31430281D6EAC930CF75FA
    2024-10-16T13:04:07 8230089 2 10 [...].84.28.[...] 71A4A550CC614A2795C9855454D3A56F
    2024-11-18T21:55:45 8230113 16 8 [...].75.220.[...] 71DEBC73865743F78ECD86156AEA186D
    2024-10-23T22:14:24 8220228 4 10 [...].103.47.[...] 71FC9736B6F544A7AE1B8AAC7DB68E4C
    2024-10-23T09:55:18 8230029 6 10 [...].203.247.[...] 72076738EB584C8F9421682A16893678
    2024-10-30T13:49:35 8210226 12 7 [...].26.10.[...] 720AFB6937544BDAA7F96CA073488A60
    2024-12-02T01:11:08 8230045 12 10 [...].73.121.[...] 720D577E41D940B999D85A2223EB51B9
    2024-11-11T09:16:21 8230109 5 10 [...].26.60.[...] 723E794EBE9C4F8981D49630CC2E900C
    2024-10-23T19:07:14 8230017 4 10 [...].235.108.[...] 72740D5A94C545AEADBCA48B118F7114
    2024-11-07T12:55:53 8170204 3 9 [...].65.116.[...] 7275F89FD4FC4E2B8CABD8F8A4503D2C
    2024-10-11T14:31:12 8230061 1 10 [...].59.92.[...] 72AA3296F4384C3C9DA7773F122CB470
    2024-12-10T18:40:14 8230220 7 10 [...].71.169.[...] 72D87DC65BE649F6871321D391AE2E3A
    2024-11-06T09:56:02 8220007 16 10 [...].55.70.[...] 72E100D5C8584BC0826C512DBFFFA4DC
    2024-11-22T20:24:29 8230085 16 10 [...].217.161.[...] 7307824414724640A108D72D97EAA6CE
    2024-11-09T20:43:27 8230231 7 10 [...].167.176.[...] 73100FA353C1488999CF4BAE9576EBA9
    2024-11-18T20:17:56 8190332 2 10 [...].6.72.[...] 732BA9094948458B862B12FFBDA51676
    2024-12-05T19:41:29 8230029 9 10 [...].75.100.[...] 732CF4E3661C42B6B98A5FADDEB79D8E
    2024-10-09T20:00:32 8230157 1 10 [...].217.175.[...] 733007155CDC4AE786C3CE53D8A1F83A
    2024-10-23T20:01:06 8230143 4 0 [...].66.146.[...] 7341EB11CB5A4FC5AF956DCEAC63BDFE
    2024-11-07T17:57:39 8230153 5 10 [...].246.241.[...] 737E1336C82F4120B9BF86042D856DC3
    2024-11-28T20:44:20 8230106 12 10 [...].58.193.[...] 73BA550512654ACC8F3826D0A610934D
    2024-12-09T19:53:18 8230134 7 10 [...].242.187.[...] 73C8A0CE58D54F11A1488D2A6B3B41D8
    2024-10-18T17:48:53 8220169 2 10 [...].74.139.[...] 740A69B8B4CB4D93B9FACAB329598B12
    2024-12-20T00:20:03 8230127 10 10 [...].176.122.[...] 741C702D52B44F08A921C66E1A833262
    2024-12-02T19:48:56 8220112 9 10 [...].59.89.[...] 742551163EED4FFB82A3A3AC92F72E91
    2024-12-07T16:40:44 8230001 12 6 [...].1.136.[...] 7434C9C6B5104945BC6AFC695FB2845C
    2024-11-25T19:01:25 8220143 16 10 [...].54.253.[...] 743971684DB64DFD8C62167B4F226AD9
    2024-11-13T14:14:20 8230003 16 10 [...].217.174.[...] 74580C7F05244232B92011919D702518
    2024-12-15T18:28:38 8220044 8 10 [...].87.107.[...] 7476E0F5927D4CC782CB244FDBB58F51
    2024-10-19T17:54:35 8230152 2 10 [...].203.166.[...] 748DED37B7D542819866949B5F33AD19
    2024-11-28T22:00:20 8230143 12 10 [...].203.113.[...] 74BC85AA79104973973BA26CF10523D4
    2024-10-27T13:34:26 8230123 3 10 [...].71.227.[...] 74CCD44D2896463DA6AF18166B1EFA60
    2024-12-17T19:56:03 8220142 11 10 [...].55.123.[...] 74EE972D96BA426784512E031B9A3C4C
    2024-10-19T22:00:55 8190304 9 10 [...].217.176.[...] 751C60039C6346779F560645F3412026
    2024-10-27T22:30:34 8230165 3 10 [...].44.145.[...] 751DD1B99A25445EA036767A2ABB603D
    2024-12-01T18:16:04 8230152 12 6 [...].203.249.[...] 753D0FEE06874F16B165EA5FEAA366FD
    2024-10-26T22:19:05 8230138 3 10 [...].4.227.[...] 7542E33E27E24FD79B78E4A07EC50F3E
    2024-12-18T14:50:10 8210208 8 10 [...].207.159.[...] 7557431073264646AE4B3334DE290424
    2024-10-15T20:11:19 8230071 1 9 [...].166.103.[...] 75610E9F034045AD93A0C8F05F8C0FEF
    2024-10-18T17:54:35 8190304 4 10 [...].217.176.[...] 759FF3F9002645829AC9A35D70A07963
    2024-11-24T20:32:39 8230053 16 9 [...].74.27.[...] 75BD9AB541A0415096138352A5B557F8
    2024-10-27T12:44:22 8230114 3 10 [...].87.226.[...] 7610258297D34042BEC2156F237092AF
    2024-11-06T20:06:37 8220149 9 10 [...].58.138.[...] 7613C2081CFB4C20BDD59FF091336E78
    2024-10-18T11:22:13 8220011 4 10 [...].168.1.[...] 7615E53E538847B7A05C9E9B31ECBB6B
    2024-12-07T19:37:24 8230063 7 10 [...].242.186.[...] 761B63DBAF5C4C05A0166F50CDCDEC3D
    2024-11-24T12:52:32 8230019 16 10 [...].86.152.[...] 761DD891CD534C75A971AFDCFAAD3DE1
    2024-10-16T12:44:28 8220123 3 10 [...].26.53.[...] 762064EB5B6147D18A4158E6CCD1C8C0
    2024-10-13T17:17:01 8150188 1 8 [...].92.185.[...] 7622D24F8416413E967B801FFE9AA149
    2024-11-17T13:34:27 8230016 12 10 [...].168.1.[...] 766268F584DA4C81A5AA998BA28034BC
    2024-12-15T23:04:45 8230018 9 10 [...].69.234.[...] 76879F36A172425593D1DDDC76CDBEF6
    2024-12-03T01:32:07 8230221 3 9 [...].59.85.[...] 76929EC4E45340ECAF4239A6146D2F6C
    2024-12-08T00:17:21 8230022 9 10 [...].140.29.[...] 76AFF2903221443E9E6FB35A1F37444A
    2024-10-20T17:25:28 823143 2 3 [...].66.146.[...] 76C4EB62E88F4885BAD94A27F9E39B2C
    2024-11-03T13:38:10 8230075 4 10 [...].71.4.[...] 76CC923D46A14CA0890F2BAC4BC62F74
    2024-11-25T00:19:16 8230002 16 10 [...].251.255.[...] 76EEE879D8B54363952EC0A737EA53B3
    2024-11-23T17:02:09 8230064 16 10 [...].72.62.[...] 770D7101B4FE40D7808B23FCBCE60E65
    2024-10-11T21:27:48 2210175 1 10 [...].87.75.[...] 7711A826F3054C5688774F69EEDA1900
    2024-11-22T19:41:16 8230134 6 10 [...].58.195.[...] 7712B1EA5CC1460E9F9F2C8CFECE1CF7
    2024-10-21T20:20:08 8230066 4 10 [...].86.254.[...] 7727CA3FB2F64DA29CDDD9F2E46BC44D
    2024-10-27T16:51:55 8230040 3 10 [...].55.80.[...] 772C39703BBB4183B113C575DB5A907F
    2024-11-17T23:13:40 8200223 6 10 [...].251.52.[...] 774297A77B2740248FCEA9822FD39CC3
    2024-10-26T15:17:14 8220057 5 10 [...].152.222.[...] 77912CF764244C2A896F6B9746CE4ACD
    2024-11-06T22:22:49 8230024 6 10 [...].92.147.[...] 7796C5B7F8ED4BD393193D9ED74D6416
    2024-11-02T20:02:14 82000464 2 10 [...].177.77.[...] 77B48ED40CA44F3DB0DC5D47CDCE45E6
    2024-11-29T13:43:14 8230083 12 10 [...].130.27.[...] 77C17AC161BA4F36A266CB7693B3799C
    2024-10-19T15:03:00 8220152 3 10 [...].66.136.[...] 77C571F22D2F4546AE026B44A28B8149
    2024-12-02T21:35:05 8230037 9 10 [...].74.119.[...] 7802A1F2F71B4BDE9CFABA92E820CE72
    2024-11-19T15:10:32 8220039 16 10 [...].49.98.[...] 7805792FE56B4EC6B6CEB5CFECFBDFAE
    2024-12-17T12:33:51 8230013 10 10 [...].26.9.[...] 782537914787461AB965C5172EED1A1A
    2024-11-12T20:26:04 8230021 6 10 [...].246.176.[...] 789E21579E5444E2B822961C0B41DE54
    2024-12-01T23:01:50 8220143 12 10 [...].210.32.[...] 78B6316909CB479A975EFD428D19FEB7
    2024-12-21T16:05:16 8230027 10 10 [...].64.249.[...] 78D607873DCD4D7A92E2992613FEB547
    2024-12-09T15:59:58 8230120 12 10 [...].74.59.[...] 7915B73EC1E44A4EA79268C16280BEF3
    2024-10-10T12:26:15 8190378 1 10 [...].58.136.[...] 794FEAB9FD6A422FB9D2A3DF51D466B3
    2024-10-24T19:27:08 8220156 12 10 [...].65.125.[...] 79605BAAB9BC499EB0C89F792D7B6905
    2024-11-27T20:40:48 8230065 16 10 [...].74.87.[...] 79645B8D92994085A930CFB02CA86FEC
    2024-10-19T23:18:32 8190304 11 10 [...].217.176.[...] 796B53B93CCB40C2987324E61619316C
    2024-11-13T11:01:39 8230077 6 10 [...].73.119.[...] 7970A4BB537641B9B6606F79C02DE2EA
    2024-11-20T13:45:49 8230056 16 10 [...].242.226.[...] 797B88C41EC04BC083B5CA0FF38F9CBE
    2024-10-27T15:16:25 8230127 4 10 [...].176.109.[...] 79A8A9B867114E0F90A9642CC1DFA8EB
    2024-10-28T21:34:29 8220036 3 10 [...].178.164.[...] 79AFB1BB6745480EA6585D8A168D01E4
    2024-11-07T19:23:04 8230147 5 10 [...].203.255.[...] 79E15F520EB747E9B8FA08A47EE370D7
    2024-12-03T17:15:43 8230021 9 10 [...].26.37.[...] 79E34FD55F64453A819F133A0EA9392B
    2024-11-05T16:52:33 8230124 5 10 [...].86.31.[...] 7A098E4C4BFC4033B6831AC9264CB1BA
    2024-12-17T00:43:08 8230070 15 10 [...].217.161.[...] 7A27E0DBFB4949849BBF2183330A2F4F
    2024-11-11T15:03:35 8230005 6 10 [...].26.71.[...] 7A3A2EF42C22421E893A72B330CE872C
    2024-10-23T12:36:16 8230244 3 10 [...].86.152.[...] 7A4A1CF3CF874D14891A9A3C084F973C
    2024-10-10T18:52:57 8170017 1 10 [...].66.31.[...] 7A8F5C7DE1F042218712EC01179AA1EF
    2024-11-08T13:25:48 8200117 10 10 [...].92.100.[...] 7AAAAA44E9DF4606A0EE9ED72AD68256
    2024-12-20T16:17:32 8190332 10 10 [...].107.113.[...] 7AC44E35C6634A30BD73ABC46FEEE703
    2024-10-10T14:12:04 8220108 3 10 [...].26.22.[...] 7B0D3217510A496B97AB67D58BE31F67
    2024-12-21T12:13:30 8230159 14 10 [...].84.9.[...] 7B1360C651224A6E86F5A1BFC70FC3DA
    2024-12-03T20:27:49 8230100 12 10 [...].237.31.[...] 7B9650F2D17D4D16A4DA73009EBD78AF
    2024-11-23T12:45:43 8230101 16 10 [...].217.161.[...] 7BE0BBF10B3A477387BD7E2A71A8DF38
    2024-12-08T20:29:59 8230053 12 9 [...].74.24.[...] 7C517BCF4012429A9189906E3F0E0F84
    2024-11-08T14:56:22 8220057 6 10 [...].217.161.[...] 7C5A8F15DD494CEBB344E013932FFF65
    2024-10-25T17:03:28 8230067 3 10 [...].166.115.[...] 7C6DB17DC0D94D5B985AAC24C955FFEA
    2024-10-10T01:28:08 8220042 1 10 [...].168.1.[...] 7C7BC96787A2467CB4D9C43947381C40
    2024-12-02T16:33:33 8150188 12 10 [...].177.237.[...] 7C9BF64F598844C99D625D7F597D0202
    2024-12-08T23:31:02 8230150 9 10 [...].203.141.[...] 7CE5FE835D60486194B321409467DE6E
    2024-12-08T18:59:50 8230160 7 10 [...].246.251.[...] 7CFBA002C75A4ED68FFEACDC0AD774E6
    2024-12-15T23:16:42 8220231 8 10 [...].140.32.[...] 7D0C29F6E2D74569A0C1B77C71684C39
    2024-11-23T21:30:57 8190051 16 10 [...].251.255.[...] 7D28460F40A24717A6B47A94CAC72031
    2024-11-09T20:16:57 8170017 9 10 [...].87.194.[...] 7D5D18339E7541C399A36299866F77E9
    2024-10-09T13:34:39 8220156 2 10 [...].26.20.[...] 7D70F213C6F4428DB66B1E85F07ADA9F
    2024-12-08T16:48:04 8230058 7 10 [...].210.98.[...] 7D799F5909334C839A65A023077C4E55
    2024-10-15T08:00:31 8230139 2 10 [...].140.90.[...] 7D939637337443E0B3D32F8D31991C0D
    2024-10-13T20:45:50 8230019 1 6 [...].86.152.[...] 7D957DE7CD9E4D868EC0FB2A0CF97C72
    2024-12-06T20:28:06 8230014 7 10 [...].49.227.[...] 7DCA50F5C75846F9BB02806FEA2B8277
    2024-12-05T15:23:59 8230134 9 10 [...].58.192.[...] 7DFA65CF521844FE9A4F2B6B57295B6A
    2024-11-25T20:27:03 8220142 7 10 [...].107.37.[...] 7E14C8DD41FB4C3FB9A53ACFCE8795D6
    2024-12-01T18:47:39 8220110 12 10 [...].74.160.[...] 7E22B84C271D4AA1B25EC1D56F119313
    2024-12-16T00:03:03 8190376 8 6 [...].65.142.[...] 7E3830D7B8A446EA9D54913BB08BA0BC
    2024-10-12T15:35:56 8220142 1 8 [...].107.37.[...] 7E421200B50541D393E61D3FAA402954
    2024-10-28T03:13:15 8220211 3 10 [...].168.2.[...] 7E69E41BA36B4B8B992C4C96A7BFFF16
    2024-11-19T10:45:19 8230005 16 10 [...].26.71.[...] 7E9A9B40C56A41FF822CBFC5FAF89C0E
    2024-11-07T11:14:12 8230072 5 10 [...].84.133.[...] 7EBCE341BDDD4097B002FAA9D4FF62A3
    2024-11-19T23:28:25 8200117 15 10 [...].92.100.[...] 7EC5AADF8B954978B75B786F7B191E95
    2024-10-10T18:24:28 8230011 1 10 [...].26.25.[...] 7F00FE3F77514A73BCED0F3AB623FD6C
    2024-12-02T22:36:24 8190271 9 10 [...].71.4.[...] 7F03E098389049E8884B218E480753C4
    2024-11-16T12:18:42 8230078 6 10 [...].73.199.[...] 7F176B0657E24691AD3982CF65FF6517
    2024-11-22T23:19:17 8220148 7 10 [...].73.99.[...] 7F181E2140DE4932B8FB4AB5BC9028CB
    2024-12-01T16:28:53 8230217 12 10 [...].210.95.[...] 7F2BD2A71023497C8B920D4C20391856
    2024-11-05T16:43:54 8220108 16 10 [...].73.237.[...] 7F6C12E25ED34A2882DB7D6E9210808F
    2024-11-12T15:05:57 8230092 5 10 [...].26.27.[...] 7F7CCE418D434843BA6510B9599B92A0
    2024-12-10T16:15:15 8230059 8 10 [...].6.162.[...] 7F8156146B6B405E82047D6D32327193
    2024-12-01T20:38:12 8220053 12 10 [...].217.161.[...] 7F84DA84F9704E8FA30B931BE26056DB
    2024-12-15T20:59:13 8230099 8 10 [...].87.198.[...] 7F8B68BCB10E48EA9A6A58711C6099E8
    2024-11-26T22:42:35 8230165 6 10 [...].92.250.[...] 7F8F8A0911D54427B68F17486E704F44
    2024-10-22T20:51:09 8230125 4 10 [...].86.168.[...] 7FA8790A3F7A4E609615CF26B39C5BB8
    2024-10-13T00:22:36 8230094 1 10 [...].178.151.[...] 7FBC5D813C344820B6122583A209683E
    2024-12-15T19:47:22 8230097 8 10 [...].131.183.[...] 7FDC23F109974F43BB331AB968A9DB33
    2024-11-02T14:41:48 8230074 4 10 [...].237.199.[...] 7FEB91F9BAF3447C9C4A019C801BBEC0
    2024-11-24T18:06:04 8230047 16 10 [...].84.204.[...] 80018CEEB081453FBEA7688CEEEDCF00
    2024-12-18T22:19:50 8200152 11 2 [...].74.73.[...] 8015AB0C612E4C8A91F4DCC24CD5C209
    2024-11-30T19:18:36 8230052 12 10 [...].38.25.[...] 80621BDA909F48FE8157797A40BE5D00
    2024-11-22T16:36:20 8230024 16 10 [...].177.235.[...] 8064E9E385074199843E0E0AE4EC6972
    2024-12-03T10:16:43 8230114 9 10 [...].26.53.[...] 807772A90B704707928FCFBAA0DF9B94
    2024-10-26T18:51:36 8230163 3 10 [...].1.22.[...] 8088D70B7B844203AD5A41D7E9AC7C95
    2024-12-05T18:55:32 8220114 9 10 [...].203.193.[...] 80C6391F12C546A7B6BA5050F09D74BE
    2024-12-10T17:59:33 8220142 8 10 [...].107.37.[...] 810CEDF0CBD246E2946A54491987D9EA
    2024-12-01T16:05:09 8230074 12 10 [...].237.199.[...] 810D129D5B9E4158A866DB8D054CB91C
    2024-12-08T18:38:29 8230092 7 10 [...].58.136.[...] 812CFF38396E45138B81E5AA2CC28C6C
    2024-11-27T11:51:46 8230089 12 10 [...].84.27.[...] 813A65AAEA4746869F414F524E97CE10
    2024-11-04T16:15:35 8220039 5 10 [...].49.101.[...] 813E80D5C655474E8F2CD57F42AB00F9
    2024-12-09T16:13:59 8230059 7 10 [...].72.95.[...] 814B0D705D50468E965F94432FBAE25D
    2024-10-14T17:01:23 8230170 1 10 [...].26.42.[...] 815F52EA23784EA1A9C3D9F911F1B782
    2024-12-09T21:59:45 8230037 7 10 [...].74.114.[...] 81842E9F2A3D4DBC8FD34E0915FA4A67
    2024-10-21T21:57:48 8230012 3 10 [...].74.15.[...] 818EA4B8706745E680D2F4EB072B7CDE
    2024-10-23T11:40:24 8220228 3 10 [...].103.47.[...] 81AFF37572124F25A40FD260E32F28BA
    2024-12-06T05:28:22 8230010 7 10 [...].4.48.[...] 81B01E8EE7D242E891F57856297779E7
    2024-12-17T16:57:25 8230034 10 10 [...].107.85.[...] 81DE3FEE134C49A2B3DF1579803EBA4A
    2024-12-06T18:10:09 8220039 7 8 [...].219.165.[...] 81E8B8A9BE374FFDB4D55A35C91BCA40
    2024-10-18T00:10:40 8230007 2 10 [...].140.70.[...] 81ED3B7088C14AA9A2F5E52FA912BB60
    2024-11-14T21:14:26 8230042 6 10 [...].49.124.[...] 8218FD5839D54DB39F336346B5029907
    2024-12-08T16:50:09 8230138 9 10 [...].4.87.[...] 823532460EDD442DA1704E017101A670
    2024-10-14T17:05:27 8230097 1 10 [...].26.30.[...] 824CB7416D314393A3136C26149161DD
    2024-11-02T20:28:55 8230111 4 10 [...].237.18.[...] 825AC507529C493485E246EC420E04A2
    2024-10-27T13:45:25 8220091 3 10 [...].66.136.[...] 82618C24180844BFB9E5142C344FF212
    2024-11-18T20:53:57 8230043 16 10 [...].4.92.[...] 82B5ECED5E9E416EAA5429B69E5DC4FD
    2024-11-02T00:40:16 8230104 4 10 [...].178.146.[...] 82B9272D58DF497B9E69D1165B55BBC9
    2024-11-22T14:37:38 8230038 6 8 [...].75.52.[...] 82C9395568C74E4287DA9394D9619E03
    2024-12-14T17:08:31 8230058 8 10 [...].210.98.[...] 82C9D8579E134B59A8A685B1BDB4F773
    2024-11-30T19:32:17 8230157 12 10 [...].217.175.[...] 82DF96E6AA1146D2AE115CFCA5C34E05
    2024-12-15T23:14:40 8230088 8 10 [...].168.0.[...] 82FBAA5887DA42C0B62B78E1D98AE943
    2024-11-10T22:02:52 8230153 6 10 [...].246.241.[...] 8301CBB29287426C8B6729825917FBE7
    2024-11-14T17:36:58 8230111 6 10 [...].166.54.[...] 830FC89D36CF40D38974228DAAC972AE
    2024-10-20T13:55:13 8230064 2 10 [...].217.161.[...] 831A61377C05475CBA033289A45E4C99
    2024-12-04T21:52:05 8230227 6 10 [...].66.136.[...] 833C87BE21724B54B7555F1E979DBD84
    2024-11-03T22:19:11 8230120 4 10 [...].74.10.[...] 83510CCD32CB42F4803B8A230A7A2B22
    2024-11-10T23:57:03 8200095 5 10 [...].71.129.[...] 83634EC705424A408F4863F99D386555
    2024-10-18T12:11:03 8220011 5 10 [...].168.1.[...] 8370A462765942678DEA365CE792BE70
    2024-10-14T22:16:12 8230244 2 10 [...].86.152.[...] 839B88C38101470D9B65047139250E45
    2024-10-28T19:07:15 8220070 4 10 [...].58.226.[...] 839E4A6660964720A387C7B0FB1021E5
    2024-10-22T18:57:27 8230143 3 10 [...].66.146.[...] 83B11D9BDF1D4C209084357FF3EEBE85
    2024-10-21T12:14:12 8220228 2 10 [...].103.47.[...] 83B8DC104C28448DBEB9E7C825C4ED92
    2024-11-05T16:28:49 8230071 5 10 [...].177.156.[...] 83D5AB80828F4C22AFC1AAD1436E3BFD
    2024-12-15T20:43:34 8230035 8 10 [...].176.104.[...] 8403161380FE4FFC8FECB306A2BC4CF3
    2024-11-12T00:00:15 8230098 6 10 [...].43.40.[...] 841C041C23704F298DC3774B11D975B7
    2024-11-05T14:33:37 8230039 5 10 [...].26.74.[...] 842882978D724F54B6CC3978843951F4
    2024-10-20T22:10:25 8230034 1 10 [...].107.124.[...] 8433B5EC3E05411CBFCDE59B27CEA077
    2024-11-02T17:53:26 8220052 4 10 [...].168.0.[...] 847BA56CFD93407C8CBD92516DD56ACF
    2024-11-19T14:12:22 8220039 6 10 [...].49.98.[...] 8483546E284B412093BA2FAF4CEE3450
    2024-12-15T01:55:38 8220145 15 10 [...].72.171.[...] 849B4A2100DF4EAC8675DB9D713936CD
    2024-10-12T20:01:03 8230231 4 10 [...].166.35.[...] 84FEC8DF367A476DBBDC54F14B3013DA
    2024-10-27T16:58:11 8230245 3 10 [...].49.119.[...] 8528B5567FB147CEA99CF2D5569EA95B
    2024-10-28T17:18:01 8210163 7 10 [...].168.1.[...] 852D7BC23F0E46A2A8111E86433C88A8
    2024-12-05T15:06:50 8230043 7 10 [...].4.92.[...] 8541CBEF82044DA7B7D8C80E54135A75
    2024-11-19T22:48:00 8230039 16 10 [...].87.161.[...] 854F0D70D4B94E3D9BED9F373258BBA0
    2024-10-10T20:09:57 8230014 1 10 [...].4.176.[...] 8551E8A254D245B09E6088A85EABED8A
    2024-12-03T14:33:12 8230021 9 2 [...].26.37.[...] 858E7841BBBE468BBB7CA2B9A9195CFE
    2024-11-18T23:34:51 8230107 16 10 [...].72.95.[...] 859C9AE16A7541AD90EC868E93EE8999
    2024-11-05T19:32:39 8230083 5 10 [...].130.27.[...] 85ADC6414D46458AA65948E860C23482
    2024-12-02T16:32:27 8230114 7 10 [...].203.139.[...] 85CFBBD9B2F649898635C4C03D5FCCC0
    2024-10-17T16:30:04 8220141 5 10 [...].26.64.[...] 85DB24A7A8F941C6BA06EFBFF92B6403
    2024-11-28T15:37:08 8200095 16 10 [...].94.189.[...] 86236EBA14304814BA36D57C351AA450
    2024-11-24T18:34:18 8220114 16 10 [...].140.90.[...] 8631355484C14E1F8D9CCDD2CEA5B967
    2024-10-09T20:12:04 8220156 3 10 [...].131.12.[...] 863B0B1382ED4C94B70D47DD2FCE02EE
    2024-12-15T23:40:45 8230104 8 6 [...].251.255.[...] 864F796BD6774126893D3CCB3B8BFDF7
    2024-11-05T11:54:52 8190378 6 10 [...].58.139.[...] 868039A7F7F249E4A16711638854288A
    2024-11-10T15:47:49 8210219 6 10 [...].168.1.[...] 8683C3D503674322A88912150A832AC7
    2024-12-07T10:15:02 8230072 7 10 [...].84.142.[...] 86A61FE872A043BFAC6B25BA611A2560
    2024-10-16T23:34:36 8230136 2 10 [...].86.16.[...] 86C06F66DAE141B5B867790302B2BCC9
    2024-10-18T10:43:33 8230122 1 8 [...].203.204.[...] 8710813C02AA4F4BAB484A81D4A35721
    2024-10-12T18:28:06 8230152 1 10 [...].203.162.[...] 874AEC12CBA24D948A987B0DA720644A
    2024-10-29T16:53:30 8160117 1 10 [...].217.161.[...] 876236919EB049A3946EBC2F8331B774
    2024-12-04T23:59:04 8230145 7 10 [...].87.226.[...] 876EFF99AAC54C70882ADD3F1A89139B
    2024-10-25T12:39:10 8230136 3 10 [...].86.16.[...] 878CF81B96284BDCA2DFBD5C2CE465F9
    2024-12-01T19:17:18 8220025 12 10 [...].177.82.[...] 878F82EC977C4B82AF55008E34EFD95B
    2024-11-19T13:22:50 8230157 16 10 [...].178.151.[...] 879C3F2CF0B24060870056FD41D1C60C
    2024-12-05T23:12:23 8230125 7 10 [...].74.252.[...] 879D705D1A75432785CAEFE963484D88
    2024-12-09T21:33:40 8230111 7 10 [...].168.0.[...] 87A651AE9FC94B5185F1430669B21EEF
    2024-11-26T22:50:26 8230036 12 10 [...].74.54.[...] 87BCF34B4203407B97A73B92EB8C16CC
    2024-11-14T23:27:00 8230127 7 10 [...].176.109.[...] 87BD4B19A79D48EEB84040C1400CBB30
    2024-12-13T14:50:04 8230101 8 10 [...].217.161.[...] 87BDCE6C34DD42CAA15CD00ED2194E16
    2024-10-13T01:41:23 8230093 2 10 [...].178.204.[...] 87CEB490205A40179179D9E4F65D25F6
    2024-12-08T22:38:49 8220215 9 10 [...].59.80.[...] 87D86BCD62BD44829A0E434A74D22DB3
    2024-12-06T15:30:03 8230142 9 10 [...].58.227.[...] 87DF0991A867422E9A445D56865CC88A
    2024-10-23T11:23:43 8170068 2 10 [...].41.71.[...] 886D228EBBD54F7DAAF6983D73D7DB5F
    2024-11-19T16:28:59 8230035 16 10 [...].177.146.[...] 88B4EAF7FFB3423C8B963CB93CA9653E
    2024-11-21T20:06:21 8230104 16 10 [...].251.255.[...] 88DB06FD6447428389FA09899F320B61
    2024-12-10T20:52:33 8170068 7 10 [...].203.179.[...] 890F811F13A4425C8752736BA354A6F6
    2024-10-13T19:26:22 8190091 1 10 [...].217.174.[...] 89151970FA27401AB981C9D7757560C9
    2024-10-30T21:54:18 8230038 4 10 [...].71.145.[...] 89303890C43C4FFEB3C650944DDCAEB6
    2024-12-10T16:17:25 8230244 8 10 [...].203.251.[...] 8972D73678D04C1C923EFF0E98C65D90
    2024-10-12T21:17:54 8220025 1 10 [...].255.68.[...] 89C3098CF8424D3C919A0627C4F9AF85
    2024-10-17T17:48:59 8220052 1 10 [...].168.0.[...] 89CA7C68607A4B41964E31AA7203E170
    2024-12-04T20:14:27 8230131 9 10 [...].103.27.[...] 89D6A042B0C0473887EE11ACB7598565
    2024-10-11T11:36:58 8230033 1 10 [...].43.46.[...] 89DD008BE46645188E9AC9AF3A29D785
    2024-10-17T21:54:01 8230037 2 10 [...].64.49.[...] 89E065580EA2409CA5D0086F3DC64A97
    2024-10-16T01:15:31 8220042 2 10 [...].168.0.[...] 8A476553318E4001B7C81E3E2A9E5B11
    2024-12-08T18:07:20 8190332 11 10 [...].107.113.[...] 8A4AA07E7A4E48F18787F97DAFC8A980
    2024-10-23T19:19:04 8230069 3 10 [...].86.43.[...] 8A4EEEE24E5C4AEC894DAAE839F587D1
    2024-12-07T12:07:58 8230244 7 10 [...].86.152.[...] 8A60B92D24FD4A8795DF6402CD127FF2
    2024-12-06T13:57:47 8230246 7 10 [...].87.226.[...] 8AC5E0A288EA4C26B0AE7E7806286611
    2024-10-12T20:12:04 8230092 1 10 [...].58.225.[...] 8AC958968704471E958203EC2A7EC5BE
    2024-11-20T16:28:41 8230061 16 10 [...].251.255.[...] 8ADED4CD457E4F92B5063EF593C02EC7
    2024-10-24T19:46:48 8230159 3 10 [...].55.123.[...] 8B29C3B8C45C4E8F811EAD7D73C8BD9F
    2024-11-10T22:25:45 8230073 5 10 [...].84.177.[...] 8B5673B5F9C9498CA455D36E836F9068
    2024-11-05T17:24:46 8230056 5 10 [...].242.224.[...] 8B61CCE13FA84F27B364DFACC1C6BE54
    2024-12-20T00:24:00 8230100 8 10 [...].55.123.[...] 8B62CC76950D4C2693D4327E3197386E
    2024-11-05T18:14:30 8230143 5 10 [...].66.146.[...] 8B801C7F542E4B0B9210F9C237C0E318
    2024-11-09T15:18:08 8230131 5 10 [...].103.219.[...] 8BA21A410C834DE2B67CB4C91DB55B87
    2024-12-09T21:29:52 2210175 7 10 [...].74.47.[...] 8BFEA30FAB504501A70A1A5D6552200F
    2024-11-01T15:27:25 8230056 4 10 [...].242.224.[...] 8C441B7EEFE542B1A370549D702B63DF
    2024-12-12T20:44:01 8230135 8 10 [...].242.187.[...] 8C4F073AB7B34DECBFC71690191A4B32
    2024-10-30T22:10:08 8150188 4 10 [...].92.185.[...] 8C72FD08A2194F8589765E8D630F0772
    2024-12-15T17:49:56 8210111 8 6 [...].242.225.[...] 8C74D45D126B4EC8BE1BDAA900D182B5
    2024-10-20T16:26:15 8190271 2 9 [...].217.172.[...] 8C7B6CAD292B498CBD36D2DDE4C90798
    2024-10-18T00:57:47 8230024 2 10 [...].103.33.[...] 8CB03695DD784FDD90140B7665149526
    2024-10-22T14:26:15 2210175 3 10 [...].26.74.[...] 8CC2B51DFFB548179E4DA3F305E19618
    2024-12-15T11:35:54 8230139 8 10 [...].242.139.[...] 8CC77664D0604768BCCAF9E3E8962FD4
    2024-11-24T22:30:39 8230123 6 10 [...].71.227.[...] 8CCF1E07F7B44E31AA2EDC15A9CCEE4F
    2024-11-19T16:52:01 8230059 16 10 [...].14.243.[...] 8CF085CBC1DD471988ADF4F111171E25
    2024-11-05T23:40:33 8220149 12 10 [...].58.138.[...] 8D01B974AF9E40958254B8C6CC742DD6
    2024-10-09T01:55:03 8230231 2 10 [...].167.161.[...] 8D08888DF3FA406BB223713FC98EE2A6
    2024-11-14T22:08:46 8230244 6 10 [...].70.139.[...] 8D153D751C8B4AC58AFF9D3CBF63AEAB
    2024-10-13T11:13:37 8170017 3 10 [...].66.31.[...] 8D15DD3A2DA447908E4B1E58AEB50A32
    2024-11-26T00:53:13 8220036 16 10 [...].86.31.[...] 8D1D63916F32412786A4292FE4778838
    2024-11-08T02:44:01 8230065 5 10 [...].74.87.[...] 8D1DC8693D304240B7366D96CB2C7FF6
    2024-12-02T20:31:32 8230027 9 10 [...].251.124.[...] 8D3ACA73EC374D9EB9F7758B640D1C77
    2024-11-19T22:48:27 8230143 6 10 [...].203.113.[...] 8D58030AAFF240EF82DA71AD1A382841
    2024-11-26T21:18:10 8230007 16 10 [...].140.12.[...] 8D5E6CF50BE746AAA826F081E4560628
    2024-12-14T21:24:16 8230150 16 10 [...].131.142.[...] 8D754BD729CC4F5781DFBB7C830A4234
    2024-11-06T20:41:16 8230144 5 10 [...].1.100.[...] 8D89E107A77E417DB434A86096CAD884
    2024-10-21T20:51:55 8230078 3 9 [...].203.215.[...] 8D9BF6E01CA443269B9D035D17B715D9
    2024-12-11T13:36:37 8230159 8 10 [...].242.185.[...] 8E25D7AC66D84AE0A485FC96FDC04059
    2024-12-02T05:40:50 8230079 12 10 [...].6.69.[...] 8E2EA0B4709645A09D7320B0CDB70669
    2024-12-02T13:51:54 8200168 15 10 [...].177.150.[...] 8E750C124E23417F9C44B5C2781F011A
    2024-11-18T22:59:26 8230107 6 10 [...].72.95.[...] 8E80685C33354100ABE63CD08C87B5E7
    2024-11-03T14:03:12 8190381 3 8 [...].237.222.[...] 8E8F7609975F4C90ABE993F527EE6B84
    2024-11-04T21:12:47 8230018 4 2 [...].251.52.[...] 8E96234DA9D346E499A6473E9D71DB9D
    2024-11-19T22:38:29 8220228 16 10 [...].92.138.[...] 8EAB1F2118A14A5F9793E3A0F21628D9
    2024-11-09T21:39:47 8230220 5 10 [...].71.169.[...] 8EC064DF80D345D694A069CAABE4D2CF
    2024-11-02T15:50:31 8230138 4 10 [...].4.227.[...] 8EF674036A254948A373ECE7508F727B
    2024-10-09T23:21:04 8230068 1 10 [...].75.76.[...] 8F193C6F209B49A0A8676950612EEBDE
    2024-11-22T20:25:06 8230034 6 10 [...].107.85.[...] 8F3AA34E333B40C59C9151CAF8B369E5
    2024-10-22T22:36:22 8230147 2 10 [...].217.161.[...] 8F53AD2E6FD34AD9877AEC0E473DE61B
    2024-10-19T00:27:41 8190051 2 10 [...].198.190.[...] 8F559A61376A4279A802E90B8A4D65BA
    2024-12-21T11:21:13 8220052 10 10 [...].168.0.[...] 8F59D4BB812649D8903731BCB141FA4E
    2024-12-10T22:54:22 8220011 11 10 [...].168.0.[...] 8F66B81739A440F4822D71B59630B58B
    2024-10-29T22:38:10 8230011 5 10 [...].74.48.[...] 8F6B8109A3DE476D8CAEAF4714C3A9B8
    2024-10-20T15:22:54 8190304 16 10 [...].217.176.[...] 8F6DE74AB43A45618D80ED90624E57C4
    2024-12-01T21:55:36 8190091 4 10 [...].72.194.[...] 8F8030B2C35F4142A36F22CA89791E3F
    2024-11-20T00:12:37 8230012 16 10 [...].74.133.[...] 8F8E3E4AC2D24D608810D5EAD445F25D
    2024-11-19T15:50:18 8220044 6 8 [...].64.157.[...] 8F9AFED4003A4059BC10630D24AA8B53
    2024-12-02T23:24:00 8230008 9 10 [...].203.207.[...] 8FB964DB646A4936B6AAC6320C57F94E
    2024-11-21T21:17:59 8230126 16 10 [...].251.255.[...] 8FBD007232E244DFBD208A39685C576F
    2024-11-02T16:27:57 8230053 4 10 [...].74.24.[...] 8FDB832F974E4308B1975F9B8E7B1EF4
    2024-11-28T14:29:58 8230144 12 10 [...].26.4.[...] 8FF96D37017B42799C29BAEE25F413C5
    2024-12-03T16:23:37 8220215 4 10 [...].59.85.[...] 9011A80249A64F4897804D3027B3C346
    2024-12-03T09:46:35 8230057 9 10 [...].92.142.[...] 901BA26D61D8477B8D9031FE700C557E
    2024-11-29T22:52:51 8230131 12 10 [...].103.27.[...] 903223F2182E4AA4BA4A6BD560564C07
    2024-11-09T19:57:53 8230025 5 6 [...].73.119.[...] 9033F128151F4E7A96DD44ECF7C98D2F
    2024-10-22T16:15:48 8230036 4 10 [...].74.19.[...] 9087910741D948A9A596468D16EAA9AD
    2024-10-15T23:52:07 8230012 2 10 [...].74.218.[...] 9090A493307C4B5D982A3C44A5346456
    2024-11-09T22:58:20 8190238 4 10 [...].130.246.[...] 90CF629C7C8A4E358E5E3568614D4693
    2024-10-24T14:59:54 8230057 4 10 [...].26.37.[...] 90D6971CB8524A76840585883722D69C
    2024-11-30T22:49:33 8220044 12 10 [...].203.70.[...] 90EDD0DB29C548368F8DF5E762AFEFA5
    2024-11-20T18:30:57 8230129 16 10 [...].65.88.[...] 9109686780DD44AFA9D41D445D37FF91
    2024-11-23T15:12:44 8230093 16 10 [...].217.165.[...] 912D583CA51644498028B14FC9F106B6
    2024-10-20T14:58:56 8190304 15 10 [...].217.176.[...] 914B7C03651B402DA35A4C8EDCE6FC90
    2024-11-10T14:18:48 8190238 2 10 [...].130.246.[...] 915912DD70A4421F945FFC419B25ABC6
    2024-10-17T20:56:53 8230142 2 10 [...].54.164.[...] 918059DF41D34BEFBAE360A46EC012DF
    2024-10-29T20:34:03 8230039 4 10 [...].54.247.[...] 9182F62FB10A4CF6AFA55150EEDDF9BB
    2024-10-18T18:37:39 8220025 2 10 [...].255.68.[...] 920280A5D857487FBC8ABD921F92D922
    2024-10-08T22:44:06 8220156 1 10 [...].131.12.[...] 920F634C25E7412F90B607E146966991
    2024-10-23T16:57:05 8230033 3 10 [...].43.41.[...] 9213942F750D4436A1FD2D9E842EDB10
    2024-12-03T22:10:59 8230030 9 10 [...].131.254.[...] 9229111258EC4D27A582A007945609F4
    2024-10-07T18:23:19 8220229 1 10 [...].166.35.[...] 92486D418E1B49AAB59C253F1E54C2BD
    2024-12-08T23:30:35 8230094 9 10 [...].251.255.[...] 925637D5D95E4E46B17C0C5EE83CC716
    2024-10-14T22:24:08 8230125 2 10 [...].72.95.[...] 9257777E9C85489CADEC3944A76858F3
    2024-12-05T16:35:49 8230152 9 2 [...].203.240.[...] 926F5D1A1DC24056AAEB40F2323C5104
    2024-11-03T11:59:13 8230016 6 10 [...].168.1.[...] 9277625855DF4BF1943F36AEED5C8F88
    2024-10-25T14:50:11 8170068 3 10 [...].41.71.[...] 928C6065F7E248408842E6E7ECEBB041
    2024-10-23T18:52:24 8230060 2 10 [...].28.80.[...] 92D055DCBD524488912146DB11FE489C
    2024-12-01T23:07:00 8230061 12 10 [...].138.148.[...] 931565C9B75C4FADB7275DC3D9C863F9
    2024-10-16T13:03:40 8230144 2 10 [...].49.227.[...] 933DA25C4C494503A0335421E18E18E1
    2024-11-07T21:19:41 8230151 5 10 [...].28.98.[...] 9355FF886B274AE2B7DC8EAC9D5466F2
    2024-12-08T10:59:54 8230148 9 10 [...].87.72.[...] 936B97EE2906422489E2FAB9BF5A2FFD
    2024-10-09T00:15:09 8230124 1 10 [...].86.31.[...] 93805BE13BB447C9B1A362E9510A060F
    2024-11-24T22:18:50 8230040 6 10 [...].87.26.[...] 93962815E07543259E80F56AA6BB6F3A
    2024-12-14T13:50:50 8230006 8 10 [...].58.144.[...] 93CEFB068F4841DEB8E9F68CE6CEE36E
    2024-12-15T19:58:44 8190333 8 10 [...].168.0.[...] 93DBE07F8517466987FBDF51CA9CCD40
    2024-11-05T21:47:47 8230089 5 10 [...].84.31.[...] 93E583932A6749F7BCB0F14082108C54
    2024-11-18T12:06:39 8230136 6 10 [...].26.47.[...] 93EFB4C4C95A48899AF8F2FC71D66141
    2024-11-08T14:22:33 8220071 6 10 [...].74.158.[...] 93F044D296014FE2B7E4E09B66FE1905
    2024-11-19T12:14:15 8230105 7 10 [...].203.0.[...] 93F8F25514ED4989B36B1897AD785543
    2024-10-16T13:13:01 8230131 2 10 [...].103.219.[...] 9404BC50F3354697ABB060436952ECC2
    2024-12-15T21:22:46 8230002 7 10 [...].131.130.[...] 942B72F1C7874989B4D61DD9A9EC4A29
    2024-11-27T15:11:32 8220221 5 10 [...].66.136.[...] 943A1D77C36D446E8157D8C552A6093D
    2024-10-26T14:59:10 8220143 3 10 [...].177.141.[...] 94667A2A4771453682C046784B1B5728
    2024-11-23T19:32:48 8230102 6 10 [...].86.186.[...] 94A52999A9904ACA8A06C559A9FC0B6B
    2024-11-15T17:45:39 8230092 3 0 [...].58.136.[...] 94AC97CE893744F1906F6C9E6BA3333B
    2024-12-16T19:00:54 8230088 10 10 [...].168.0.[...] 94B998C390664C86A1AF665E14D17424
    2024-12-03T16:40:11 8230221 4 10 [...].59.85.[...] 94F30EAB60E9492D83D63E509F9F7CFB
    2024-10-15T13:20:54 8230163 2 10 [...].26.43.[...] 94F34E315A4B4F5283B9CA1CDBD0A78A
    2024-12-10T23:54:07 8220071 7 10 [...].74.158.[...] 9508898B4CF345BEAB3534E5A38742CC
    2024-11-26T22:09:19 8220142 12 10 [...].107.37.[...] 950924955CE34515BBAE3E802919A3D5
    2024-11-08T09:56:07 8230035 5 10 [...].177.146.[...] 951ABA4A335C43C3BE1EAAE19587C5DF
    2024-10-29T12:35:15 8230163 4 10 [...].140.29.[...] 951B35F3BCD041BE82E144CBCE6FC0B9
    2024-11-18T01:01:05 8230011 7 10 [...].74.48.[...] 9521787900AD482085A6C93D3F2EE446
    2024-11-16T02:10:43 8230160 6 10 [...].246.251.[...] 952A9D22A74F40ACACF7CA41FE4EA346
    2024-11-19T23:19:11 8200117 1 10 [...].92.100.[...] 953A99FBA7BA4E9F8333111D01537EE7
    2024-12-13T20:53:35 8230143 8 10 [...].203.113.[...] 954253F66E6B43048DEC547843224359
    2024-12-15T20:41:13 8190338 10 5 [...].202.85.[...] 957CAC05263F4DD0816ECEA70ED0EC0C
    2024-12-04T22:17:44 8230042 9 10 [...].49.218.[...] 95CC1FDE4A444947AB760CEE5B0EED78
    2024-10-24T00:01:27 8230113 3 9 [...].75.220.[...] 95E226257B3247F48DE466382753946E
    2024-11-13T15:27:46 8230246 6 10 [...].131.232.[...] 9614EC0695974B189227D2D1E8C92DFC
    2024-12-13T02:14:44 8230160 8 10 [...].92.234.[...] 961DE3EB61834B5AA932529F65F0A682
    2024-10-19T19:48:28 8220044 2 10 [...].64.157.[...] 962F3D6FFE8C4F918D7E730AF2BF7BC3
    2024-12-19T16:51:15 8230061 10 10 [...].138.156.[...] 9656C79D852E4BD28B2E264650D851FF
    2024-10-31T13:04:55 8230042 4 10 [...].49.79.[...] 96752B710B7E4EABA35F3ABA33121F2D
    2024-10-31T20:34:28 8230064 5 10 [...].203.222.[...] 969B5A6182B945489AB6404A09B80331
    2024-12-15T19:05:43 8230069 8 9 [...].86.147.[...] 96C4DA97C22D43EAAADB004EA6CA13D3
    2024-11-19T13:44:13 8150025 5 10 [...].66.136.[...] 96CEFA9A83A345D29FB862DBC2CECFCE
    2024-10-19T11:42:56 8220231 4 10 [...].140.32.[...] 96D3EA1801DC48BB8D2539E4B10F8ED5
    2024-12-05T20:16:05 8230029 7 10 [...].75.100.[...] 96F1F68B631747A1A1F50BA7A4A25093
    2024-12-08T13:01:34 8230147 7 10 [...].72.62.[...] 96FA085F409B4BD9B276C4EA88FF5DEE
    2024-12-01T00:18:05 8220042 8 10 [...].168.0.[...] 9705ACEE7B8D4ACBB918B572AB886D18
    2024-11-09T20:09:32 8230161 5 7 [...].58.226.[...] 970D75EA611C4DB19C2329A6C5875134
    2024-11-26T18:25:58 8220141 12 10 [...].75.104.[...] 970DCD2E2BEC4230B77428B50FE9174C
    2024-10-08T23:02:23 8220053 2 10 [...].217.161.[...] 97132BCAA2844FB785473233837B8650
    2024-11-04T13:00:39 8220108 10 10 [...].26.22.[...] 9722663CF65A42B9B01AFEA84BD69156
    2024-10-15T03:22:22 8230010 2 10 [...].246.185.[...] 9724426E68F44DDA94198B529DE3AE5F
    2024-10-09T19:31:01 8220105 2 10 [...].1.100.[...] 97642E8A86E34168B8C2A36FC17ADB84
    2024-10-26T14:14:30 8230019 4 10 [...].86.152.[...] 97721C9FE4DD4287A2DE3F1E26A6FE70
    2024-12-08T13:26:40 8220085 9 10 [...].26.250.[...] 977F616419A14949A1423BEA43724E51
    2024-10-18T15:22:40 8220011 7 10 [...].168.1.[...] 977FF5FE94F1495FA9F6E7E22B8ED1EC
    2024-11-26T20:36:00 8190301 2 10 [...].68.196.[...] 9786047D796941FEBD8D084053491A33
    2024-12-02T20:11:23 8230076 9 10 [...].4.186.[...] 97896AB9F36A4828983B107095FA9610
    2024-10-16T18:15:19 8190273 2 10 [...].177.233.[...] 97B7D4B7F8504204A382DC7926C5D68D
    2024-10-20T19:19:45 8230018 2 10 [...].251.52.[...] 97CAB025731C4466AA6F086EB3D9E572
    2024-11-18T14:08:05 8210226 1 4 [...].138.155.[...] 97CDD0E6245C4FC894DB40A109C8B998
    2024-10-14T11:35:01 8220108 6 10 [...].26.22.[...] 97DC803F8CE64E9A9BDDC828623025E3
    2024-10-10T18:20:03 8210219 1 10 [...].168.1.[...] 980FBA2217BF467D95E93D37D9DD339C
    2024-12-08T20:52:42 8190333 7 10 [...].168.0.[...] 98456832A8084BD1A264C5464CCA7D83
    2024-12-17T17:03:52 8230093 10 10 [...].217.165.[...] 985130DFC4FC4F93B3AF372627DB98F5
    2024-10-27T19:22:10 8230073 3 10 [...].131.0.[...] 9876561A486144EF8AB1B0F8F0A3E73C
    2024-11-29T20:49:04 8230085 12 9 [...].217.161.[...] 98E6A6FBBA404DE1B7788D410B1D6CB5
    2024-11-02T16:57:15 8230101 4 10 [...].217.161.[...] 98EE3BCA68B9487890F70C0048CBB75C
    2024-10-11T14:17:54 8230160 1 9 [...].251.66.[...] 99248EA7FF8C40D5B3C63E488B052ED3
    2024-11-22T10:52:51 8230028 16 10 [...].87.106.[...] 992ED98CD2484F778F6CB6F1573110D2
    2024-10-11T18:02:36 8230083 1 10 [...].130.27.[...] 993A25A898964A3D95ADBD516B5995BF
    2024-11-01T23:34:07 8220108 11 10 [...].73.236.[...] 994C33015DFC4B3796D1966DB9604BF9
    2024-10-12T02:17:56 8230030 2 10 [...].131.254.[...] 994EA16D1AA946D9AC849CEEAB3748BB
    2024-12-07T13:56:56 8190051 7 10 [...].58.251.[...] 997C5797D6114ECD8E01AF3CA943D834
    2024-10-14T23:12:33 8220039 2 10 [...].92.58.[...] 99920A05CE664CC68FC9F012C878F149
    2024-12-08T22:31:05 8230053 9 10 [...].74.24.[...] 99A5F6B538E54CC0ABBC36364CAE760C
    2024-10-22T17:09:32 8230132 5 10 [...].140.29.[...] 99A8E1EFC54243F09872FEBEA0C77AB6
    2024-12-06T21:33:56 8230065 7 10 [...].74.87.[...] 99FDF7AB4F15463C8A8FBEA28D37F97A
    2024-11-20T17:39:23 8230042 16 10 [...].49.218.[...] 9A2219B059254FAB8AF0E55CAC38B3E9
    2024-12-11T01:51:29 8230168 9 10 [...].225.135.[...] 9A262CCB22E643FD874D30833F262155
    2024-11-24T20:01:43 8220110 16 10 [...].74.160.[...] 9A2B29382FBC46A09A9B4B606C2EAB60
    2024-11-05T16:50:13 8230126 5 10 [...].65.190.[...] 9A44ABEB00B44821ABC1B837ABE1F4D3
    2024-10-25T01:37:00 8230103 3 10 [...].66.136.[...] 9A6DA1EB13334E9AAEAA7A9608200386
    2024-11-02T13:50:09 8230165 4 8 [...].67.209.[...] 9A835A78A3FA4DC79D0FDF7C9F325530
    2024-11-17T20:07:45 8230113 6 8 [...].75.220.[...] 9AEC23D851994977916DF2034FD66D89
    2024-10-19T20:42:18 8200095 2 10 [...].168.1.[...] 9B2E783714544976BB9F2B64ADC1C548
    2024-12-05T23:43:26 8230144 7 10 [...].1.100.[...] 9B4A4664D66B41C5B27C09E06A6AF94C
    2024-10-08T00:29:16 8230098 1 10 [...].49.65.[...] 9B4EDD85DAA34AAA9B98D2D9F0BC8903
    2024-12-03T18:33:02 8230031 9 10 [...].84.27.[...] 9B6553AB32934DE1BC5119EA07F01638
    2024-10-27T22:08:37 8230167 3 0 [...].86.96.[...] 9B6A59EB1E38414CB1973C66EFF97FC2
    2024-11-30T15:52:20 8220011 12 10 [...].168.0.[...] 9B7418E807074C10B49C61CF432E05E9
    2024-11-17T14:46:15 8170068 6 10 [...].173.84.[...] 9B79D49055A34EA985CF216008A25C88
    2024-12-11T21:20:17 8230106 8 10 [...].58.195.[...] 9B8921A1F8054746AF13AE264FD2D9B3
    2024-10-10T23:28:19 8220108 5 10 [...].73.236.[...] 9B9ECACC83064DE6A63FC012F6E6FAC7
    2024-12-16T19:38:08 8230089 10 10 [...].74.161.[...] 9BD5F92F35194E1BBF7CFA7A571801AA
    2024-12-07T14:39:35 8220123 7 10 [...].87.46.[...] 9BE0AC76B12F402497C8005AC47A248C
    2024-12-19T00:05:25 8230091 15 10 [...].6.161.[...] 9BEB53313D8F4129AC4AEC60CC98B1D6
    2024-11-19T20:47:43 8230154 11 10 [...].198.180.[...] 9C08C78C59644944A28C409A9D09F7FD
    2024-10-21T20:27:24 8230030 5 10 [...].131.254.[...] 9C1C13BB460A474FA5721298EEBBF1AD
    2024-11-06T02:49:26 8220149 13 10 [...].58.138.[...] 9C3C4EA89457405CAAE08898EA60EAA4
    2024-10-21T22:32:08 8230124 3 10 [...].86.31.[...] 9C4235CC0ACB41D99E892BBF02257665
    2024-10-26T20:17:36 8230075 3 10 [...].71.4.[...] 9C4DC0F526EB4E899B89320BB3581E95
    2024-11-02T16:16:09 8230117 4 10 [...].251.96.[...] 9C4E3AEF2C9B49D5A02E807236EA530D
    2024-11-09T15:14:35 8230075 5 10 [...].71.4.[...] 9C81A16950144A92968F3DE66A9E4FAC
    2024-11-27T13:58:35 8220221 2 9 [...].66.136.[...] 9CA90A73D53546EAB4D48FEDDE03750A
    2024-11-24T18:31:20 8150188 6 10 [...].92.185.[...] 9CC17FDFFB194F868CF03541B3691AA1
    2024-10-27T17:24:03 8210226 1 3 [...].87.105.[...] 9CEC8F4DE8E74AFFBF7D321270E0C41B
    2024-10-28T02:23:31 8220211 2 10 [...].168.2.[...] 9D1658BFDCF84A5E880E48177B5F30BA
    2024-11-10T00:17:24 8190051 5 10 [...].49.109.[...] 9D2E2B18A7304679926F784AB65CF1FA
    2024-10-18T18:40:42 8190304 6 10 [...].217.176.[...] 9D339257A6074E2386B566E43F0ABF00
    2024-12-08T15:57:05 8220231 7 10 [...].65.87.[...] 9D6D8C0245DA4F5F9FC3F8B055BF383E
    2024-10-22T20:53:10 8230071 4 10 [...].166.103.[...] 9D775B2592F34C37A7AB2265A83F1283
    2024-11-16T14:08:02 8220025 5 10 [...].176.235.[...] 9D84E344D9B643B7AD05CA92B69ECAC2
    2024-12-08T21:06:21 8230097 9 10 [...].131.183.[...] 9DCC6411B7584009AF7D4669A15492D7
    2024-11-23T20:41:30 8220085 6 10 [...].107.160.[...] 9DEAD41D6B37491FAB1D8D3A7B6CBA31
    2024-11-28T16:15:07 8220123 12 10 [...].26.53.[...] 9DEE55634DFD416DA1EBE4C6070D1F94
    2024-10-19T13:49:45 8230138 2 10 [...].4.227.[...] 9DFCB05C2686473D8EB0F8A56D9451C2
    2024-11-20T20:53:48 8230073 6 10 [...].131.238.[...] 9E0A78A478B7466CB69B0EC6F3EB1302
    2024-10-13T17:22:45 8220149 8 10 [...].168.0.[...] 9E15E69C017948E8BD131A9A70871D88
    2024-11-24T19:17:59 8170068 16 10 [...].173.84.[...] 9E37EF9BA72142D3B5287B59FBA81BB3
    2024-11-02T10:33:20 8220108 13 10 [...].73.236.[...] 9E68317304EA448C91E44C2F49BD616B
    2024-10-24T20:37:44 8200152 2 9 [...].54.144.[...] 9E77A4243E4844C785A43BE569610EE5
    2024-10-27T17:36:30 8210226 5 5 [...].87.105.[...] 9E87C25F7AA247F9B4F4E90EC3009BA3
    2024-11-10T16:38:58 8230122 9 10 [...].156.60.[...] 9EAA26D367534FCAA855AC230FAA3594
    2024-11-10T19:40:41 8190091 6 10 [...].217.174.[...] 9EB980374DD549A5BB6BD2E6B9ED500D
    2024-12-06T13:16:40 8230246 9 10 [...].87.226.[...] 9EC7D6CDC6164DC3A32D19ACDC750223
    2024-10-13T12:31:54 8230066 1 10 [...].74.235.[...] 9EDF087ABF6A4DA39EA608706BD2FE55
    2024-11-02T13:32:03 8230076 4 10 [...].49.90.[...] 9EE82B2560534EB581A7962D4A15A57F
    2024-10-13T12:10:11 8230047 1 10 [...].84.205.[...] 9EF983395C62474BA8B015FC5E09A85B
    2024-11-14T13:38:49 8230218 6 10 [...].74.8.[...] 9EFBB1270AE646C58DF623271C234F85
    2024-11-19T20:12:38 8230105 16 10 [...].92.75.[...] 9EFFD41A89CD42F5840915A2DBC28074
    2024-11-13T21:07:44 8160117 5 10 [...].217.161.[...] 9F05BCEC09E84315AF65C39CB3ACD55D
    2024-12-07T18:05:13 8230217 9 10 [...].210.95.[...] 9F0B1D9433AE480B8034123D36723323
    2024-10-22T21:56:23 8190304 18 10 [...].217.176.[...] 9F3404800E5749E2973260C9A33C85DF
    2024-11-02T11:26:53 8230085 4 10 [...].217.161.[...] 9F42385E8CD94B53ABDAA63B36030757
    2024-12-06T14:19:16 8220039 9 10 [...].219.165.[...] 9F4EE646D3E14D528DE047DB13BAD5CF
    2024-12-09T22:36:53 8230099 7 10 [...].87.198.[...] 9F983B4B09584C4AACA6A27F4DFB4D0B
    2024-10-23T10:35:29 8230077 3 10 [...].203.174.[...] 9F9EC35EF0E1413CA24E7261827C0041
    2024-12-09T22:49:44 8230072 8 10 [...].84.142.[...] 9FAB72DC0A544B8DBE0655180F09B64F
    2024-11-24T22:11:21 8230226 16 10 [...].210.83.[...] 9FB80CA1E70849F5A13DB52C8ACB3007
    2024-12-12T21:21:02 8230023 8 10 [...].242.187.[...] 9FC8D54D8B424559BE955E7D771354DA
    2024-10-28T13:57:13 8230028 5 10 [...].130.230.[...] A0083A426EB54AE39738A0323DE77097
    2024-12-01T18:53:40 8230148 12 10 [...].87.72.[...] A009905235E14DC29E3D32CB4785DB47
    2024-11-30T14:28:21 8230070 12 10 [...].217.161.[...] A00B58F587AA4621890103EA832DC118
    2024-11-26T10:33:01 8200066 15 9 [...].168.0.[...] A029BBF67A3F4F79AC1D704AC3205EB4
    2024-10-27T15:52:36 8230001 3 10 [...].246.142.[...] A02F1CA8F00949B8A39A396F97C3B759
    2024-12-19T03:49:14 8230153 10 10 [...].246.241.[...] A034C55AFDB641799E865F937FE13394
    2024-10-27T16:53:05 8230065 3 10 [...].176.151.[...] A03932B54ACB486580E369503E39D133
    2024-11-23T16:49:21 8230076 16 10 [...].4.186.[...] A04571BA36B64CC0B4D6EF55A8585411
    2024-10-17T18:34:06 8230127 2 10 [...].26.75.[...] A06591F74ABF4F69B82CD1A8D0726F35
    2024-10-10T19:46:35 8230074 1 10 [...].166.11.[...] A08A5E2D0300461A8C80AADA30D04BF0
    2024-10-30T22:21:37 8200117 3 10 [...].92.100.[...] A0BB5A30964D4BA694C7145AB79535F3
    2024-12-05T22:23:55 8230040 7 10 [...].87.26.[...] A0C32EFBA9E94B1794E56A9FC7D387D2
    2024-10-20T13:41:21 8220071 3 10 [...].74.158.[...] A11B0D2AD88F42A8BBD80C60469A4241
    2024-11-01T15:25:12 8230103 4 10 [...].66.136.[...] A171FEB5A9C044D6A741DFD38CBF3780
    2024-10-14T18:20:15 8230161 1 10 [...].58.224.[...] A1A40D4C7D5247FF9E5C1A878E5AD619
    2024-10-15T20:34:04 8220110 2 10 [...].84.22.[...] A1B8C0534B5744B1951F346655A76E03
    2024-12-01T10:19:24 8190271 12 9 [...].217.172.[...] A1C72D105D9F4BF787D510B4BC6AF443
    2024-10-18T19:24:25 8190304 7 10 [...].217.176.[...] A1F8AE7384874A8EB184090AB885C7E6
    2024-11-22T12:09:39 8230136 16 10 [...].26.47.[...] A2043C27BFCB47CEBB488A578002AE77
    2024-12-06T21:27:11 8230033 9 10 [...].1.101.[...] A2048495181A41A1A1A68B6FE4F00249
    2024-10-22T19:07:06 8230091 3 10 [...].6.161.[...] A21A8B77DF884D38826FE25000342A3B
    2024-11-10T13:26:22 8230014 5 10 [...].49.236.[...] A22BB66ABF6942E1B564431EB650B1CC
    2024-11-06T22:11:16 8230078 5 10 [...].178.157.[...] A2839A427D4A47D9A80DA816A661DD61
    2024-10-27T10:51:39 8230072 3 10 [...].167.92.[...] A29405212A2C4B0B8CF7EF1BC0068C43
    2024-11-29T12:05:18 8230132 12 10 [...].6.86.[...] A2C52B2982E14404B179B1B2BA2649F0
    2024-11-23T17:26:01 8230014 16 10 [...].43.36.[...] A2DCF02E1E254505A1B8DB416C7BE892
    2024-10-27T18:29:45 8230034 4 10 [...].70.57.[...] A2FB6CE8EC1A453CBA6003DBA69C6797
    2024-11-01T18:20:50 8150188 5 10 [...].92.185.[...] A3085FD02F334A839F6AB7E1857492F2
    2024-10-19T18:49:38 8230056 2 10 [...].242.226.[...] A313FA2B53F54BD987BBF6021F416860
    2024-11-11T00:01:26 8190332 5 8 [...].6.72.[...] A33CB9DB3A53470994C51861E94B8242
    2024-10-13T11:28:59 8220131 1 10 [...].58.137.[...] A36740E6F3DB4AE0A1FFF38D66B770A0
    2024-12-04T10:39:49 8230117 12 10 [...].237.6.[...] A36758CDB5E540DAB79305B21E0815C1
    2024-12-08T19:04:13 8230120 9 10 [...].74.33.[...] A3833C4EC04B4765AF3E369C5B60D8CB
    2024-11-26T22:23:03 8230150 6 10 [...].92.250.[...] A38F87EBDD8E40658445DBAAD1AA863E
    2024-11-28T02:13:44 8230010 12 10 [...].246.197.[...] A3BA64E7A1C84B99B483A864111A87B1
    2024-10-12T12:48:00 8170017 2 10 [...].66.31.[...] A3BA6DF5FFEE474C92B5412127EB363C
    2024-10-18T22:25:53 8210087 2 10 [...].131.180.[...] A3D59CDB740242F99A4048E0F96B36CB
    2024-12-01T23:12:58 8230147 12 10 [...].86.44.[...] A4479D52FC174D62BD3080628A8E4876
    2024-10-24T20:29:02 8230043 3 10 [...].251.255.[...] A45151E00A454E919B37D4651718235F
    2024-12-03T14:21:37 8220143 9 10 [...].210.32.[...] A469507432C64411B8D5C37C795C9FD0
    2024-10-25T14:56:49 8200223 2 10 [...].251.52.[...] A46E985E5B954004BD74F2BA61434392
    2024-12-16T00:00:41 8220025 8 10 [...].71.97.[...] A474887BF7984833A67E977C8BB04CF4
    2024-12-10T19:43:19 8230231 8 10 [...].255.22.[...] A474AE1558F949E390B11EF8F44D880A
    2024-10-27T18:13:48 8230034 4 10 [...].70.57.[...] A476615F4346488D89043ACC53437ECD
    2024-11-19T22:59:56 8230039 6 10 [...].87.161.[...] A4E89EFBA77A4C39BB968ABABD13DBB7
    2024-11-24T23:52:43 8230072 16 10 [...].73.25.[...] A556C11EFFA9492EA9978BAF1CC0B83E
    2024-10-11T14:17:15 8230053 1 9 [...].74.24.[...] A559E36DBC6148E59DDEEC77236138B2
    2024-10-22T20:29:54 8230139 4 10 [...].242.186.[...] A561ABA5BD3E41969CC654E750703C02
    2024-12-15T18:47:20 8230245 8 6 [...].43.33.[...] A578A8E61FC04B5090C2AC08DF47657A
    2024-10-18T13:14:22 8220142 2 10 [...].107.37.[...] A578DF261DC344CDA7A3A1935DA6AC18
    2024-10-15T19:58:54 8230031 3 10 [...].84.23.[...] A5A06DAECB5F47EEBA1F0132A371E06D
    2024-12-15T18:27:34 8230064 8 10 [...].86.44.[...] A5B6E8C963A548B58F3C9A23473CA460
    2024-12-16T14:25:57 8220112 10 10 [...].87.115.[...] A5BB042786964B9298871FADA8195892
    2024-11-12T01:12:34 8230002 6 10 [...].131.130.[...] A604F4C5246948DBBBD468D780D6970A
    2024-12-16T00:25:06 8230113 8 6 [...].65.112.[...] A60C6AEF84FF4F17969B7C3C60341703
    2024-11-19T21:07:05 8230125 16 10 [...].70.73.[...] A6114E1DE3CA4B8B95454631F5ECF99F
    2024-10-18T11:35:41 8230245 2 10 [...].49.219.[...] A625E56F06224F8BA82C170B7ED83A51
    2024-11-08T18:58:50 8230156 5 10 [...].43.36.[...] A64D01C1517B4D8BAE52A70362B9AF4C
    2024-11-30T00:57:01 8230127 12 10 [...].92.49.[...] A66C0083BE7B4558B087C58338971E4B
    2024-10-10T20:35:53 8230116 1 10 [...].49.68.[...] A6947E45856E484B90F961A538BFD9D7
    2024-10-15T11:24:33 8220156 5 10 [...].26.20.[...] A6ABA8EB31994C2DBCB633EF077189CF
    2024-11-03T23:00:36 8190376 4 10 [...].86.72.[...] A6C8DF3AA6654EBC9B9E4A8B5112A36A
    2024-12-05T18:57:15 8230157 7 10 [...].217.175.[...] A6D65661F0414523975F26E9C84EF5E6
    2024-10-20T10:49:08 8170017 5 10 [...].87.194.[...] A6D90D47744C42B388C04B404C04A813
    2024-11-05T18:45:14 8230132 6 10 [...].140.30.[...] A6E6A680A32E45B58E01F499EEB0B219
    2024-11-27T00:51:09 8220070 16 10 [...].58.224.[...] A6F63ED8651B44D2A099758195F879D8
    2024-12-15T18:57:09 8230068 8 10 [...].75.76.[...] A7060F1C0F7E44A38BC3B4442C736038
    2024-10-18T17:50:31 8230167 2 10 [...].130.120.[...] A712277EC7694052A36095B9B9F4F71B
    2024-10-31T18:28:35 8230127 5 10 [...].26.75.[...] A809E99D16F24CCEB58987A5E71A78AE
    2024-11-23T19:29:50 8220123 6 10 [...].87.46.[...] A80EDB51F2E8453DAD26EE142572BDD3
    2024-11-23T21:47:45 8230245 7 10 [...].43.42.[...] A81094A549EF408782B1CD1612A167DD
    2024-10-19T20:25:43 8230160 2 10 [...].251.66.[...] A811DEB776DE4F158BBDF374D7612251
    2024-12-05T15:47:32 8230129 7 10 [...].65.88.[...] A81907E5DD39471D8265202F187DD095
    2024-12-02T22:32:44 8230129 9 10 [...].65.88.[...] A81CDDC9BC5A4DE7824617CA902D2913
    2024-11-11T01:26:23 8170068 5 10 [...].173.84.[...] A81FF3134CD84271877315283FC38284
    2024-11-10T14:01:10 8190238 6 10 [...].130.246.[...] A8254BFC15074993B2DC5A2F2E711235
    2024-10-21T00:06:27 8230005 2 9 [...].217.161.[...] A82EA9EACC3D4445AEBB0C4D8A450636
    2024-10-24T11:13:40 8230039 3 10 [...].55.220.[...] A833FB4539EE456897E066CCCD1CDB03
    2024-12-09T15:15:15 8230100 9 10 [...].92.175.[...] A842ABE0B844481C9C6EDFC9226C5AB0
    2024-10-28T19:40:38 8230231 6 10 [...].166.35.[...] A85894807F1B4C4184243ABDD435122A
    2024-12-09T11:26:18 8230152 7 10 [...].203.179.[...] A868D58237A34ED8AA722B581BF37BFA
    2024-11-14T19:55:31 8230126 6 10 [...].65.190.[...] A8AC593776494EE984AD41F9E859A4AE
    2024-11-30T15:14:34 8230142 12 10 [...].69.117.[...] A8C96012FE69474486DBBB48B319B8FB
    2024-10-22T19:39:01 8220152 4 10 [...].66.136.[...] A8C9ADEDA7A24D6282F1A616707B3516
    2024-12-06T15:35:04 8230101 9 10 [...].86.154.[...] A8CCD47BD33F439B9FA6B1FDDFE3BF6D
    2024-10-07T19:57:40 8220229 2 10 [...].166.35.[...] A8E83B914498417FBAB4572522C645E7
    2024-11-23T19:02:28 8190338 7 8 [...].202.85.[...] A90DC54B8B5C4465AAC68F2C25C343DD
    2024-11-08T15:51:35 8230099 5 10 [...].74.127.[...] A956A4651C62431789058695BE6860F6
    2024-11-20T14:30:08 8230218 16 10 [...].26.40.[...] A95AAC1A23C048C394285EDC23507B85
    2024-11-10T20:51:14 8190091 7 10 [...].217.174.[...] A98CEB44994647F692697302A36CC014
    2024-11-30T16:12:22 8230031 12 10 [...].84.27.[...] A9B91E8D7CAB42C7B52E07B760651302
    2024-10-23T22:15:25 8230024 3 10 [...].103.33.[...] A9C23C97867E468099F6BBDA5825D631
    2024-11-24T03:35:47 8190376 16 10 [...].86.84.[...] A9C774E4E4A648929DDD272B0C951C83
    2024-12-17T16:30:42 8230003 10 10 [...].217.174.[...] A9C79C8B1F2E4861B255D84A32278160
    2024-11-13T17:31:58 8230094 6 10 [...].66.206.[...] AA20B744F7344288A0EAB70F54CBBD14
    2024-11-20T22:33:26 8230244 16 10 [...].86.152.[...] AA258ED68CEE49FB85501833256A6BF9
    2024-12-17T12:41:19 8220053 10 10 [...].66.136.[...] AA31294799474679A0CCE9C6BCEDF17F
    2024-12-03T23:36:11 8230013 9 10 [...].147.77.[...] AA3CE43CD3F147DA9E315D6264AD0901
    2024-10-25T12:27:28 8220230 4 9 [...].6.116.[...] AA6895B0C7E04538A1E5EB0C7AEE0227
    2024-10-28T22:03:13 8230023 5 10 [...].58.194.[...] AA8ED8E9F5AC4515B4677067242AD9A6
    2024-10-11T22:28:21 8230244 1 10 [...].86.152.[...] AAA03AC829324A76A0498F8F9FF9C124
    2024-12-10T18:44:52 8230031 8 10 [...].84.27.[...] AAC9340AF213495FB00E7028E8B8DE79
    2024-12-01T23:14:16 8230147 12 10 [...].86.44.[...] AACE0227D5844E0D9E8A05A3A07DA46C
    2024-12-16T00:18:10 8230002 12 10 [...].131.130.[...] AADACF7367F64C47A20644F2B47AA7F1
    2024-10-08T23:31:31 8230231 1 10 [...].167.161.[...] AADF6D8806C640CB921E3CDE8BA7D806
    2024-10-12T15:15:45 8230103 1 10 [...].66.136.[...] AADF8F70CF8B4FFCBD2D0597E93EF6BA
    2024-12-02T17:51:36 8230071 9 10 [...].203.147.[...] AAF0D0C3C14C40EEB8595F529D87D7B0
    2024-11-17T18:49:02 8220086 6 10 [...].168.0.[...] AB39E49DF0D444C69264698738107214
    2024-11-18T14:19:01 8210226 1 4 [...].138.155.[...] AB3A2D28FE434D08A14F695D23D6A51B
    2024-10-26T21:05:51 8230007 3 10 [...].140.12.[...] AB48513B97624AE69BA855C246E6E5A2
    2024-10-19T19:22:04 8220044 2 8 [...].64.157.[...] AB6DC2FECB40498596DA62932A1FE4B8
    2024-12-03T15:29:29 8230008 10 10 [...].203.148.[...] AB7AFB0F4A884B25A0A19677A95E5B34
    2024-10-12T13:07:14 8230021 1 10 [...].246.176.[...] ABB6419852EE47C0A56B3D34D35C0A2A
    2024-10-15T13:50:12 8230115 1 10 [...].26.21.[...] ABEACB98E5EE430FA4AE0520EAF714CF
    2024-12-17T18:48:15 8230018 8 10 [...].177.82.[...] AC191EA3DE2C4466AD0D5E0688F31F1D
    2024-12-15T21:38:24 8230147 8 10 [...].86.44.[...] AC1F9C515FC642E196CFDDAEF563E165
    2024-12-01T18:41:30 8220071 12 10 [...].74.158.[...] AC21B4D18CD24BE9838AC60EADE59E51
    2024-10-12T19:55:21 8230153 1 10 [...].74.239.[...] AC34FECD44E1422D90F7DBBBEB1BC224
    2024-10-29T00:49:40 8220036 5 10 [...].178.164.[...] AC633B09637947D687211F2B516D80C3
    2024-12-09T11:29:09 8230101 7 10 [...].26.5.[...] AC713676B3E549BBBD8BA9A37AECE85F
    2024-11-28T13:46:54 8220221 13 10 [...].66.136.[...] AC7CE620087F4E8BA0F5E0BF1F746F2E
    2024-11-10T19:16:53 8200117 13 10 [...].92.100.[...] AC88F78D9EF64BED805EC0C58B365D29
    2024-10-31T21:34:44 8190378 4 10 [...].58.138.[...] AC9376BF79C74F8CB7D56DB6832493F7
    2024-11-30T21:04:00 8230066 12 10 [...].86.251.[...] ACA566063D7C4E32A7DC31FA3D577B31
    2024-10-20T11:21:27 8230218 2 10 [...].74.46.[...] ACB0F9B2E38D43DBB860098EAD886FAB
    2024-11-16T14:52:07 8230006 6 10 [...].242.245.[...] ACF1494A4E774533A50DE86015D0286F
    2024-12-18T14:52:30 8230056 10 10 [...].58.227.[...] AD622C629B5044129C84717EEC80B8AC
    2024-10-12T19:51:35 8230029 1 10 [...].71.138.[...] AD93090758734ACAAC6692DC652A7BCB
    2024-11-28T21:35:17 8230161 12 10 [...].58.227.[...] ADB7AE7B4A5442A2840BBF00E0A76869
    2024-10-11T22:12:54 8230142 1 10 [...].69.127.[...] ADCE088DB5FD4DB793B82797268CBF88
    2024-10-20T22:35:13 8230078 2 3 [...].203.129.[...] ADF2918C873A4ECDBB57D4F0CEAD3423
    2024-12-06T01:38:30 8230164 9 10 [...].74.12.[...] AE14125D680B430F87EC2284D0CDC166
    2024-11-08T19:20:15 8230067 5 10 [...].177.5.[...] AE5E8BAEA4AF46BC9B1DA2CDC5623715
    2024-12-06T23:46:25 8230024 9 10 [...].177.235.[...] AE6F847DD35C49148F51EEF8B9CD49D7
    2024-10-27T11:55:54 8220142 4 8 [...].107.37.[...] AE71B7C294A34AD5A5CBD5F7C6D26E90
    2024-12-12T21:28:33 8230024 8 10 [...].177.235.[...] AEAF01ED428641BCA356CF8489BEFA59
    2024-12-01T21:38:50 8200223 16 10 [...].251.52.[...] AF01A62A2E1F4AE1AD3C982B51796E45
    2024-10-18T10:53:49 8220011 3 10 [...].168.1.[...] AF02049171AD49F6913CAD559A9EDE6F
    2024-11-26T01:50:00 8200066 7 6 [...].168.0.[...] AF52561703564E9BB17523C954672C46
    2024-11-23T15:51:56 8230161 16 10 [...].58.227.[...] AF64F66784B94822B927A10D94A75071
    2024-11-18T20:43:18 8190332 3 10 [...].6.72.[...] AF77E659A6764EEDB164EEA1DBA297DB
    2024-11-08T13:13:30 8230061 5 10 [...].14.243.[...] AF77F9B2369B4811B1579BFC93FF7DB5
    2024-12-08T15:37:43 8230105 9 10 [...].6.163.[...] B00D7E1CF899459299B19E304BD30D95
    2024-12-08T19:01:19 8220152 9 10 [...].71.169.[...] B0208408009048E7A74DAC5B3CFB3924
    2024-11-27T15:53:22 8220221 8 9 [...].66.136.[...] B0282A42EEB2472CAAC1A55B5351EBD8
    2024-12-08T18:27:18 8230092 12 10 [...].58.136.[...] B06889746F6C4F9094BEA4E9F28F6E8F
    2024-10-23T23:34:12 8210163 6 10 [...].168.1.[...] B06F1BA072C140588B4314A7DE60EC8B
    2024-11-20T14:27:26 8230097 16 10 [...].26.30.[...] B0875454D9FD4B16B98148BC90521D3F
    2024-10-20T23:26:18 8230078 2 9 [...].203.129.[...] B091535CEE824D52B1CD7A79EF300CD3
    2024-11-01T19:03:13 8230047 6 10 [...].84.197.[...] B0B5EACF21FA4803B9105B968AE17951
    2024-10-29T22:27:10 8210087 4 10 [...].1.114.[...] B0C9D501926546839F8FDD6CCDE53CE0
    2024-10-31T11:31:24 8230052 4 10 [...].38.25.[...] B0E89BD079C84F418EF629A1A0B78A91
    2024-12-07T17:37:09 8230063 9 10 [...].242.186.[...] B0EC5BCC20644121B530C4A7DC8C67AF
    2024-11-03T13:38:26 8230154 16 10 [...].167.82.[...] B11B3DF2F6514A63866788032CE6210E
    2024-12-16T22:41:03 8230031 10 10 [...].84.27.[...] B11BD492074B484EB39D1B750C0BFE1F
    2024-12-01T21:17:31 8210111 12 10 [...].6.160.[...] B11E818E0B294655A8F461655CD2D8A5
    2024-11-18T19:49:03 8230078 16 10 [...].178.145.[...] B181DB791DEA4378BFF67FCA6EF2B01F
    2024-10-30T10:28:25 8220105 15 10 [...].1.100.[...] B1968D0A9B7A4D2C89D0A4CC90522216
    2024-10-08T20:51:56 8220039 1 10 [...].92.58.[...] B19B1E1006A94C6A982B74BFE85B8CB6
    2024-10-12T20:50:03 8230138 1 10 [...].4.227.[...] B19BA4C5BA4748FEB3D4D9C5F366EA5B
    2024-11-22T16:13:33 8230170 4 10 [...].26.42.[...] B1BD0A1877BF4B31B0250D0F491C3D53
    2024-12-05T16:28:07 8230153 7 10 [...].84.5.[...] B1BDEF4F7DFF423E8B8675D729222285
    2024-12-02T01:34:11 8230018 12 10 [...].251.52.[...] B1D3E61D98A946E3B671228DA9C31B29
    2024-11-10T17:30:05 8230125 6 10 [...].70.73.[...] B1E0926EF90F4D04B7805B1B2096BE9A
    2024-10-18T22:08:57 8230161 2 10 [...].58.136.[...] B1F8BE8BA63844A2A588B87C3BEF5690
    2024-11-19T15:29:58 8230098 16 10 [...].4.72.[...] B20384DB87D143B79167C1C454C716B3
    2024-10-08T16:34:00 8220105 1 10 [...].1.100.[...] B20B6EDF250245A38F9043816A944BED
    2024-11-30T22:57:40 8230170 6 10 [...].86.31.[...] B22F9B30250B4185980B3AC90915D7E6
    2024-10-15T17:58:24 8230107 2 10 [...].65.114.[...] B23A503C569249F9A1E5725D506B367D
    2024-10-25T13:56:18 8230063 3 10 [...].242.185.[...] B241D4A80D7E446896F4797DC41547B9
    2024-12-05T20:18:41 8230156 9 10 [...].16.169.[...] B24D46DE673549148381B5B5A531D8E7
    2024-10-31T11:59:35 8230072 4 10 [...].84.133.[...] B266C8D58AD445A2A5CC61B0DB1CA20B
    2024-11-09T18:14:14 8230217 5 10 [...].92.141.[...] B27F878D194C47CEA6FA147D64AE2D01
    2024-10-20T18:00:46 8230079 6 10 [...].190.51.[...] B290A370ED534BD0B866F1B7DB172898
    2024-10-16T22:18:15 8230055 1 10 [...].203.169.[...] B29B5B2994CC408B9E2CBC96860BD574
    2024-12-13T16:42:28 8230079 8 10 [...].251.255.[...] B2AE3A6F6BCA48858FEE32C3E40A9D42
    2024-11-13T01:04:11 8230061 6 10 [...].138.148.[...] B2D6794C457943C797FF3561E8D70B62
    2024-10-15T10:16:21 8230028 2 10 [...].178.240.[...] B34FCCA09AE94E5EAB7F26CD1C782E0E
    2024-12-15T16:07:53 8230138 8 10 [...].4.87.[...] B3583CFBC0DD40B6BA44452CB3612C75
    2024-12-06T08:03:43 8220070 7 9 [...].58.224.[...] B38F209F27504BFE82FED90A09BCFC8B
    2024-10-15T11:18:15 8230076 2 10 [...].219.191.[...] B3B9858868A6479E87F660D247867865
    2024-11-11T20:55:43 8230156 6 10 [...].49.112.[...] B3D2A09756C741D6A434435FC0284594
    2024-12-08T18:31:45 8230109 9 10 [...].69.16.[...] B3D2A88FF23142F7B3CC7CEA199625A8
    2024-11-13T23:27:29 8230091 6 10 [...].6.2.[...] B3E58C2175F44C40AF25C3B49B43223B
    2024-10-13T15:55:24 8220149 17 10 [...].168.0.[...] B3F1A38776AA4364AE7688AAF00ADCD0
    2024-11-29T18:50:00 8220229 12 10 [...].140.30.[...] B414FED6A92F44F38AE8402E216D02D9
    2024-10-19T16:11:43 8230011 3 10 [...].65.157.[...] B421B6C977B74F68AEC12DC751ED808E
    2024-12-04T00:35:49 8230013 7 10 [...].147.77.[...] B4221A6FCC124A9D8FDE14B5FCE38029
    2024-10-11T22:49:34 8200066 3 10 [...].168.0.[...] B42C2D66F5614C1FA7A6E43C45F8A23D
    2024-12-13T22:45:42 8230091 10 10 [...].6.160.[...] B44FDA0A8B334E73AC2C7E76A4AA7FE0
    2024-10-13T11:56:30 8230025 1 9 [...].73.125.[...] B46B4626B0B74F1298B961F2DE754062
    2024-10-21T14:10:14 8230100 3 10 [...].64.198.[...] B4904A18BAF64C46991BAD87CACC66D7
    2024-12-15T20:59:01 8220042 15 10 [...].168.0.[...] B491518165AB4970AB564139A130F6D2
    2024-10-23T23:13:59 8230037 4 10 [...].64.49.[...] B4A34E34F5FA4B18B6C80AEE3B3DFB91
    2024-12-01T23:44:39 8230078 12 6 [...].251.255.[...] B4C84DBFDFA343BD95D8D791AA20831C
    2024-11-13T15:05:52 8230056 6 10 [...].242.224.[...] B4D76F73D34C4F4C8E9BCCDD8DC9AFDB
    2024-12-08T23:02:22 8220230 9 10 [...].210.241.[...] B4D7A690814B475EA079656837F78EF6
    2024-12-07T21:22:17 8230155 7 8 [...].87.93.[...] B4E563077050490BA3EE347A3E215628
    2024-10-30T18:10:41 8220136 5 10 [...].203.86.[...] B4ECC5AB17C846548C9C319E0C3A4F4E
    2024-12-15T21:49:35 8230073 8 10 [...].217.174.[...] B56C98D35C5042FAA00DCC93661CFB45
    2024-11-23T22:23:23 8220014 5 8 [...].103.40.[...] B572E02E8108481EB85E0DCC1E5B8B92
    2024-10-22T20:07:25 8230224 2 10 [...].86.123.[...] B5F2C9721C4B467B96D82D603AED5407
    2024-10-11T12:56:26 8230132 1 10 [...].140.20.[...] B6323DFCC0CA415CBF691E40B9F5EEEA
    2024-11-04T21:39:10 8230168 4 2 [...].225.135.[...] B63ECC78B1964F6B98A1A3189FF07EF3
    2024-11-30T00:12:38 8230038 12 10 [...].251.255.[...] B688929528BD4DF68FB7BBF3216BE7E1
    2024-12-03T11:00:09 8230077 9 10 [...].74.48.[...] B6BDA1E04AC14049B31DEE69BC7638AF
    2024-11-13T17:56:42 8230033 6 10 [...].49.128.[...] B6D48612C6BA4CC2A7F5137282613738
    2024-10-19T16:28:13 8230079 5 10 [...].6.110.[...] B6E45915391D46ABA16973E2C8731277
    2024-12-01T21:03:09 8200223 12 10 [...].251.52.[...] B7157D6B9DAD45068EE2EC8AEB554D2F
    2024-10-09T02:02:26 8230124 2 10 [...].86.31.[...] B724EC9336024391A19583AEDB8D174B
    2024-10-30T22:12:44 8220039 4 10 [...].49.99.[...] B74E526BA59D4072ADBFA0CFC5791285
    2024-10-30T17:35:49 8230246 4 10 [...].130.252.[...] B784117F988B4F20B4E94B65A05EDDCC
    2024-10-09T10:40:53 8220046 1 10 [...].74.19.[...] B7A05A4CA50D413F9DE32F5ABB785F74
    2024-10-18T14:28:12 8220136 2 10 [...].74.100.[...] B7A9EA4DB5004187BC469CC1950F7DD2
    2024-12-05T20:38:15 8230067 9 10 [...].176.113.[...] B7EE1D48E70E4683B9568D28F18747CD
    2024-10-18T23:48:01 8230151 2 10 [...].28.80.[...] B816EAE334F849B1AF414491EAD9C799
    2024-11-02T15:05:28 8200095 4 10 [...].71.129.[...] B8223228D955406B9DC5336389864930
    2024-10-10T20:41:33 8230052 1 10 [...].38.25.[...] B848EFDF57FA447FB9D7689D3AF44556
    2024-12-06T16:40:55 8230224 7 10 [...].74.186.[...] B84FE1274FA54F638A17AB1626A79D44
    2024-11-24T18:37:06 8190332 16 10 [...].6.72.[...] B86806959CBF45F9AFBBFF372532FDA0
    2024-11-17T23:35:23 8230120 6 10 [...].74.13.[...] B87EBC5C7FE54F9E800C6D36A1FAF1C0
    2024-10-14T23:36:52 8230036 2 10 [...].74.35.[...] B89778FD48A94664B19EBBCABDA07303
    2024-10-14T11:39:39 8230019 1 10 [...].86.152.[...] B8AF5093026240EF92A75CB32A65987D
    2024-11-19T14:14:41 8230058 6 10 [...].26.6.[...] B8B0A53151AB4063B6DF55354D75257C
    2024-11-08T17:17:33 8230019 5 10 [...].86.152.[...] B8C3E32E2495439C99EB981CC366B9F9
    2024-10-14T19:09:25 8230077 2 10 [...].74.54.[...] B8C9977505D34FADAB39AE5A065DE6AF
    2024-11-27T12:18:16 8230028 12 10 [...].87.106.[...] B8E5EB8E21734275B3089118F13736CE
    2024-10-27T16:46:25 8230016 5 10 [...].168.1.[...] B8ECAEC0A11E434892B6EBA29958C2EA
    2024-12-09T12:21:04 8230227 9 10 [...].66.136.[...] B906576D6D484712BBBB3EC03852624C
    2024-12-01T23:54:13 8230224 12 10 [...].74.186.[...] B937AFF3AB7744089FD8D3D5E0676EB2
    2024-11-10T23:48:11 8190051 6 10 [...].219.76.[...] B948E447998346119B3020438C4A2D43
    2024-10-22T14:06:53 8220025 3 10 [...].26.44.[...] B9998BC4025A4C69A565EBA7B02F50A4
    2024-12-06T18:33:32 8230012 9 10 [...].131.161.[...] B9F9E73E8CAE4D1EAF8E7A504D28DEEE
    2024-12-01T23:47:36 8230007 12 10 [...].140.12.[...] BA28810527144FC0B4960140E86AEC26
    2024-11-02T23:28:20 8230150 4 8 [...].203.190.[...] BA30CAFAEB564D589BE41901FE2BC0A4
    2024-11-08T13:41:54 8200117 11 10 [...].92.100.[...] BA7BB23544574D89A41BCF2A4E0BB897
    2024-11-17T18:37:24 8230165 5 10 [...].49.83.[...] BA85BEF45AEB472A8BBFF569F372370F
    2024-11-16T20:42:45 8230145 6 10 [...].210.253.[...] BA9BB36702BA4759835802DA95E25322
    2024-10-13T17:28:46 8220044 1 10 [...].64.157.[...] BA9F9F76C1AE484ABC52221604A9E98F
    2024-11-27T15:43:54 8220221 7 9 [...].66.136.[...] BB03B5B9688F4BA5A381D3A9EE5AB0DE
    2024-11-08T21:23:01 8220123 5 10 [...].87.225.[...] BB1D9B9DCF7B43D693F46169913A5E49
    2024-11-04T12:13:57 8220108 9 10 [...].26.22.[...] BB47168BF69640AB9FB680AE2CEB6A71
    2024-11-05T16:57:27 8230224 5 10 [...].74.222.[...] BB65CD8B060D457FBF67C2DE46E6FE70
    2024-10-30T15:43:03 8230170 3 10 [...].26.42.[...] BBA76D9A55CA483CBAEB52858AA76EC2
    2024-12-04T16:46:56 8230083 9 10 [...].26.72.[...] BBAB1E338E4343EC94AFE4CDFB25A243
    2024-11-25T17:04:00 8230045 16 10 [...].251.255.[...] BBD666EFC8CF408F91F1D51529CAC9CE
    2024-11-15T14:13:07 8230074 6 10 [...].237.199.[...] BBDD63375B704448B1413BC0A1B850A3
    2024-12-08T19:18:56 8230074 9 2 [...].237.199.[...] BBE3904A538C4B868157505DF0343112
    2024-10-30T12:38:55 8230031 6 10 [...].84.23.[...] BBF03C5584E84A429E8FE4A3F1D7CAE8
    2024-12-17T23:39:12 8230129 10 10 [...].65.88.[...] BBF07935C1474E47AB1B9165E8234A8D
    2024-11-29T16:24:38 8230012 12 10 [...].131.161.[...] BC1FC133489B469DB3EDE3DE04768C1B
    2024-10-18T16:11:00 8230145 2 10 [...].74.58.[...] BC31800BC5B54D5B8C8FDC2B9C1363F6
    2024-12-19T14:58:02 8230156 10 10 [...].44.146.[...] BC4AE7375D3141A7AC3C56EE00FFE56D
    2024-12-06T15:08:27 8230001 9 10 [...].219.78.[...] BC4CF0CD2088445BA976FACFAFD445E6
    2024-12-09T23:00:34 8230151 7 10 [...].28.130.[...] BCA75B95635640CBA972F8F251801550
    2024-12-08T16:55:55 8230092 9 10 [...].58.136.[...] BCA89A9852EC4CEFBF82E75738ACAB7D
    2024-10-19T10:55:51 8220112 4 10 [...].138.151.[...] BCAA4E99943945E1B0EC379C9AC97D91
    2024-11-02T10:21:25 8220108 14 10 [...].73.236.[...] BCC0A2AA8A0347D2A8BCC0FE41488E2F
    2024-11-02T16:13:16 8220007 13 10 [...].217.172.[...] BCC883CE758D4276B3D42E24417EEBC4
    2024-10-11T14:44:19 8220149 2 10 [...].168.0.[...] BCDF92E8D2E24135BA714E3202AD4CB1
    2024-12-15T21:22:30 8230075 8 10 [...].71.4.[...] BCF27EB7D0584108934D337296362A6A
    2024-12-04T20:40:13 8230142 7 10 [...].55.136.[...] BCFC5D4BF55F499B808AD35393986BC5
    2024-12-06T19:26:35 8230124 9 10 [...].86.31.[...] BCFE6F93AB134473AB513A53675D2D01
    2024-10-10T19:25:50 8230012 1 10 [...].72.255.[...] BD2AD96D767C4704A8E9288AD0E35420
    2024-11-12T14:48:38 8230052 6 10 [...].26.51.[...] BD4371C63F4F46C9A827FCC6A3C76D21
    2024-11-16T12:20:52 8150025 3 10 [...].66.136.[...] BD5F1F49743C48FBB46F71C78C7501C3
    2024-12-17T19:14:32 8230088 2 10 [...].168.0.[...] BD87F536B5BD4CDDBBBF0F9E263CDCCB
    2024-12-15T01:23:10 8220145 13 10 [...].72.171.[...] BDCFA733EAC5490CBABB9EC289257A51
    2024-12-08T19:39:39 8230076 7 6 [...].140.28.[...] BDD0B668B6504D64B9E81A69495BBECF
    2024-11-06T00:08:06 8230123 5 10 [...].71.227.[...] BDDEFC51A7D04555B2DAE5B2F968388F
    2024-12-05T17:51:46 8230157 9 10 [...].217.175.[...] BDFF42FB35C84B938097C51F62D8C87F
    2024-10-16T19:28:43 8220086 2 10 [...].168.0.[...] BE2CBB294E8147D98AAC50F343D5700B
    2024-11-12T16:49:31 8230003 7 10 [...].74.225.[...] BE2DE687F7AB4C78848D6CADAD8A9B38
    2024-11-02T16:34:37 8230011 6 10 [...].65.157.[...] BE3E2A37CE87454A85147699D991AA6C
    2024-10-25T22:15:08 8200152 7 5 [...].55.81.[...] BE42264850ED453FAFC6BE89436D7CC9
    2024-10-16T01:35:59 8220057 2 10 [...].217.161.[...] BE994304B2754B07A62F820413A60A81
    2024-12-03T17:17:59 8220105 9 10 [...].4.65.[...] BE9CB3B9CA164A5BB1E935FD6B96D22E
    2024-10-12T19:45:03 8210220 1 10 [...].217.175.[...] BEB9E6D41451405197A5286C9F3E74B0
    2024-11-28T17:05:49 8220091 12 10 [...].168.1.[...] BEDAF1C135EB4111911551F2D05819F2
    2024-12-01T16:46:04 8230039 12 10 [...].92.75.[...] BEDFD0887F744307A96CA6022EF0B4AE
    2024-12-02T15:12:40 8230109 12 10 [...].26.60.[...] BF056D331B204DA1851BA9CEF64501E2
    2024-10-12T18:22:05 8230231 3 10 [...].166.35.[...] BF06973A31AC45E3A3A1D19F9D4CA57B
    2024-10-16T23:46:27 8230094 2 10 [...].178.218.[...] BF12F8B099224F958DDF411E97A90B02
    2024-12-10T22:23:16 8230043 15 10 [...].4.92.[...] BF40D98B7D3B473E84C1766A25342568
    2024-10-17T18:28:54 8220052 2 9 [...].168.0.[...] BF61BDD817364516A2D1E9088B0B6C24
    2024-12-05T16:48:38 8210219 16 10 [...].168.1.[...] BF6A472D111848018A5434DBFB66FF74
    2024-12-12T16:44:55 8230086 1 7 [...].246.210.[...] BF8399B7CD814D8E9BFBD9390797EA50
    2024-10-24T20:42:09 8230059 3 10 [...].6.32.[...] BF855902C3C84CE8A3848CF206CB3976
    2024-11-10T22:19:20 8230018 5 10 [...].54.3.[...] BFC88CB361BB493CAC8421DE9BDBB023
    2024-10-22T22:48:03 8210208 3 10 [...].131.172.[...] BFCFBD9E44FB443CA10CF2842707FECB
    2024-12-15T18:26:56 8220131 8 10 [...].131.181.[...] C05CCC9120374819AFB6418C334C3443
    2024-10-19T15:34:53 8230153 2 10 [...].74.239.[...] C0613D87C48643C496679EE9CD0211CE
    2024-10-11T17:52:34 8230134 1 10 [...].242.187.[...] C083FF6E79D2435BB399B9E161D0E57D
    2024-12-06T19:46:50 8230014 9 10 [...].49.227.[...] C0B57B01CBDD40B080DEAD79D51A852A
    2024-10-20T17:06:52 8220091 2 9 [...].66.136.[...] C0D26B338E1B48038EFFA355D1480307
    2024-11-12T18:26:38 8210163 9 10 [...].168.1.[...] C0D2858EEE1840AF9CC49B08502C8830
    2024-12-07T14:16:37 8230047 9 10 [...].84.201.[...] C0D57EEDE7C145B3B8EBD82E7CA0832E
    2024-10-21T15:25:31 8230227 2 10 [...].26.16.[...] C0DF7BC77097460483A57046CF067B4F
    2024-12-11T13:36:40 8230227 7 10 [...].66.136.[...] C10ADA00B20C493BB6EB37DF2531DFA6
    2024-12-12T16:14:05 8230003 8 10 [...].217.174.[...] C10FCD0C54C34A1F833712B50C0D7F22
    2024-11-10T16:52:26 8230168 5 10 [...].225.135.[...] C12D208A27044A7A8C68B70328D8AC74
    2024-12-12T22:14:15 8220105 8 10 [...].4.65.[...] C13D23A979F14B0E815D12099146B6B4
    2024-11-10T17:59:17 8230058 5 10 [...].210.98.[...] C14077D393F3498DBB0D2D3E79D7E873
    2024-10-19T00:12:07 8230079 2 10 [...].6.110.[...] C15D516E5D22497492AC7D11A3951457
    2024-11-10T22:41:21 8220230 5 9 [...].210.100.[...] C15E80A6C5ED4AD39C03BE5D91F8D67E
    2024-12-05T22:23:38 8230231 9 10 [...].167.176.[...] C1659243AB664CA0ABFE928CF5BD8402
    2024-12-05T15:17:16 8230089 9 10 [...].84.27.[...] C1725BFF8B49413D838558C134C649D4
    2024-12-02T13:53:35 8230072 12 10 [...].84.142.[...] C1730A8BCF954D82A759F2FA4C79A89D
    2024-12-11T01:13:01 8230008 8 10 [...].203.250.[...] C17D386C24CA4C24BEC5742198DC6A05
    2024-10-31T16:44:49 8230003 5 10 [...].86.249.[...] C186F29F212E41668908FA7C86FD2841
    2024-11-15T14:47:05 8220169 6 10 [...].74.83.[...] C18C9F1EF5844976BF04337409A428A1
    2024-10-12T12:33:15 8230065 1 10 [...].54.149.[...] C1B98131E210430BA163296BEFDB222A
    2024-12-15T22:43:15 8230164 8 10 [...].92.45.[...] C1E1299AC1C349FFBD488FC2718B71AD
    2024-10-12T20:17:47 8230073 1 10 [...].71.218.[...] C214B361146649AD89028AB396F09D44
    2024-10-27T14:10:13 8220016 6 10 [...].64.18.[...] C2160EF595264CE781A7A258FD11BE05
    2024-12-08T20:00:34 8190333 9 10 [...].168.0.[...] C22AC11708A941899A6713CA44D8BEF4
    2024-11-09T16:52:14 8220141 7 10 [...].75.104.[...] C230617F308D482CA2DD2E9A2284B18B
    2024-12-01T14:34:59 8230056 12 10 [...].242.225.[...] C23A69586E2E494DAC69EB95EDDD090F
    2024-12-10T19:10:30 8230012 7 10 [...].74.14.[...] C23B047FB5B043818BFA391882E2075C
    2024-12-08T15:07:31 8230030 7 10 [...].131.254.[...] C23D7957294A4CA5B2A7063FBADC1DE8
    2024-10-13T19:35:02 8210111 1 10 [...].6.2.[...] C24FD194997F4E9A871770F313406135
    2024-10-26T22:35:47 8230105 4 10 [...].242.227.[...] C2DE6A8D5D644D2A87913FC94D374811
    2024-11-29T18:13:18 8230067 12 10 [...].176.113.[...] C2FC096605094302B8600F767ED09B4F
    2024-10-29T15:44:56 8230047 3 10 [...].84.197.[...] C323CE710BC54D018F20944BEFA3233F
    2024-12-12T12:00:10 8210087 8 10 [...].129.15.[...] C32CD9C26ED64C1288AA12E35D6E5CF3
    2024-11-22T00:55:59 8220114 8 10 [...].242.187.[...] C3981614320D4CB4A9A15C52F8F527D5
    2024-12-20T19:15:19 8230014 10 10 [...].49.227.[...] C3B25BE22C0843B397DA34ED4D0E1CE0
    2024-12-01T23:12:16 8230102 12 10 [...].87.119.[...] C42FAC791DD544D5A1178A25EE42F296
    2024-12-11T12:46:07 8190378 8 10 [...].92.75.[...] C46758A67EEC407FA8A637CDA2802EEC
    2024-12-12T14:38:12 8230070 13 10 [...].26.4.[...] C47581773BAD4C7583A9203B660F048E
    2024-10-22T11:42:05 8190378 3 10 [...].58.225.[...] C47FC6AEB2C54892ACD3D20B9B295D01
    2024-10-23T20:05:58 8230083 3 10 [...].130.27.[...] C48245D3EEAD465F9B9E1A15612877C5
    2024-10-17T12:51:20 8230053 2 10 [...].74.24.[...] C4905A4DF914492F843960B8A43B8C15
    2024-11-20T14:36:57 8230127 16 10 [...].166.65.[...] C4B3AEC4E6C844709DCD2850C7D91199
    2024-10-18T16:47:35 8190304 1 10 [...].217.176.[...] C4BA13A23B804B1A88621C75CBC39FD2
    2024-11-16T13:37:51 8230105 6 10 [...].6.161.[...] C4C89C2F82644E27A0D3235B31895192
    2024-11-10T13:26:20 8230034 5 10 [...].107.129.[...] C4D8FE05C7254B93A5FF4129AC0F69C6
    2024-11-27T14:22:48 8220221 4 9 [...].66.136.[...] C4D96F759F3F4987A3CFE3F472050E0F
    2024-10-24T23:52:57 8230098 4 10 [...].49.227.[...] C4DA0AE059214D6BB9FFFCD48494D8D2
    2024-12-18T12:21:09 8220105 10 10 [...].49.119.[...] C4E6D887689640239B4AC79B8BACFE59
    2024-10-28T21:00:58 8220016 7 10 [...].64.18.[...] C4FDEB1329CC497EB9FE9458F5BFCAE3
    2024-11-08T14:51:07 8230227 3 10 [...].26.16.[...] C531A85D39E64937ADBAB51EC7F453B0
    2024-10-27T17:41:35 8210226 5 3 [...].87.105.[...] C535F4D5A5CF4CFCBD284292880C3F4E
    2024-12-12T13:54:08 8230246 8 10 [...].86.205.[...] C550F252DAC6484E880AB66DC69E6518
    2024-10-21T21:21:41 8230021 3 10 [...].246.176.[...] C559086182D74F8C8CF12CFAE5260102
    2024-12-06T07:13:22 8220070 9 10 [...].58.224.[...] C57E8FD463C54C3CA6F211E1592D58B5
    2024-10-13T23:40:27 8190333 1 10 [...].168.0.[...] C5DB5C45AD1243B49E0B888AD2F39348
    2024-11-07T14:13:00 8230063 5 10 [...].138.157.[...] C5DF5FDF7E7E4BD4BA1A490FA187AF66
    2024-12-07T17:21:26 8190238 14 10 [...].66.79.[...] C6192B143849444CBD3123D4F71FD746
    2024-10-30T11:43:09 8230077 4 10 [...].73.127.[...] C61B9990AC63421C98D4063274C6CEB6
    2024-10-26T19:49:04 8230152 3 10 [...].203.166.[...] C63EA81303D843678C3B9A6B76F2C073
    2024-10-15T21:59:46 8230070 2 10 [...].217.161.[...] C6523C15C41F42AE88388876E31BB5F2
    2024-11-03T11:33:32 8230057 7 10 [...].87.145.[...] C65D2F116D074193B51ECFCE51D1B035
    2024-10-31T16:00:06 8190273 4 10 [...].177.233.[...] C66AE640929C4AFEB028885E54BE9C0E
    2024-11-02T22:27:23 8230070 5 10 [...].217.161.[...] C673410E7CF54C8488B7CEBCAB35AB51
    2024-10-21T19:41:48 8230034 2 10 [...].72.180.[...] C68BDFA948394C6496BA26B79141674F
    2024-11-06T15:40:50 8220149 11 10 [...].58.138.[...] C68D3242B0574635A685D43E5FC413F6
    2024-11-12T22:26:40 8230227 4 10 [...].66.136.[...] C699A023074B4EE892AD2391C085C69F
    2024-12-06T17:45:01 8230007 9 10 [...].140.12.[...] C69E7B4CD21C45AD9BC86D17A8255ED3
    2024-11-03T17:06:44 8230123 4 10 [...].71.227.[...] C6B9C50F6B35427C9E3C007AB6766454
    2024-10-25T00:53:17 8230160 3 10 [...].251.66.[...] C6EF46FAC0D44E779BC2C99F22AEF198
    2024-11-20T22:53:54 8230037 16 10 [...].74.119.[...] C728C9388BD7462FA3FE15669E935860
    2024-11-19T15:46:10 8230246 16 10 [...].178.213.[...] C73B711B3E8D4F16A0E4239BA1295375
    2024-10-14T18:58:40 8220215 1 10 [...].74.12.[...] C770224558D54AE1B1C5450F95C23237
    2024-12-18T21:47:18 8230125 10 10 [...].74.252.[...] C79540651C014B459F819175CE2A86FA
    2024-11-06T13:41:49 8220149 14 10 [...].58.138.[...] C7B99387E66844EDA833580566A34B9F
    2024-10-11T12:28:23 8230100 1 10 [...].166.13.[...] C7CB2DC613DB402084EAB2D57E8B5EBF
    2024-10-28T11:48:51 8190271 4 10 [...].217.172.[...] C7CC616A8B6046D69FFEC016C15B22D8
    2024-10-29T20:20:42 8200171 2 10 [...].86.177.[...] C7DBEF23488B4AE68B464A08DF31A5DC
    2024-11-08T01:06:20 8230040 5 10 [...].55.80.[...] C8053FB9D3E84666B2478591E30EB40B
    2024-12-06T15:31:43 8230024 7 10 [...].177.235.[...] C80D4777702F4D4A822D9ABEE9206B7E
    2024-10-27T19:05:21 8230168 3 10 [...].203.240.[...] C826E8F7AF6F4468BBEC2F54BA5216D7
    2024-11-24T15:11:45 8190381 16 9 [...].55.98.[...] C851CC4EB5F948E18AAB9E20C2CCF6CE
    2024-12-06T16:02:33 8230005 12 10 [...].138.148.[...] C86683EC1CE74102BEDD5A777200E0BB
    2024-12-09T21:18:53 8230163 7 10 [...].242.186.[...] C86C493FDD654E9D8B038A8895211BA5
    2024-11-03T18:33:32 8200223 4 10 [...].251.52.[...] C86CDE6A240A41A08960EF21BD2E6BED
    2024-10-23T17:53:42 8230013 5 10 [...].26.9.[...] C88AA0DCF8824A9DB23276DA72FC02C6
    2024-12-04T15:36:45 8190332 9 10 [...].107.113.[...] C8AAB9F15D8A48928D571888802FD694
    2024-10-23T12:57:11 8230157 4 10 [...].203.209.[...] C8AAF957941143A88ED2122499BA5A0A
    2024-11-05T16:16:42 8230010 5 10 [...].49.160.[...] C8C64EE39C9C4588A5779E27B477DD64
    2024-11-12T00:49:07 8200171 6 10 [...].86.179.[...] C8C8525725D74EE2917981C9F492BAFC
    2024-10-15T15:00:57 2210175 2 10 [...].140.28.[...] C8F33C61B40A4B8F94A5AD343E1CF056
    2024-10-24T21:40:31 8230113 4 10 [...].75.220.[...] C960492C880E46F5AE2C3BBB7C67AAD2
    2024-12-13T19:19:10 8230103 8 10 [...].66.136.[...] C967475937354788ABA1670C3D91E141
    2024-10-08T21:53:18 8230030 1 10 [...].131.254.[...] C96C47DABB80499298DD73C687C921D4
    2024-11-03T18:36:40 8230027 7 10 [...].43.125.[...] C9A30CCC055544C8B3431BBC6F5CF433
    2024-11-06T12:40:21 8220007 18 10 [...].55.70.[...] C9B1794EBD6B4F76892A705AA7010F1A
    2024-12-01T22:33:57 8230044 12 10 [...].190.4.[...] C9B6050559424FEF8A69E2C4814246D2
    2024-11-05T09:31:25 8200117 5 10 [...].92.100.[...] C9CA0B09B9374329B076B0C94289D09B
    2024-10-13T16:50:56 8230057 1 10 [...].210.232.[...] C9D6876CFCE84496A92F68E16B8D7623
    2024-12-05T18:28:32 8190238 9 10 [...].75.58.[...] C9F1F6A471664145808927371490F5D0
    2024-12-16T21:23:43 8230036 10 10 [...].74.19.[...] C9F3CD76AAD940ECA88DF79E95C6F3FF
    2024-11-30T17:35:42 8200168 16 10 [...].177.150.[...] C9F51F34B7B6467E93F3C95B6CA28188
    2024-12-21T00:18:32 8230053 7 10 [...].74.24.[...] C9F9A242FAD84CFA8B13CE2F21F26800
    2024-12-22T01:35:05 8230135 10 10 [...].192.13.[...] CA00EB7AB4074250AA6E66B335143E11
    2024-11-24T14:48:50 8190381 6 9 [...].55.98.[...] CA29D826F816432698EEA2C6E24E425F
    2024-12-09T23:21:34 8230123 7 10 [...].71.227.[...] CA2A064CD30F428C8FCF01C1089B921D
    2024-10-22T19:13:53 8200066 4 10 [...].168.0.[...] CA8BF85575674C1B8EA4763AD876C558
    2024-10-08T21:18:57 8220169 1 10 [...].75.50.[...] CAAE02C631274E118C3E994143DB5727
    2024-11-24T21:31:36 8230226 6 10 [...].210.83.[...] CAC63EDE1EF44BC09BAFC239F4DF89F5
    2024-12-03T02:34:45 8230160 12 10 [...].246.251.[...] CAE1DAB579FC4A86B06B92FCDE0C17E4
    2024-10-21T19:39:41 8230035 4 10 [...].177.146.[...] CAECAD020747499D980ECB9E17167D6A
    2024-11-29T18:06:35 8230101 12 10 [...].86.154.[...] CB066FD020EE492A8C454802CF737772
    2024-10-16T21:08:36 8230135 2 10 [...].140.90.[...] CB0951C4457644778969C8F8F50B968B
    2024-11-27T16:02:39 8220136 6 10 [...].26.25.[...] CB49F54D26814ABF9E0591CF9F31B390
    2024-10-10T23:03:40 8230107 1 10 [...].130.70.[...] CB646ADD4F244C13AD9163413BF1D3CD
    2024-10-15T00:42:48 8220053 5 10 [...].217.161.[...] CB7F3C6C4BDE44AD87F225C795A03C27
    2024-11-22T17:29:46 8230029 16 10 [...].75.25.[...] CB8BD88A7C184B23A0255ACC3EA17E99
    2024-10-21T22:25:48 8230061 3 10 [...].138.148.[...] CB911C84826940FBB5210CEF873A46F2
    2024-11-02T15:55:47 8230117 4 8 [...].251.96.[...] CBA7A34CDB3C4441B617D74AF46585EC
    2024-11-15T12:55:45 8230001 6 10 [...].4.158.[...] CBD48CBE724240B888F433BDAAA95B80
    2024-10-27T16:51:13 8230127 4 10 [...].176.109.[...] CBD7F40596674DDE90D77DF32522C0E2
    2024-10-09T13:47:23 8220108 2 10 [...].26.22.[...] CBE2670A3ED544019816A16F80939E36
    2024-11-22T16:19:56 8220231 6 10 [...].140.32.[...] CBE8651456714A31A86CCB796E8309B6
    2024-10-25T19:05:25 8230050 3 10 [...].242.138.[...] CC03469C986746268CD07E56D4EED615
    2024-10-22T10:06:27 8220046 9 10 [...].26.43.[...] CC099801E0544101988599201824137D
    2024-11-27T23:44:04 8230135 12 10 [...].242.187.[...] CC2511B600BC4EA88865B7ECB6854C18
    2024-10-11T16:44:15 8230093 1 10 [...].203.178.[...] CC3592CD27F14008AD259659EC08B9AF
    2024-11-24T23:54:47 8150188 16 10 [...].92.185.[...] CC38F3389DB246A48A47B210F0562B88
    2024-10-13T14:20:41 8230093 4 10 [...].178.173.[...] CC39D393938940C1A50079DED7B0D59D
    2024-12-03T18:53:25 8220091 9 10 [...].168.1.[...] CC3CECC02F8945199C3E2728C43758B0
    2024-11-13T16:23:33 8230247 15 10 [...].246.138.[...] CC40F15305B242C2A2D1CF5E676D2151
    2024-12-08T17:33:27 8230138 7 10 [...].4.87.[...] CC56D2DF7C5E44EB99EC2728322388AF
    2024-11-23T23:31:38 8230220 6 10 [...].71.169.[...] CC83A8FFFDD441AB98FC14EFF36C65CC
    2024-11-05T00:23:38 8220149 4 2 [...].217.175.[...] CC84BF09B47E4AC1B9292ED32B848557
    2024-11-22T19:45:47 8230131 6 10 [...].103.27.[...] CC8EB70D617B4F7CBF85B806F64F78CA
    2024-10-23T17:15:39 8220114 3 10 [...].242.187.[...] CC905329B9704277A575417DEABC2F2C
    2024-11-22T13:14:03 8230017 6 10 [...].87.161.[...] CC9EC490A8E94FEA842CEE5877F17403
    2024-10-11T22:08:09 8230117 1 10 [...].237.20.[...] CCA79BDBE0DC47FB9DF26DA3C3767964
    2024-10-20T00:57:02 8220046 7 10 [...].58.136.[...] CCDDD1BA682A4FF7975F7791FDCA5020
    2024-10-31T18:42:59 8230100 5 10 [...].190.23.[...] CCE0ECA2E6A6463592B45B50A87F09C0
    2024-10-28T21:46:02 8230117 3 10 [...].167.38.[...] CCE149FB1528467A89DCE3ACF8A72297
    2024-10-20T23:45:21 8230097 2 10 [...].73.34.[...] CCE1C0A941E94BB9A3BDBF2BB17351D6
    2024-10-25T17:57:49 8230071 3 10 [...].166.103.[...] CCECA94183AB471BA6D13D35BBCA640B
    2024-11-18T21:18:04 8230122 16 10 [...].129.234.[...] CCF7C2D94D9B4D8DB9FCDEEB2F67D059
    2024-12-18T13:52:18 8230224 10 10 [...].49.166.[...] CD0B09C8391B4497A3BD12B30CD6671A
    2024-11-24T00:47:29 8230022 6 10 [...].152.208.[...] CD0E54FF17A2490880E9B791AC478C69
    2024-10-19T23:50:59 8190304 12 10 [...].217.176.[...] CD1E10D0C68C4DBDB0D94EC250B28919
    2024-10-22T00:38:31 8220131 3 10 [...].58.137.[...] CD30C1EEE5864CC58E18FB8501DBB9A0
    2024-11-20T18:36:46 8220091 4 10 [...].168.1.[...] CD34D5EF7B5E46B28B77AD2819071CB4
    2024-12-03T20:09:50 8220228 9 10 [...].177.231.[...] CD771F048D6E49409606F4ECA1F3D7D3
    2024-12-07T18:23:37 8230035 7 9 [...].177.146.[...] CD7C0DBDD4554A5A93C5CA998F57E252
    2024-11-04T14:49:52 8220007 10 10 [...].26.43.[...] CD862125D55C42ECB0A1985C49E0B707
    2024-11-10T21:14:58 8230120 5 10 [...].74.60.[...] CDBF3C98872D4325A06730401C3A8AC2
    2024-10-14T15:46:27 8230120 1 10 [...].74.17.[...] CE63E69B2F20412C882D20921EB2167A
    2024-10-24T18:16:37 8230127 3 10 [...].26.75.[...] CE87C5DB6804440A987B3783233135EB
    2024-10-08T18:43:43 8220229 3 10 [...].242.22.[...] CE8E60053A59412A86DF48435C61211D
    2024-10-11T20:34:48 8200066 2 6 [...].168.0.[...] CE92FE1E3EE44F5FB186A07E69F79599
    2024-12-15T20:57:54 8230131 8 10 [...].92.87.[...] CEA05DA8F95C498E81942EA39D667973
    2024-10-24T12:38:18 8220169 4 10 [...].26.70.[...] CECBF8C8C26347AC912698F118834A80
    2024-11-04T18:47:17 8230148 5 10 [...].87.72.[...] CED8DAFAA7BD4E42B3A8A133B9043DAD
    2024-10-31T12:39:27 8230072 2 10 [...].84.133.[...] CEF84D67FD4A47DCB2511C32ACBFD161
    2024-10-27T16:18:16 8230010 4 10 [...].49.179.[...] CF3649D1CE8F4256B311B1EC906911B9
    2024-11-06T09:22:57 8220044 5 10 [...].64.157.[...] CF3C6AD982FA4302873B271C75143F50
    2024-11-08T17:00:33 8230006 5 10 [...].242.245.[...] CF6BBEC7ECF24A56B682DDA0FA5866C9
    2024-12-05T19:35:39 8210219 9 10 [...].168.1.[...] CF7193DDC1E944C98690D79BBC410109
    2024-12-10T01:11:19 8230102 7 10 [...].87.119.[...] CFAFD85744884FE2AADE3B034A67B64D
    2024-10-12T11:51:32 8210087 1 8 [...].49.107.[...] CFC0B9261E9948A18DB2A890234275B1
    2024-12-10T19:07:23 8220152 7 10 [...].66.136.[...] CFC99E0936EF4AB593BD08BBED9BBCBB
    2024-11-14T10:31:25 8230072 6 10 [...].103.43.[...] CFD1C8E20D0949E9A67B3FE39C47B94D
    2024-12-04T20:48:29 8230073 9 10 [...].217.174.[...] D0162CC435F44F2CAE82E6A9C104C7C2
    2024-10-11T16:04:19 8230145 1 10 [...].92.173.[...] D028A51B61E344389EE217C8F440271F
    2024-11-30T21:02:59 8230059 12 10 [...].1.35.[...] D03044C2A92649F39F1B1B5B3A5D272D
    2024-10-21T19:11:52 8230035 3 10 [...].177.146.[...] D04060F3BBED4632BCDD681ABBAA3200
    2024-12-15T18:18:26 8220053 8 10 [...].66.136.[...] D064CDE04B224076ADBC37FB0EE95A85
    2024-12-18T17:58:20 8210208 10 8 [...].207.159.[...] D0764F0AC28E43878D8BB5B7791F2645
    2024-10-14T23:58:27 8230100 2 10 [...].166.13.[...] D088476BB7544A6E91FAFD4AA076BBA6
    2024-10-21T11:59:14 823002 4 10 [...].26.42.[...] D0BFC8336506483385D5C1298860AAFF
    2024-11-24T14:28:40 8230155 16 10 [...].131.30.[...] D0C701D989B3443BAFF3013543214AF4
    2024-12-10T19:00:00 8230159 10 10 [...].242.185.[...] D0CC5864199A46C8ACC06BF23FEA8FE6
    2024-10-17T22:03:54 8230132 2 10 [...].140.20.[...] D0F8595ED8E441BA9837CF3BF3660791
    2024-11-06T10:19:13 8230157 5 10 [...].217.175.[...] D116542AA6864A849EAF6B379DCE251A
    2024-11-24T13:38:58 8220052 16 10 [...].168.0.[...] D13151A4E94C471FB09D8638202F95FE
    2024-12-11T14:05:17 8230131 7 10 [...].92.87.[...] D138017C1145488C9CC476623FA71FF9
    2024-11-23T20:50:02 8230006 16 10 [...].242.245.[...] D146AF5E1F6941CA9416F12A712EFBC1
    2024-12-18T19:32:17 8220156 10 10 [...].72.67.[...] D1666277E7524BE1A5454083C8664ED6
    2024-12-01T14:24:20 8230016 9 10 [...].168.1.[...] D16F6C47CDF745D48B1B4DEB2C6A0FB8
    2024-12-09T00:27:02 8230068 7 10 [...].75.76.[...] D176984E6B0E4C22A0ED2C38363D9866
    2024-12-01T18:53:41 8230099 12 10 [...].87.198.[...] D1A4A9CE3BB1416088BDED23EEA2BB8D
    2024-10-18T18:35:21 8230113 2 8 [...].75.220.[...] D1F26325599849EBAE305EF36618FD04
    2024-12-17T16:09:17 8230034 8 10 [...].168.0.[...] D2018C9D64934700A105D0B04D941579
    2024-11-06T18:47:03 8220231 5 10 [...].140.32.[...] D204A2BA89AA4986A4A0655980587B8E
    2024-11-20T00:21:05 8230066 16 10 [...].86.251.[...] D20668CCF43F4BE7B4097B6524614AB8
    2024-11-24T23:34:52 8230040 16 10 [...].87.26.[...] D20DEBCDE2694F6D9C36F55A55D98DE8
    2024-12-08T03:38:45 8220052 7 10 [...].168.0.[...] D22B151E3F974D61AFBA63CF0017C219
    2024-12-21T21:02:56 8230030 10 10 [...].131.254.[...] D22D35F70FCB4684B874A9CAB48C62E5
    2024-10-09T23:05:14 8220070 1 10 [...].166.35.[...] D2B425E9D5D541C9862FC2FA9905D7F3
    2024-12-02T00:15:12 8230168 12 10 [...].248.34.[...] D2C0297B0D6F4A65BB0D0C8ECF37C407
    2024-11-10T23:56:26 8220036 6 10 [...].203.210.[...] D2D52FA5E4C34B3B846873643B2A210D
    2024-12-01T22:59:05 8230111 12 10 [...].168.0.[...] D2E8268A8A4349D2ADDD6F35784ED1BA
    2024-10-11T19:51:07 8200066 1 10 [...].168.0.[...] D2F0C667918B42AA8A2B441E385F2944
    2024-10-15T21:03:36 8230227 1 10 [...].178.141.[...] D35A572FC8E540E1BA60EF3CD6B04D32
    2024-10-23T22:11:00 8220228 4 8 [...].103.47.[...] D36FD7E84EB74D0FB09397A8B2ABDCCE
    2024-12-18T16:03:27 8220044 10 10 [...].87.107.[...] D38730B5A6644241810AB085B2F313CB
    2024-11-09T16:02:54 8220114 7 10 [...].242.184.[...] D396CBCAD44140B3BC2FE5326478C5CF
    2024-12-05T15:06:18 8230017 12 10 [...].87.161.[...] D3E089840D9442179F4CB7B70BFAD195
    2024-10-26T18:51:01 8220029 6 8 [...].166.168.[...] D3E101A033284F89B3F6740D257603B0
    2024-10-11T13:45:43 8230035 1 10 [...].251.255.[...] D3EE4A2A99B64C05B66F516DAC109370
    2024-11-13T22:24:21 8220110 6 10 [...].74.160.[...] D432166D462E4BBA93E99A6BA90FFE29
    2024-12-06T21:03:48 8230152 9 10 [...].203.155.[...] D4451F18DC6D4C6985BB191C01BDECDE
    2024-12-19T12:30:45 8230066 10 10 [...].86.251.[...] D47E9CA0782246528CB1697335D4F934
    2024-10-12T19:23:50 8230024 1 10 [...].92.141.[...] D486E16203EA4474AA1F046572AD8B83
    2024-11-13T16:52:43 8230083 6 10 [...].130.27.[...] D49B6A7EC8B545108309351A90A3B959
    2024-11-19T15:54:06 8220044 6 10 [...].64.157.[...] D49CD51ACEBE448B960B90D5490F29AB
    2024-11-23T02:37:06 8230064 7 10 [...].106.14.[...] D4B04A4CFA1B4C8C8AB60484D0E4DBE9
    2024-10-11T16:26:09 8230040 1 8 [...].55.136.[...] D4DA68BF13224C088B206A13F62833C5
    2024-11-25T22:37:14 8230159 12 10 [...].86.94.[...] D4E38B24E8C9423D85C490A90779C103
    2024-12-01T20:11:27 8230076 12 10 [...].140.30.[...] D4EC269382934253BF19F087C8A0DD85
    2024-12-16T21:20:17 8230023 10 10 [...].242.187.[...] D4ED2A03A0994C50A377192284C4D38B
    2024-11-03T22:04:34 8230167 4 8 [...].71.30.[...] D55E78955B20479DBE760E04151AABC2
    2024-11-04T19:15:08 8230154 15 10 [...].167.82.[...] D570D9A447164549A600CD7F5E01ABFB
    2024-12-01T14:33:23 8230103 12 10 [...].66.136.[...] D58078881DE346D5958A4A33CB7B92F9
    2024-12-04T18:30:30 8230077 7 10 [...].74.48.[...] D5A4A4E0644740639AEE618FF47910F7
    2024-10-20T00:20:38 8230040 2 10 [...].55.80.[...] D5BF0C7069874C628F9808287072CA40
    2024-10-17T21:00:07 8230154 4 10 [...].92.162.[...] D5D2B315664345C392415C402F562DFD
    2024-10-25T13:47:29 8230019 3 10 [...].86.152.[...] D5DD5E82715C457BA34E23059A8A22BC
    2024-10-19T00:14:00 8230067 2 10 [...].167.105.[...] D61F7CAFB1714781859FFB5A2F80BEE4
    2024-11-03T22:36:41 8230109 4 10 [...].202.96.[...] D6577E957C1B4DE8922C2EC3A61FA1FB
    2024-10-09T20:38:10 8230091 1 10 [...].6.160.[...] D663D5CFC0724D3687EACC4548ACD926
    2024-10-08T12:48:39 8220007 1 10 [...].26.43.[...] D67443FC9E3E447AA19B1EF505507D03
    2024-11-08T14:13:51 8200117 12 10 [...].92.100.[...] D69565A799D444A2975999D2679B3014
    2024-12-21T16:28:33 8230052 10 10 [...].38.25.[...] D6A44E70ACAC4F55A9DD2866AFD5F3AC
    2024-10-09T11:23:34 8220046 2 10 [...].26.43.[...] D6C3F3780CA448BDB3BE423BAEFC7CBD
    2024-10-23T18:15:26 8200152 6 9 [...].140.89.[...] D6C6492C558A457699274B7043C988DF
    2024-12-10T16:20:09 8230039 7 10 [...].16.178.[...] D6F445F018994521AAEE9B77B0E12EA1
    2024-11-22T01:39:45 8230064 7 10 [...].152.148.[...] D70942428A47446DA3254A7E1151C44B
    2024-12-13T15:03:50 8230003 13 10 [...].74.161.[...] D716F968983D4FF0B5A7FFA77BEEC0FD
    2024-10-28T17:07:22 8220070 3 10 [...].58.226.[...] D720B72BFB4F4CF8A42B0CA744B77929
    2024-12-17T00:14:14 8220036 10 10 [...].152.146.[...] D721C6B420594157ABC90729DBD08122
    2024-12-13T21:32:09 8230043 8 6 [...].4.92.[...] D724FE71CC144B1AA5BD427C50396198
    2024-11-17T23:18:17 8220070 6 10 [...].58.224.[...] D7290A38549343C5970158E9C256FD00
    2024-11-30T23:12:47 8230024 12 10 [...].177.235.[...] D7577D67EA874976AD23BAB2A86C84C8
    2024-10-20T19:07:23 8230058 2 10 [...].210.98.[...] D798061E889C4CABA88CE577AED77567
    2024-10-11T17:38:39 8220114 1 10 [...].242.184.[...] D8387E112B5540CF8BA216D872988078
    2024-12-17T19:06:14 8230088 1 10 [...].168.0.[...] D84E73772224440EB91D55C0B95E67FC
    2024-12-06T20:43:38 8230124 7 10 [...].86.31.[...] D853F6848C1B40F7842647B8A4FDDAA3
    2024-10-28T23:55:22 8200117 1 8 [...].92.100.[...] D85938BDB7204E618B5C24EBF734682B
    2024-12-15T18:50:55 8230126 8 10 [...].86.214.[...] D880D3E25CE74898A6F7852F33409018
    2024-11-13T18:27:12 8230144 6 10 [...].1.100.[...] D8BC7E62BE924C19954DC29E72E69E8B
    2024-11-03T21:53:01 8190333 4 10 [...].168.0.[...] D8C59BFDA2DA40A98C20AFAB380594F1
    2024-12-08T21:01:38 8230078 9 10 [...].251.255.[...] D8D6C22E4E404A42BF914820CDAE774C
    2024-11-30T14:18:49 8210087 12 10 [...].203.222.[...] D8E3A6318BAE4CD196611DA856171C72
    2024-11-29T21:15:53 8190332 12 10 [...].6.72.[...] D8F7BE2DAA25423EBBBD925FF0D78470
    2024-11-09T19:46:07 8230028 6 10 [...].130.230.[...] D8FD1210DA6B45ACBE087A244E4F727A
    2024-12-18T21:15:14 8230157 10 10 [...].217.175.[...] D904B297CB6D4C7A996537759516D66B
    2024-12-10T21:43:39 8230079 7 10 [...].6.69.[...] D93FFBC3F3CA4BC7BDAB0077F8D3269D
    2024-11-18T23:59:29 8190332 8 10 [...].6.72.[...] D953572B560C42D382EC3D627B7A9E5E
    2024-11-06T22:52:49 8230052 5 10 [...].38.25.[...] D9850E4CB5DD4852879355289CEA6B46
    2024-11-19T23:34:18 8200117 16 10 [...].92.100.[...] D99DC6CCE93B4B388653F368C4F2B7C8
    2024-10-11T18:42:38 8230021 1 10 [...].246.176.[...] D9B41D288A5B4F0AAA113E56869B74EB
    2024-11-06T00:22:09 8230098 5 10 [...].43.40.[...] D9B541671D5841619B9D93D9822E34E0
    2024-10-23T10:26:48 8220044 4 10 [...].26.4.[...] D9B5B11128F44249A809864D54614B16
    2024-11-28T16:10:34 8190378 16 10 [...].58.139.[...] D9C422CB797C4B25B5F280B02D365A1E
    2024-10-13T13:38:34 8230093 3 10 [...].178.173.[...] D9C7E33EF75C43419B03B8A00D9430A8
    2024-10-25T13:13:19 8230058 4 10 [...].210.98.[...] DA0215238248464C91665F0051401011
    2024-10-09T21:06:00 8230036 1 10 [...].74.32.[...] DA1497D9685D4CE39CDC75482C80E3E5
    2024-11-05T20:30:53 8230042 5 10 [...].49.79.[...] DA3FBE349BEC4D10A7EF0A8FDC671719
    2024-12-15T23:46:16 8230247 8 10 [...].92.170.[...] DA4CAA3730F34055A206ED5DD254551A
    2024-12-12T13:15:42 8220228 8 10 [...].74.33.[...] DA717E7BFAA9428EBCBF7E3A3CA6C08D
    2024-11-25T14:58:38 8200171 7 6 [...].26.26.[...] DA73769CBD9F4F50B0AB7CA29FE4E5BF
    2024-11-24T18:08:58 2210175 16 10 [...].176.157.[...] DA7A8211E4634745A674BE9668312538
    2024-11-23T08:57:52 8230132 16 10 [...].217.174.[...] DA8DC2E7599F43B8BC2AEC7BDD12632F
    2024-12-15T18:29:15 8220229 8 6 [...].219.217.[...] DAA094A2975E46B888ACDE8AB9128F60
    2024-10-13T18:50:59 8230126 1 10 [...].86.212.[...] DAA6910DA0C3433F9BCCB7FA57E8EDFC
    2024-11-15T16:55:48 8220141 10 10 [...].74.61.[...] DAB7B542DE604598B7C40E0019453EB7
    2024-10-10T11:34:18 8220229 5 10 [...].140.29.[...] DAC45A4CD4B149BE9391AFEC0E747503
    2024-11-08T16:07:43 8230043 6 10 [...].4.92.[...] DAE01C3C11D44D74883ED42D7AA4239F
    2024-10-26T10:40:01 8230085 3 9 [...].217.161.[...] DAF04A23434F4636B44662E5FDA2F864
    2024-11-07T00:21:02 8200171 5 8 [...].86.179.[...] DAF66B24D627433B8235C39FC983495D
    2024-12-21T19:38:28 8220169 10 10 [...].71.169.[...] DB1396FC9ECA406BAC2CCE47933EF90C
    2024-10-25T13:35:11 8220029 4 10 [...].237.30.[...] DB4760549DE847E8B6FC40BEA39143F8
    2024-12-05T15:24:15 8230113 7 8 [...].65.112.[...] DB6525D8A532432E85F8B97CA86B9CD6
    2024-12-15T18:25:49 8200168 8 7 [...].177.156.[...] DB66B3484F54414BAE8787E8CB8899F3
    2024-11-15T16:07:28 8200117 14 10 [...].92.100.[...] DB8C857F5E6A47CE82F40A365B271860
    2024-12-04T13:08:53 8220110 9 10 [...].84.30.[...] DBB06B4A11CC40B0AADB43440889D591
    2024-10-21T22:00:20 8230036 3 10 [...].74.33.[...] DBE77CA3DDB5432D94313E2B9CCFC72B
    2024-10-16T23:16:49 8230109 2 10 [...].202.96.[...] DC1D8B6B5D7346C6B125C5C3099B2A82
    2024-11-20T13:49:12 8230168 6 10 [...].248.34.[...] DC5F6C561F644A35B12C8C943974EBBD
    2024-10-23T23:06:34 8230024 4 10 [...].103.33.[...] DC73D6FA96544C4C90194BBD7C42C168
    2024-12-01T22:41:08 8230064 12 10 [...].86.44.[...] DC965649945C4BBFB405D57AEB7B3ED9
    2024-12-01T20:59:22 8220148 12 10 [...].86.10.[...] DCB3AD7672834B0BB6B74374A4E2E4EF
    2024-12-19T17:51:05 8230033 10 8 [...].251.255.[...] DCD560EC8DDF48328035525E2A5CA54D
    2024-10-20T21:36:44 8230092 2 6 [...].58.225.[...] DD0462FDECC04C66A4E86AC723B49694
    2024-10-09T21:30:44 8230023 1 10 [...].58.194.[...] DD086FE626A0440FA4D0B4A36581B6E1
    2024-10-10T18:02:42 8230159 1 10 [...].74.2.[...] DD19A3619100469B992D9E4697EC7F02
    2024-10-25T20:32:08 8230106 3 10 [...].58.195.[...] DD2C63725EF64E819338E9D83CA1D3F9
    2024-11-02T18:24:35 8200168 4 10 [...].177.150.[...] DD37FAEE0A2D4D29B63EC8BF6A4652BB
    2024-11-23T17:05:03 8230014 6 10 [...].43.36.[...] DD384455B4FB439CB076205E2EFD80B3
    2024-11-26T12:49:15 8200066 10 6 [...].168.0.[...] DD3C4DE8782F44A3A1C0B71A323BEE0A
    2024-11-08T13:39:59 8230008 7 10 [...].203.154.[...] DD3F2049049645E1829F850DDC9CE56A
    2024-12-01T23:37:09 8220145 12 10 [...].72.171.[...] DD9D67B90DEC4F3AAD99DA713051C649
    2024-10-24T12:03:52 8220169 3 10 [...].26.70.[...] DD9E954BCD514FEAAFA2FD3E72C4E9D3
    2024-11-23T18:59:19 8230156 16 10 [...].219.245.[...] DDDDB1AD08B645DDABAD4877E2E99CE1
    2024-12-01T18:01:19 8230035 12 10 [...].177.146.[...] DDE07ACD567F4040A81D8425F0C75CCC
    2024-10-25T14:01:06 8230022 4 10 [...].178.193.[...] DDE08DDCDF164E82BFD4145383F8A634
    2024-12-10T16:23:12 8220016 8 10 [...].130.15.[...] DDFDB6E945044D4CBD9EFB7945373B7F
    2024-11-07T22:25:25 8230070 6 10 [...].217.161.[...] DDFDDC56C4404C4CAA14FD3C209C030F
    2024-10-22T10:38:58 8220046 10 10 [...].26.43.[...] DE015A4713CD4CBFAE922D8E76AD151D
    2024-11-25T21:06:46 8200066 16 10 [...].168.0.[...] DE18641972254EC3B09E81048B232095
    2024-10-17T23:22:23 8230008 4 10 [...].203.144.[...] DE2CC16F88794EC78B55A7ADFFA59E25
    2024-10-24T20:30:06 8230068 3 10 [...].75.76.[...] DE36EAAE41CA4DF0A79AF1FE58EFEC12
    2024-12-11T17:46:47 8230029 8 10 [...].73.76.[...] DE3F41EED22D439EA7E7F9BF47C6D1B4
    2024-11-16T16:20:42 8230101 6 10 [...].217.161.[...] DE4FF041952F45DCB92A747756EBCDE0
    2024-10-11T19:01:49 8230075 1 10 [...].70.168.[...] DE5C30CDC69C4957A998495D6E87D130
    2024-11-27T21:46:45 8230042 12 10 [...].49.218.[...] DE6F0875B6A143B899285DA1E79B85AD
    2024-12-10T18:33:16 8220025 7 10 [...].177.82.[...] DE6F6F47A7EE4C199B5C8ED5A4E558BC
    2024-11-24T12:58:38 8220229 16 10 [...].140.28.[...] DE8B6D1C8C284E38A6AE691921F77B86
    2024-12-18T12:24:09 8230139 10 10 [...].242.187.[...] DE94EB02D5DC4CB497BF8D7E0231D9AE
    2024-12-07T18:44:05 8230034 7 10 [...].203.201.[...] DEA9CEEF2A014C589886B39E8FB8EA24
    2024-12-13T23:55:00 8230159 17 10 [...].84.9.[...] DEAEF8537A8F45FFA4193D0C9B4BA3B2
    2024-12-08T22:37:44 8230221 9 10 [...].59.80.[...] DEB362631A994FB7B23B65177363A7EE
    2024-11-14T22:10:12 8230109 6 10 [...].202.96.[...] DEC370AC408C4B2587575745034CD450
    2024-10-14T18:56:21 8230221 1 8 [...].178.144.[...] DEC7ACB56D06423DA64EF9D95A20F17F
    2024-12-16T00:21:44 8230220 8 10 [...].71.169.[...] DF087DC097284E0BA363A0D6A427529A
    2024-10-24T01:46:15 8230161 3 10 [...].58.136.[...] DF18E6CD8BEF41CCBEE048A76B27E13E
    2024-10-26T17:04:51 8230094 3 10 [...].217.165.[...] DF261E7A241242179D6BC586167E8963
    2024-10-15T17:36:28 8220112 2 10 [...].138.151.[...] DF3F9059D4D7451D9E5D93340A5F1145
    2024-12-06T10:45:31 8230065 9 10 [...].74.32.[...] DF45161F108D41049D83FEDCF2B02043
    2024-10-19T14:20:58 8210111 2 8 [...].242.225.[...] DF587F110FAA4BD787C413A3E4F14C3D
    2024-11-26T16:44:21 8230247 12 10 [...].14.243.[...] DF635640986F48039C52B9BF1EF2D78C
    2024-10-13T17:24:44 8220091 1 10 [...].66.136.[...] DF937DA8680B417289215EC4025C0988
    2024-10-11T22:23:14 8230246 1 10 [...].87.50.[...] E01428B577334607AC22F8386F19B5D4
    2024-10-19T20:14:51 8190338 2 10 [...].202.85.[...] E05A2F831D9F440BB26B5CA3B84CB88B
    2024-11-10T15:04:50 8210208 5 10 [...].131.172.[...] E0731D55C9F444F0BA1ABCCE9DFAC7E6
    2024-10-12T21:37:03 8230002 1 9 [...].131.130.[...] E08987AAE54741B8B3C06C69D49936D3
    2024-12-11T21:53:04 8230088 9 10 [...].168.0.[...] E09825B8B34843EBA33CA5446778BBDF
    2024-11-10T23:56:21 8230097 5 10 [...].73.34.[...] E0A7651D68A64961ABA42EDAAF933B7E
    2024-11-10T18:40:14 8190338 5 4 [...].68.103.[...] E0A77ACF679641F89A2F212307BFEE16
    2024-10-29T23:43:27 8230068 5 10 [...].75.76.[...] E0FD1D138FF74507A79BA8F822BE54EB
    2024-12-13T15:38:33 8230159 13 10 [...].84.9.[...] E107D61432154EC088D3893BA86B7A13
    2024-12-05T18:16:12 8190238 12 10 [...].75.58.[...] E108CDE001294AAEBFA8035F07DF593A
    2024-12-07T17:47:54 8220044 7 10 [...].87.107.[...] E123C28768B7443881B147DA595E4B8C
    2024-10-12T16:40:41 8220016 2 10 [...].168.0.[...] E13D4EA4662F4352888B4461D8E62827
    2024-10-22T21:47:20 8200152 4 9 [...].140.91.[...] E1437C55FB1D403C803913911B568B99
    2024-11-04T20:19:11 8230125 5 10 [...].86.168.[...] E15CB4F197834576A0C89158A6B35B98
    2024-10-28T12:41:08 8230093 5 10 [...].87.16.[...] E169385D076A4A3C894DF847DE79EAC3
    2024-11-30T21:15:45 8230093 12 10 [...].87.16.[...] E16CBCDDA70D4F0998E134E29F1A565D
    2024-10-22T22:28:08 8200066 5 10 [...].168.0.[...] E1749299021B4349864DD3DCEB53F7EB
    2024-10-23T18:09:15 8220086 3 10 [...].168.0.[...] E1884B8431624033B076A6FA087A5336
    2024-12-05T20:30:04 8230116 7 10 [...].49.134.[...] E18BBA311C6649DF975B8D237ABE2500
    2024-12-14T21:09:00 8230155 8 10 [...].87.93.[...] E1AF1E4B6D9C4635BEB45EE2F3F923A7
    2024-11-12T15:03:11 8230157 6 10 [...].203.165.[...] E1CEFAEC554F4E07A7B85A4C70FAD0F0
    2024-12-12T20:30:47 8230163 8 10 [...].242.186.[...] E1D72DE5C5BF4779BE0C29D628E8F04B
    2024-10-19T10:43:24 8170017 4 10 [...].87.194.[...] E1F65020931F464FB7D3691DEC7CDD76
    2024-10-27T18:39:33 8220052 3 10 [...].168.0.[...] E21092DB34B04E59BA4CA22529C2CE7C
    2024-10-19T13:09:01 8230039 2 10 [...].251.255.[...] E2152C464A1646F4B552EF57A5BE1063
    2024-11-23T21:51:13 8220091 5 10 [...].168.1.[...] E217BF25717D443CB73CF23985524241
    2024-11-29T00:42:24 8200152 8 10 [...].74.73.[...] E221A19E02D64C95B4E7C2B22BFB8118
    2024-10-11T18:09:00 8220112 1 10 [...].138.151.[...] E225DE5EF8964E739ECFB3305B1AF61E
    2024-10-19T23:59:43 8220042 6 10 [...].168.0.[...] E262822BE4AA40BBA1F66752C5615F7E
    2024-12-05T18:59:46 8230160 9 10 [...].246.251.[...] E27C72D0AA9A4740AB8D174A95D27F7B
    2024-12-08T22:50:26 8230079 9 10 [...].6.69.[...] E2B71903D3614BB999B700D31F082FD2
    2024-10-22T22:48:37 8230098 3 10 [...].49.227.[...] E2D8C5BE6A534F96BA24EB2A3DE3CE91
    2024-10-24T01:00:27 8230099 4 10 [...].75.111.[...] E2F695472FEC4449B7C2798DE75206DD
    2024-10-24T22:27:56 8230058 3 10 [...].210.98.[...] E2FF68154AB64B9691AF66A071AB05C8
    2024-11-24T23:42:52 8230018 16 10 [...].251.52.[...] E343CF3A448C4744AE23D9069DF34806
    2024-11-28T16:15:30 8220112 12 10 [...].59.89.[...] E35DB658521B4840B5C27241B662B589
    2024-10-20T21:39:54 8220014 2 9 [...].103.239.[...] E369B3225E2D493A86619773D783B2E6
    2024-11-08T16:51:03 8190376 5 10 [...].131.255.[...] E39157566B854BE29E1765624630E6A9
    2024-10-31T21:19:52 8230066 5 10 [...].86.254.[...] E392F9936E32432C962E3FF17BC11C7C
    2024-12-04T12:55:40 8190378 9 10 [...].58.139.[...] E3A1A1D9678B41418351844A8D6952C6
    2024-10-18T00:48:18 8230246 2 10 [...].70.74.[...] E3CC412C9D4445C09392CCB148B026FE
    2024-11-19T01:07:56 8220228 6 10 [...].92.138.[...] E3DA2F2FC1664E638D13357607271A1C
    2024-10-21T12:24:17 8220046 15 10 [...].26.43.[...] E3EBF9BC74E54EC68AD655DDE44D46E4
    2024-12-04T22:24:02 8230052 9 10 [...].38.25.[...] E3F6A7EEE4574A16AF57737E5DCEEDE2
    2024-11-19T01:59:01 8230091 16 10 [...].6.2.[...] E3FADEE227374F979DE88F5AB5FF6D3F
    2024-12-08T13:57:28 8190381 7 9 [...].55.98.[...] E3FD511D8E0D4D9999B70F730D826A75
    2024-11-21T18:11:40 8230168 16 10 [...].225.158.[...] E41DBF1C6694429F85189128AB5FCB6C
    2024-11-27T16:42:39 8220221 10 4 [...].66.136.[...] E432FA551E3E4CA8B85FD072DAC89A6B
    2024-11-28T15:18:08 8210219 8 10 [...].168.1.[...] E433C323CC5245F4B4A054291CAE4CAD
    2024-10-23T16:02:53 8210219 4 10 [...].168.1.[...] E46C680F68D64A71874FA4425B592411
    2024-12-16T22:07:35 8230117 8 10 [...].237.6.[...] E48A01040E23453498B5928C81E3A2A2
    2024-11-07T16:17:13 8230142 5 10 [...].87.25.[...] E4E56755D52B48269C6587570C17A13F
    2024-10-10T00:03:52 8230109 1 10 [...].202.96.[...] E4F8B1F6257C40E5A140CACDC2C9486D
    2024-11-28T01:18:19 8230011 12 10 [...].73.116.[...] E50E41904ED54A8588754597AA33FDEF
    2024-10-22T13:42:58 8220105 16 10 [...].1.100.[...] E54AAF134A794EEEA440CF87FC26798F
    2024-12-09T00:01:05 8210208 7 8 [...].131.172.[...] E55821F71DF44C39B3B25ED0CF5C03A7
    2024-10-23T11:34:03 8230151 3 10 [...].225.158.[...] E58AC1FFBCCA4518A61E193B42AA8C09
    2024-10-06T23:53:18 0 1 3 [...].86.92.[...] E5A27E0E12ED48DCB78590942266679C
    2024-11-27T23:45:26 8220016 12 10 [...].86.156.[...] E5B0802C29A74AEBA15D2ED9A78243B9
    2024-10-27T18:28:07 8230034 3 10 [...].70.57.[...] E5B1AF7E821D42A79A1B98C230DEBD20
    2024-10-27T18:01:58 8150188 3 10 [...].203.252.[...] E5D16E82B54E49C5B70AA8B705C0B23A
    2024-10-11T18:26:19 8230148 1 10 [...].202.117.[...] E5D9CB57BD554F35B5AF52C42FD35B6F
    2024-12-02T00:52:56 8230097 12 10 [...].73.112.[...] E6062228CB7549A9A335F6AC9D947CFE
    2024-12-14T17:43:18 8220123 8 10 [...].87.46.[...] E6193674A5EF4AB9A6AD4FAEECE99C18
    2024-10-20T23:22:20 8190333 2 10 [...].168.0.[...] E61FCA3D19684E3593EF14F16CE75649
    2024-10-18T15:57:44 8230156 2 10 [...].74.58.[...] E6457B3D873140C6971F05DD42D35521
    2024-11-25T19:01:54 8230163 16 10 [...].26.43.[...] E6B6BA439C4146E0BCBE31E4D436ED65
    2024-12-19T14:52:06 8230145 10 10 [...].44.146.[...] E6B712B0D59F48EA98C86AB5D4688E70
    2024-12-15T16:44:10 8230152 8 10 [...].251.255.[...] E6C015C7EC38448CAF770B0A858C560E
    2024-12-08T19:10:39 8200168 9 10 [...].166.86.[...] E6FEE42A08114766BC20B929943DE244
    2024-12-08T12:00:07 8230064 9 10 [...].72.62.[...] E70D9A1813E444D2B52F8D8731C8E753
    2024-10-19T14:19:12 8230075 2 10 [...].70.168.[...] E70DABF0EAE94A8896CEE361B6248878
    2024-12-10T00:09:58 8230037 8 10 [...].74.114.[...] E713F5EFDB09473DA93F65D0B1B50F75
    2024-11-14T17:38:16 8230063 6 10 [...].138.157.[...] E72C56C7977E440292E6004777C60695
    2024-12-05T17:51:25 8220231 9 10 [...].140.32.[...] E772E56998BF4C939EBA0CB99BD7AB59
    2024-11-20T15:46:24 8230070 16 10 [...].26.4.[...] E775FBBBE2684745BA782A9EE61D4C53
    2024-12-08T20:17:38 8230221 5 8 [...].59.80.[...] E78016086DDE489BB81842608DB09C89
    2024-11-21T20:09:08 8230224 16 10 [...].74.222.[...] E7C7F9E0EFA44AADBA79D3B2A76A437F
    2024-10-13T23:54:07 8230218 1 10 [...].74.11.[...] E7CD13DAB82D488092A31AB7564FF95F
    2024-11-29T19:45:45 8230047 12 10 [...].84.201.[...] E7D3161BAC494AFFBEC89B264566B947
    2024-11-10T17:42:35 8230163 5 10 [...].58.192.[...] E7D90D8159534EB78A2DC1FDA5FD2D30
    2024-12-08T14:55:26 8230039 9 10 [...].166.123.[...] E7E583BDB2444EFAB3F62A36CDF47DAF
    2024-10-13T16:17:33 8230217 1 10 [...].92.141.[...] E803B1F975994CB8B9CD881126BCF4F3
    2024-11-27T22:54:07 8230008 12 10 [...].203.190.[...] E848FD491D3C4ABDB3C35E2DCFFCC37A
    2024-10-11T15:04:54 8230067 1 10 [...].166.94.[...] E84F0A59FCD448AF92C9957E76C268C0
    2024-12-10T15:49:00 8230006 7 10 [...].242.245.[...] E8505F87790E4C1EAFBFC88716C4459F
    2024-11-23T19:42:22 8200117 18 10 [...].92.100.[...] E85ADFD2D78D40E78935D0A78632F137
    2024-10-27T12:11:19 8230105 5 10 [...].242.227.[...] E85DC74DCEA0457CABE466652680AC87
    2024-11-30T23:17:59 8230170 16 10 [...].86.31.[...] E8639CE7B8EE4B02A18B9A0D11A7ADCB
    2024-12-11T15:10:26 8230091 8 10 [...].26.12.[...] E871C4859D8F4C009EEF5983C6A3358C
    2024-11-30T16:51:09 8230070 10 10 [...].217.161.[...] E8895C1731754B888BDBA7FEA1C77F44
    2024-11-03T20:21:00 8190338 4 2 [...].152.240.[...] E896CEA24CCF40E8B3F491CBBF9D765E
    2024-12-10T20:34:41 8220131 7 10 [...].103.255.[...] E89FCEA83C71408E9D498A7086CDD7EF
    2024-11-16T14:32:24 8220052 6 10 [...].168.0.[...] E8A8026B37FB43F6B5C0208381E6A331
    2024-11-13T22:07:10 8210208 6 10 [...].131.172.[...] E906D6DAB3CE4CD880621D79507DA84C
    2024-12-05T11:02:50 8230139 9 10 [...].58.195.[...] E910823AD8A94D5ABAE2248328788E08
    2024-11-27T20:20:17 8230034 16 10 [...].107.85.[...] E91459983DAD4CD3B31E48136E226031
    2024-10-17T18:28:16 8230003 2 10 [...].26.77.[...] E92BD3B76AC34C7E835A491935F95D18
    2024-12-01T22:00:13 8220152 12 10 [...].66.136.[...] E93C15BF19864E17B78AB63D7E594C35
    2024-11-28T13:39:49 8230006 12 10 [...].242.245.[...] E93EB808DBA24EC0A69E4497BC8F5D28
    2024-12-06T20:47:00 8230152 12 10 [...].203.155.[...] E95E6CB729F54FE8BCEB6E95A330E71A
    2024-12-10T02:46:21 8230218 8 10 [...].74.38.[...] E966D37F5ECD4E5E8195ECCB41FAA6D2
    2024-12-06T13:15:42 8230103 9 10 [...].66.136.[...] E97D6105A8134AE59A3C6D7380EB4E40
    2024-11-28T14:06:35 8220221 15 10 [...].66.136.[...] E9BA75AFBA22454BADAC7E9B6A112FDE
    2024-11-03T21:29:35 8230066 6 10 [...].74.226.[...] E9CCA74AD003479C9EABECA8D2606957
    2024-11-26T22:09:36 8220142 12 10 [...].107.37.[...] E9D7E815A3D74D0AB3D729882E3B0C30
    2024-10-21T12:27:45 8230029 4 10 [...].26.42.[...] E9DDA49C2A664ADFB595BF7BFA9C1BAC
    2024-11-16T18:43:32 8230135 6 10 [...].242.187.[...] E9EA7F6AE7084906B4BB8D127303B3B1
    2024-10-20T22:58:44 8230066 2 10 [...].86.254.[...] E9EB462825804FADB79EEDD2CF539775
    2024-10-24T22:44:09 8230153 4 10 [...].74.239.[...] EA0F909593EE4EACB8DAA05F455073DC
    2024-11-30T22:58:13 8230170 6 10 [...].86.31.[...] EA65E1CD3F7142C0A146DA130F90D652
    2024-12-16T20:21:46 8220091 8 10 [...].168.1.[...] EA7FFDCDD5854F7180BF220B5E809B79
    2024-12-01T14:13:21 8170068 12 10 [...].173.84.[...] EAA213411F0847FEB391FFB030456461
    2024-10-23T18:18:13 8220156 16 10 [...].65.125.[...] EACCED32587742B580BA59D60C27B4DE
    2024-10-12T19:07:04 8230089 1 10 [...].84.28.[...] EAD2F862EDC641C2A50B6150116CE661
    2024-10-11T00:52:05 8230144 1 10 [...].49.227.[...] EB3D6891CD2E45B086BB7FDC1AE47CCF
    2024-11-06T18:34:03 8230134 5 10 [...].242.187.[...] EB45604D15F5424C95E9A0BBF988258E
    2024-11-24T20:47:09 8210220 6 10 [...].217.175.[...] EB50113234E64EEEBAD4A377737BD5EB
    2024-11-07T01:04:41 8220149 16 10 [...].58.138.[...] EB7A17FCDAE84E84933B4010FFF57F58
    2024-11-02T23:38:58 8190051 4 10 [...].1.238.[...] EB81A13884A24BDC851AFBE82A62E922
    2024-10-22T16:04:14 8220025 4 10 [...].26.44.[...] EB88CED9BD60409FAE836CFF20DE6E16
    2024-12-04T11:41:45 8230003 9 10 [...].217.174.[...] EB930073FD1A4576A04B3F949BC5FBD4
    2024-11-03T19:51:43 8230106 7 10 [...].58.193.[...] EBDDC502AC4B4F209BCE3B76EE8D2FD0
    2024-10-10T10:00:44 8220007 3 10 [...].55.70.[...] EBF34785D6754EBE9AE36732CDB1595C
    2024-11-06T19:59:48 8210220 5 10 [...].217.175.[...] EC1721A1BEED43349EB2FD672380D689
    2024-11-30T22:52:48 8230104 12 10 [...].251.255.[...] EC1FD9BCBA414BD28EDB91C8223809C8
    2024-12-05T15:42:26 8230111 9 10 [...].168.1.[...] EC4446E64E294D448199AEED112DC9D0
    2024-10-11T20:11:48 8230038 1 10 [...].65.113.[...] EC5575F6687948C6BBD74EB706F1F80E
    2024-10-16T20:51:08 8230042 2 10 [...].49.79.[...] ECB6FC053650415D8CDF4FFA1618D34F
    2024-10-27T12:35:55 8230025 3 10 [...].73.116.[...] ECC7920A4D2746C1B269BAB8D2D17C2C
    2024-12-21T20:05:18 8230012 10 10 [...].74.14.[...] ECE4C8BD16A24387A092299A2A724CB0
    2024-10-31T21:21:15 8230106 6 10 [...].58.193.[...] ECF374363AE74BBE917BD2C881677DCC
    2024-11-19T12:07:41 8190378 7 10 [...].58.139.[...] ED1E0E1663834424B5DFDCFF7551F9A2
    2024-12-14T16:38:51 8230217 8 10 [...].210.107.[...] ED1E37BF2D53489A81E19C8794A25BBE
    2024-10-27T21:24:01 8190376 3 10 [...].86.72.[...] ED27779620784191A5D8D66F065D570B
    2024-10-10T01:10:28 8230035 1 10 [...].251.255.[...] ED2E3D44A0C740CDB61F16F3BEDD97C1
    2024-12-07T13:39:13 8210220 12 10 [...].217.175.[...] ED3107914F6B4962A5707C79A02DAD0D
    2024-12-12T11:57:45 8220152 8 10 [...].26.18.[...] ED5D31973F534B68BE4B9EF41C8BC990
    2024-10-20T13:04:33 8230047 2 10 [...].84.205.[...] ED68086136314F8594893193923924BE
    2024-10-21T12:05:02 8230132 3 10 [...].26.33.[...] ED7C835509F94C6C84F07300BAE79C28
    2024-12-11T00:33:38 8200095 7 10 [...].130.239.[...] ED8B3BF77119428CA2F950C619AAE645
    2024-12-01T21:44:22 8220086 12 10 [...].168.0.[...] ED9165882BB04E359BC50F7E24D25E95
    2024-12-15T19:31:23 8230111 8 10 [...].168.1.[...] EDC55331FBDF4E7698BB439F06CAD559
    2024-12-07T16:04:33 8210220 9 10 [...].217.175.[...] EDCC03B2CDCB4BC0B352DAC931729FB9
    2024-12-12T22:50:02 8230042 8 10 [...].49.218.[...] EE328B02203E4B4A87588DEA85EF6C82
    2024-11-12T12:11:58 8190271 6 9 [...].217.172.[...] EE3A9CEA14C54BE693181DE33E08A4EA
    2024-10-24T21:21:59 8230068 4 10 [...].75.76.[...] EE3F1B88AEC748FE96C5D39DE6AE6D65
    2024-12-01T19:46:20 8230030 12 10 [...].131.254.[...] EE499F0EA34B40B9B16B814B1B3870FB
    2024-11-30T22:15:29 8230246 12 10 [...].131.0.[...] EE4EF04510BE4FD3BBA02B8F3F9232BF
    2024-11-20T20:10:22 8230106 16 10 [...].58.193.[...] EE5BEF743F3744C4B041B26CE1CBA002
    2024-10-25T10:52:23 8220230 3 10 [...].6.116.[...] EE657A92F60A4C91AB52993D19410761
    2024-11-03T19:20:30 8230139 6 10 [...].73.237.[...] EE6D6A96B4C8411385CE5807706D2080
    2024-11-11T22:29:00 8230117 5 8 [...].178.177.[...] EE89370B7A6F4CDFB5C38240A9B9D68C
    2024-12-15T23:55:48 8230102 8 6 [...].75.250.[...] EE8C82B07BEF4B3E85EB8AD19D61BBC0
    2024-12-02T18:57:21 8230247 9 10 [...].4.141.[...] EEAA53A3E337424E8D177CA456256D55
    2024-11-19T13:34:22 8230139 16 10 [...].26.42.[...] EEBBC7CDB93B4BDB8618861A89EF6B37
    2024-11-13T15:07:14 8230104 6 10 [...].178.184.[...] EEBF7C2034B946AB8317B2D9323AAE24
    2024-11-17T17:11:12 8230151 6 10 [...].28.80.[...] EEE61A38BA5C44E8A19EC66B0B8D1438
    2024-11-06T11:06:58 8230077 5 10 [...].73.127.[...] EEE63D97A84947C180753D68A40B59F3
    2024-12-16T19:37:30 8230071 10 10 [...].203.230.[...] EEFDE86102E84322A037ACAA5BA3670C
    2024-12-12T01:14:07 8230022 7 10 [...].140.30.[...] EF1A799AA62843E09633A9C59C03E556
    2024-11-03T14:54:16 8230122 7 10 [...].129.234.[...] EF1A8DA1C6EE4C24A48BFB8D93DF5AD6
    2024-11-27T12:14:47 8220142 12 10 [...].58.196.[...] EF36498DE3BE460BAECF13A5108D0FE6
    2024-11-03T03:05:46 8230164 5 10 [...].167.110.[...] EF37AF13FA1543179109FCF5AB9E8268
    2024-10-29T18:41:01 8160117 2 10 [...].217.161.[...] EF43D0D782EB48B5ACC297911C01F7D6
    2024-11-22T16:51:04 8230044 16 10 [...].107.183.[...] EF5E95CB7DE147599E86AF590A14B30B
    2024-11-01T15:50:02 8230155 1 10 [...].131.230.[...] EF6A836763EE4BC8B93DA0948D0B0C30
    2024-11-19T19:57:07 8230114 16 10 [...].131.158.[...] EF749E31F3D1473EA13C998D9707723B
    2024-11-10T20:54:17 8190238 8 10 [...].130.246.[...] EFADCB86333E4F87A7A3A79EDBF65047
    2024-11-21T21:41:54 8200168 6 8 [...].177.150.[...] F00D0D11CCB445D3A083792B7A5808A9
    2024-11-17T12:37:41 8230075 6 10 [...].71.4.[...] F0377F316B6240EC87A7B63824153CF7
    2024-11-17T21:46:08 8190332 1 10 [...].6.72.[...] F06143898D1F458B8F3E610A375A53EE
    2024-10-19T14:15:03 8230217 2 10 [...].92.141.[...] F0925F61BF184E83B520CAF7BB54C3E9
    2024-11-29T21:56:36 8230107 12 10 [...].72.95.[...] F0A40A4D245D45CB8D397B993B884594
    2024-12-07T02:49:09 8230164 7 10 [...].74.12.[...] F0B99F149E8446B4879C2B5F023EC4E1
    2024-12-08T22:31:40 8190376 9 10 [...].86.84.[...] F0FC864760F7433EBCC67A55E742BEB4
    2024-10-26T21:24:11 8230059 4 10 [...].6.32.[...] F1180BE0CC034B06BD42C11C30C76D97
    2024-11-15T19:03:25 8230012 6 10 [...].74.133.[...] F125A4C215384BF4AD2442D6C66FA459
    2024-11-27T18:39:43 8220039 12 10 [...].49.96.[...] F12E6C883E2A436E8C8AC4E4A78C3B5E
    2024-10-30T17:55:59 8230027 4 10 [...].251.121.[...] F14F67A27EFC47229E3E3B93B29C4DFB
    2024-11-02T18:04:31 8230247 6 10 [...].246.139.[...] F15FC913E0EC40B5B351B9A14CE611FE
    2024-12-15T19:05:29 8230114 8 10 [...].86.206.[...] F1678BEE1B1D4857931BF45D247561DA
    2024-11-12T00:11:31 8220070 5 10 [...].58.225.[...] F187B83D36FB41B1B271BDD1881703AE
    2024-11-24T19:28:51 8230074 16 10 [...].237.199.[...] F1BDE1DBF3CF462FB0AB12DAD6F274C8
    2024-11-22T16:37:13 8220112 16 10 [...].59.89.[...] F1CC6185F0D94781AFE86BFEC12D95E5
    2024-11-30T16:12:17 8220156 8 10 [...].66.79.[...] F1CF6E80B5C643E68D3BC6330360217C
    2024-12-12T11:20:29 8230028 8 10 [...].87.106.[...] F1DDA6E056E24E239A982A682A1D45D8
    2024-10-23T18:57:42 8230003 4 10 [...].74.162.[...] F1ED70D6D588494A8C4712F6A05CA625
    2024-10-22T09:51:16 8220046 8 10 [...].26.43.[...] F21106957F1B4D0EB697228D137D50AD
    2024-12-15T19:08:18 8220085 8 6 [...].242.26.[...] F21B2A3EAFAC4F1AA8915896F5EF2272
    2024-11-18T21:16:47 8190332 5 10 [...].6.72.[...] F24717E0F4A94E02814C893ED1512918
    2024-12-08T22:39:58 8230117 9 10 [...].237.6.[...] F25369E904774728AD44F9CE8D088A4B
    2024-10-23T18:14:26 8230003 3 10 [...].74.162.[...] F25B3A6EEB38464295BD239DBF53BCC9
    2024-10-13T18:59:49 8230018 1 10 [...].251.52.[...] F261F87C6DA14BEFB33B0633228AAC7C
    2024-10-15T16:48:27 8230019 2 10 [...].86.152.[...] F27E865618824620BEF482F5B3FF1AF3
    2024-11-17T00:39:30 8230147 6 10 [...].152.221.[...] F289D43FBA014A73A9F8C5C1472CA180
    2024-10-09T15:25:02 8220149 2 6 [...].168.0.[...] F2E604C634F2411FB46643343A2AA1ED
    2024-11-03T13:14:47 8230016 16 10 [...].168.1.[...] F2EF7647D3CC4DD4BEBF4F336A3EBBC8
    2024-11-07T22:01:56 8230127 6 10 [...].176.109.[...] F2F49967888B47D6AD9321F42E17E334
    2024-11-04T22:23:21 8230043 5 10 [...].4.92.[...] F305FECABB0E4E808B019D725DD1D2AF
    2024-11-08T16:19:23 8230012 5 10 [...].74.133.[...] F3094C292194409F841665DF24273A7E
    2024-11-18T19:31:15 8220141 16 10 [...].75.104.[...] F324F28D76A845EC8D3A52182A516DEA
    2024-12-20T16:32:25 8190332 13 10 [...].107.113.[...] F347556523934BE3A0B52355C3399F6A
    2024-10-23T12:57:12 8230056 3 10 [...].242.227.[...] F34C3356186142FF94C06004243730AE
    2024-10-18T16:15:56 8230115 2 10 [...].74.118.[...] F34E0D7369D04BC98C79B0F3F5ACB7AD
    2024-11-15T17:43:54 8230245 6 10 [...].103.39.[...] F369AA03281E489C8CC3EB914CAB56E5
    2024-10-17T14:43:57 8220108 8 10 [...].26.22.[...] F37C8881EBB84267AFAFEF668D7BB1A4
    2024-11-28T17:42:07 8200095 12 10 [...].94.189.[...] F3B3FF02E5304E2B8413E27E2D8FAB7E
    2024-10-13T17:56:17 8230245 1 10 [...].177.228.[...] F3EE6C75A4614C7A8B83A74FFA2B8D8C
    2024-11-18T14:01:29 8210226 1 8 [...].138.155.[...] F3EF97B7C2CF458EB6F0895338D528C3
    2024-12-16T17:03:07 8230005 10 10 [...].26.71.[...] F40E0EC0520C4B99B378D22A0E0068C1
    2024-10-14T10:32:05 8230226 1 9 [...].26.50.[...] F4328C45DC584FFD9566B966523BE6DB
    2024-11-04T12:13:58 8220007 9 10 [...].26.43.[...] F4375710B3BD4377B38107422B4FE761
    2024-10-22T18:53:19 8230012 4 10 [...].74.15.[...] F44F176A596A4D69BA2E4CDE90108220
    2024-11-03T17:05:48 8210220 4 10 [...].217.175.[...] F4536F30C094438DAA4D79D211721F8D
    2024-11-18T22:32:22 8230011 16 10 [...].73.122.[...] F4836C6DB969403687E29EF04D9EC173
    2024-12-01T23:48:39 8230022 12 6 [...].140.29.[...] F50CE82CBC764AF58F11676249B474BA
    2024-10-22T19:58:55 8230091 4 10 [...].6.161.[...] F510AE0AA41741C88CD56A16781B81EA
    2024-12-07T14:35:43 8190051 9 10 [...].58.251.[...] F5227D09AC41434F90AFD2BA06ADAFFE
    2024-11-05T16:52:36 8230105 6 10 [...].203.198.[...] F525410CC80F4ECE9648C71C901BF264
    2024-10-29T21:12:14 8230152 4 10 [...].203.166.[...] F53A52FD770C46EB8993E6D61F1E2225
    2024-10-31T20:53:33 8230006 4 10 [...].242.245.[...] F55048E391F348B69471A1D7F54C5A86
    2024-11-11T17:05:23 8230163 6 10 [...].58.192.[...] F551723F108A4B18858966C9BD5AD460
    2024-10-25T03:13:34 8230159 4 10 [...].55.123.[...] F567F354C3CE4B7D9AEA524EC5CA74ED
    2024-12-01T18:47:37 8230164 12 10 [...].177.134.[...] F570E2CDA76B4CCDABEA4594574302A3
    2024-11-18T21:05:25 8230142 6 10 [...].87.25.[...] F5725466C7CA46B8A672B4463F60573F
    2024-10-25T22:05:57 8230220 4 10 [...].71.169.[...] F576AC08E5714528A9A3E409D0867859
    2024-10-11T12:02:59 8220105 4 10 [...].1.100.[...] F597FED5A6094745905608D50B55FF72
    2024-11-30T02:21:52 8230023 12 10 [...].140.88.[...] F5CDCECA5D1543B1AE1973DAA7333338
    2024-10-20T14:58:27 8230069 2 10 [...].86.43.[...] F5DD815C953545EAA5EE59A56026FDC4
    2024-10-17T18:54:35 8230011 2 10 [...].26.25.[...] F64CB9D8DB814787909BE102046598BF
    2024-12-13T13:55:12 8230017 7 10 [...].87.161.[...] F64E2CDFD0CD4EC9B47A23B45CA0D1CC
    2024-10-23T23:49:27 8230099 3 10 [...].75.111.[...] F65447FF2B734F418258A3F1D3F77A46
    2024-12-15T14:15:40 8230030 8 10 [...].131.254.[...] F668BEBF20834B6FBF77D593912920F6
    2024-12-12T23:20:10 8230008 17 10 [...].203.247.[...] F66D05642DF4421DB8C9688C6D4205C8
    2024-11-02T15:51:39 8230033 4 2 [...].4.165.[...] F68B245D3C6148FD9BB797969FB163FA
    2024-10-17T23:12:25 8230105 2 10 [...].6.161.[...] F68F74CFDD274AF4B8286E2AAF7D9458
    2024-12-15T20:19:42 8230017 8 10 [...].87.161.[...] F6F3C7D18EDF43408645741E264B77A7
    2024-11-19T01:22:16 8220036 7 10 [...].86.31.[...] F718BEDD21154C98BFC2F86C802627EF
    2024-11-24T20:36:03 8220071 16 10 [...].74.158.[...] F71AF8450452462EA9E1FA97E996AED2
    2024-12-15T19:12:15 8230074 8 10 [...].237.199.[...] F740B528FB554EE38ABBFC91DECF03E1
    2024-12-01T23:10:36 8230034 12 10 [...].107.85.[...] F74AF98219014F62AEE6FBFED537537A
    2024-11-10T21:05:00 8230167 6 10 [...].86.97.[...] F74F5F97C2444C309FA66376A533BDF1
    2024-12-10T21:09:43 8170068 9 2 [...].203.179.[...] F7645BE977E947B29EB51AF790C134B8
    2024-10-22T23:29:46 8220044 3 10 [...].64.157.[...] F7688B2CF1A446F9BDC4CF3291257EB7
    2024-10-23T21:59:00 8230105 3 10 [...].242.227.[...] F7873A4B4E2D4778B0B7B6B66FEED85A
    2024-11-24T11:44:07 8230050 16 10 [...].242.138.[...] F7AF579A8DC748C29D9FFFD09649563B
    2024-11-10T15:42:32 8230019 6 10 [...].86.152.[...] F7C0A5EA89464343A0013DB5491D629F
    2024-10-19T18:35:41 8220143 2 10 [...].177.17.[...] F7C0C0B351704ABD8A5E6711D5966020
    2024-12-15T23:44:10 8220057 8 6 [...].217.161.[...] F7D7EA9E7A3F44539C3682092F01366E
    2024-11-01T20:11:23 8230078 4 10 [...].178.189.[...] F7DB76574DA9420EB6A0F7EEACAA1371
    2024-12-16T20:09:09 8230059 10 10 [...].6.160.[...] F7F03F7304D64DBBBEE8126AD1785EC3
    2024-11-05T09:45:57 8230013 6 10 [...].26.9.[...] F80B5527BF0D47F98ED966AEAD36C270
    2024-11-21T21:14:19 8230027 16 10 [...].251.124.[...] F8217F9B6E9B4812985C3D04B39BBECA
    2024-12-01T12:00:27 8230065 12 10 [...].74.87.[...] F8485C653E8E48B38D46A77315784039
    2024-12-09T12:10:26 8230139 7 10 [...].26.42.[...] F85CD57B471E482691B47FF47A0B10B9
    2024-10-16T13:17:10 8230126 2 10 [...].86.212.[...] F86CF1359D744E2C953C8B18AF3663EE
    2024-11-21T09:53:10 8230010 16 10 [...].246.197.[...] F876882D2B86496A9375F4EC0EE00B9B
    2024-12-04T19:31:12 8230144 9 10 [...].1.100.[...] F88737F4300041869F8579686FA44A43
    2024-10-25T20:10:45 8230011 4 10 [...].74.48.[...] F88C78DE84664DCD95E521E587E22F29
    2024-10-15T20:18:59 8230066 2 9 [...].74.235.[...] F8AEE752AB744ECFB809DBB9144B7FE6
    2024-10-28T03:52:06 8220211 4 10 [...].168.2.[...] F8CA022B277F40F0AAF4A643ECDB5177
    2024-12-10T21:20:47 8230125 8 10 [...].74.252.[...] F8CA898DFD6944A9B037C43BE05D2976
    2024-10-29T16:10:40 8200117 2 10 [...].92.100.[...] F8CF22B0B0524EF1816F8CB7D8B47502
    2024-11-08T17:20:46 8230001 5 10 [...].4.158.[...] F8D5A37F7FBF4816ABEB0B1B07B98C35
    2024-11-22T02:53:14 8220057 7 10 [...].217.161.[...] F8D9D9026DCD43AE9CB0C4AF3F097707
    2024-12-05T16:20:32 8230107 7 10 [...].14.243.[...] F93669D26507464BB7E9CC958C42C1DF
    2024-12-04T23:28:20 8230126 9 10 [...].74.217.[...] F9A40068D2F54C6B8AC32BA7321DF02B
    2024-11-18T21:37:54 8230154 17 10 [...].167.82.[...] F9BCADE199F04B54A2487890DB053DB9
    2024-12-06T14:02:25 8230104 7 10 [...].251.255.[...] F9D89B2C59DD4983BA2E095AC179F6F3
    2024-11-07T13:14:53 8230033 5 10 [...].43.41.[...] FA0FC8D3D3C4421C869B7530BECDDBCE
    2024-10-21T23:10:30 8230124 4 10 [...].86.31.[...] FA1A35C4BFA54545A0B7870DC8EBB1E6
    2024-11-02T19:25:02 82000464 1 10 [...].177.77.[...] FAB05C699F3E49CCBB8E6ED11327502B
    2024-10-28T12:44:23 8230050 4 10 [...].6.2.[...] FAB7AA03D21A4ED09FF0C10E032F1219
    2024-12-04T00:16:30 8220071 9 9 [...].74.158.[...] FAC9E20EA52449A5BDE6AF908C44B10D
    2024-10-11T15:15:01 8230085 1 9 [...].217.161.[...] FAE3A64EFCE24B84A4040DFD04F6EE3D
    2024-12-03T23:01:34 8230098 9 10 [...].4.69.[...] FB257ED54DA0497297D431466B46DD11
    2024-10-11T15:21:44 8230003 1 10 [...].131.230.[...] FB43E189DDBE42499E9126D35AD833E6
    2024-12-11T18:26:34 8230038 8 7 [...].251.255.[...] FB471F8DE3C943D19574728684B09B97
    2024-12-04T13:47:14 8230132 9 10 [...].26.33.[...] FB731EAABEB6410BAA2AB13D14478EE4
    2024-10-30T15:31:27 8230170 2 8 [...].26.42.[...] FB73DC3C9E5B4A0D8F8AABCF1538208A
    2024-11-24T12:12:42 8230148 16 10 [...].87.72.[...] FB78ADBC5FB648EFB9B2AF49E215BCA3
    2024-12-06T18:32:31 8220105 7 10 [...].4.65.[...] FB90A36DADC24EFB9022E839C277B81A
    2024-12-09T00:23:29 8220057 9 10 [...].217.161.[...] FB9E1730B397489BAC7702D9BD478A98
    2024-11-10T23:11:44 8190333 5 10 [...].168.0.[...] FBA4E043790747709F49645C592AD745
    2024-11-02T17:27:27 8230247 5 10 [...].246.139.[...] FBCFB0ED305D432C95FCBEC367DB22BC
    2024-10-11T14:40:42 8190338 1 10 [...].147.19.[...] FBD8816C18E64F75B8B594D451ADE169
    2024-12-20T14:09:37 8230007 10 10 [...].26.5.[...] FBD9B2495F17404C897216B2C982F589
    2024-12-06T13:47:10 8190271 7 9 [...].217.172.[...] FC08EB2FDF914FE2B2B9EFB340C48996
    2024-12-19T22:03:20 8230039 8 10 [...].69.50.[...] FC10C9CC51444A89AFDDC49EF288B62E
    2024-10-27T23:07:30 8230073 4 10 [...].131.0.[...] FC16EABD54D54587A13AEF49FE714B24
    2024-10-26T19:36:52 8230126 4 10 [...].86.212.[...] FC2FC38DEE114A48B9976307CFC0FF85
    2024-12-12T12:38:03 8230013 8 10 [...].26.9.[...] FC3A63D557FC48F88933C9EBA6B8B2BD
    2024-10-17T20:10:43 8230008 3 10 [...].84.27.[...] FC51D17AC2184F73A8CCB5A2E36EB44D
    2024-10-12T14:04:56 8230135 1 10 [...].140.90.[...] FC9BB08C73E446799B870B1B89E8ACBE
    2024-10-18T13:45:13 8220011 6 10 [...].168.1.[...] FC9D06A6796441F3A7C4BAAFE9D6AC7A
    2024-11-17T01:56:42 8230064 6 10 [...].152.221.[...] FCEC867ECB9746AA9434DAFB289EF098
    2024-11-28T11:35:58 2210175 12 10 [...].26.74.[...] FD28633C87694D879A3EE42EF78D38EF
    2024-12-11T16:56:56 8220011 15 10 [...].168.0.[...] FD574B17E7BD498C81CA96C331892C5F
    2024-12-07T16:13:31 8220025 9 10 [...].177.82.[...] FD8E2DDC7AB24A50A12F2E45316CC082
    2024-12-01T14:34:15 8230156 12 10 [...].43.40.[...] FD901BF3D2FF47E3BEF27C0064D51C75
    2024-12-15T15:34:03 8230142 8 10 [...].74.32.[...] FDB12A45CE8E48209A880F39F011C97F
    2024-10-21T16:05:58 8220046 12 10 [...].26.43.[...] FDC2AECEA8754D60AA96566B83DB1B92
    2024-11-15T16:17:49 8150025 1 8 [...].66.136.[...] FDCFBF1E383A451EAB82B2926BDD7F84
    2024-10-21T23:19:27 8230061 4 10 [...].138.148.[...] FE1B081DAF254F4D9FADFE741E2879E9
    2024-12-05T19:28:24 8190238 11 10 [...].75.58.[...] FE5D09A56B024D0DB23C343BE9864C98
    2024-11-16T12:23:21 8230217 6 10 [...].103.27.[...] FE5F0FD10F3E4D3EB9E64CB4C2D4D786
    2024-12-16T18:57:57 8230078 8 6 [...].130.67.[...] FE7269338A63495E8D71FA91C0C7AB7B
    2024-10-11T18:21:08 8220141 2 10 [...].251.255.[...] FE73209EDA3341A1AECC7C764786BC72
    2024-12-01T00:14:02 8230068 12 10 [...].239.135.[...] FE8B40A4E46C4F69AB40671A57DD16A0
    2024-12-14T21:05:23 8150188 8 10 [...].177.237.[...] FEA17019A4B1491DAAB6ADF397FA3F62
    2024-10-21T20:52:37 8230008 6 10 [...].203.175.[...] FEA795F026054AAFB4CBBFFA11F998D6
    2024-10-20T13:33:11 8190304 13 10 [...].217.176.[...] FEA79779DFFB4647AA72D3E46BC0C493
    2024-10-26T21:34:08 8220114 5 10 [...].242.185.[...] FEBE34C48EF043F1889F43CD1469FCD1
    2024-10-19T18:05:20 8230103 2 10 [...].66.136.[...] FED748FCC481415EB4C9142BE6F94A31
    2024-12-05T12:14:55 8230113 9 10 [...].65.112.[...] FF08D942E3EF41DE930F1D5E0733E763
    2024-12-01T22:32:08 8230124 12 10 [...].86.31.[...] FF0ADC1E27274079ACE9242A17B8F61D
    2024-12-18T13:54:11 8230010 10 10 [...].74.8.[...] FF14341C95B5408299BBB02B9A5F49AA
    2024-11-26T11:06:14 8200066 14 10 [...].168.0.[...] FF2331920FBC46C1BF42F0FC30756800
    2024-12-15T15:32:55 8230145 8 10 [...].84.161.[...] FF246895F53847E2B6E239A2667AFDA4
    2024-10-08T14:04:04 8220108 1 10 [...].26.22.[...] FF33B6B722DB4F898E3AEC7504C0ABE0
    2024-11-18T22:29:25 8190332 7 10 [...].6.72.[...] FF4022C93A4948AEAFEF57280B17262D
    2024-12-16T21:58:01 8220052 8 10 [...].168.0.[...] FF4FECF262A64AB691C8456345F72C37
    2024-10-31T12:55:51 8230150 1 8 [...].92.222.[...] FFA2663C3F344EE2946F668F39B09B48
    2024-10-23T17:27:58 8230060 1 10 [...].28.130.[...] FFB863E39DF249FFA5C011539EF098E0
    2024-11-12T20:11:14 8230067 6 10 [...].177.5.[...] FFBCE590190B4DAEB6C1014ADBD7B2F8
    2024-11-27T06:21:21 8220070 12 6 [...].58.224.[...] FFC2A9A3E83A418BB03907BC4B9F1F8D
    2024-12-08T22:36:13 8220110 7 10 [...].74.160.[...] FFC4AF3686414037B55AACA1321F344D
    2024-12-02T15:34:20 8230092 6 10 [...].26.27.[...] FFD8BD9FAAA6444BAD07604C46DB2A7D

    Βαθμοί ασκήσεων ανά Α.Μ.

    Α.Μ. Βαθμοί ατομικής άσκησης Μ.Ο. ατομικών ασκήσεων που έχουν παραδοθεί Μ.Ο. απαιτούμενων ατομικών ασκήσεων (12) Ομαδικές ασκήσεις
    2210175Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    7220234Α1=10 10.00.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8150025Α1=8 Α2=10 Α3=10 Α5=10 9.53.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8150188Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8160117Α1=10 Α2=10 Α3=10 Α5=10 10.03.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8170017Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8170068Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=2 Α12=10 Α16=10 9.27.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8170204Α1=9 Α2=8 Α3=9 Α4=9 8.82.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190051Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190091Α1=10 Α2=10 Α3=10 Α4=10 Α5=6 Α6=10 Α7=10 Α9=10 Α12=9 Α16=9 9.47.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190238Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=8 Α11=10 Α12=10 Α14=10 Α16=10 9.910.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190271Α1=9 Α2=9 Α3=10 Α4=10 Α5=10 Α6=9 Α7=9 Α8=10 Α9=10 Α10=8 Α12=9 Α16=10 9.49.4 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190273Α1=10 Α2=10 Α3=10 Α4=10 10.03.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190301Α1=10 Α2=10 10.01.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190304Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190332Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α15=10 Α16=10 Α17=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190333Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190338Α1=10 Α2=10 Α3=10 Α4=2 Α5=4 Α6=8 Α7=8 Α8=7 Α9=8 Α10=5 7.26.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190376Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190378Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8190381Α1=9 Α2=9 Α3=8 Α4=10 Α5=7 Α6=9 Α7=9 Α9=9 Α12=6 Α15=10 Α16=9 8.67.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    82000464Α1=10 Α2=10 Α4=10 Α5=8 9.53.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200066Α1=10 Α2=6 Α3=10 Α4=10 Α5=10 Α6=10 Α7=6 Α9=10 Α10=6 Α11=10 Α12=10 Α13=10 Α14=10 Α15=9 Α16=10 9.19.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200095Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α12=10 Α16=10 10.07.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200117Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200152Α1=7 Α2=9 Α4=9 Α5=8 Α6=9 Α7=5 Α8=10 Α11=2 Α16=10 7.75.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200168Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=8 Α7=10 Α8=7 Α9=10 Α12=10 Α15=10 Α16=10 9.49.4 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200171Α1=10 Α2=10 Α3=10 Α4=10 Α5=8 Α6=10 Α7=6 Α8=10 Α9=10 Α10=8 9.27.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8200223Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=9 Α8=10 Α12=10 Α16=10 9.98.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210087Α1=8 Α2=10 Α3=10 Α4=10 Α5=8 Α6=10 Α7=10 Α8=10 Α9=2 Α12=10 Α16=10 8.98.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210111Α1=10 Α2=8 Α6=10 Α8=6 Α12=10 Α16=10 9.04.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210163Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210208Α1=10 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α7=8 Α8=10 Α10=8 Α12=8 Α16=10 9.38.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210219Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210220Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8210226Α1=8 Α5=5 Α11=7 Α12=7 6.82.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220007Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220011Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220014Α1=10 Α2=9 Α4=8 Α5=8 Α6=9 8.83.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220016Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220025Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220029Α4=10 Α6=8 9.01.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220036Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220039Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=8 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220042Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α10=10 Α15=10 Α16=10 Α17=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220044Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220046Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220052Α1=10 Α2=9 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.99.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220053Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220057Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220068Α1=10 Α2=10 10.01.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220070Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=9 Α8=6 Α9=10 Α12=6 Α16=10 9.28.4 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220071Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220085Α1=10 Α2=10 Α4=10 Α5=10 Α6=10 Α8=6 Α9=10 Α12=10 Α16=10 9.67.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220086Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=2 Α12=10 Α16=10 9.07.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220091Α1=10 Α2=9 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.99.1 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220105Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220108Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α16=10 Α17=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220110Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220112Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220114Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220123Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220131Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220136Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=7 Α12=10 Α16=10 9.78.1 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220141Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220142Α1=8 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α16=10 9.710.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220143Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α9=10 Α12=10 Α16=10 10.07.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220145Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α13=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220148Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220149Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220152Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220156Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220169Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220211Α1=10 Α2=10 Α3=10 Α4=10 10.03.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220215Α1=10 Α2=8 Α3=10 Α4=10 Α5=8 Α9=10 Α12=10 9.45.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220221Α1=10 Α2=9 Α4=9 Α5=10 Α6=10 Α7=9 Α8=9 Α9=2 Α10=4 Α11=2 Α13=10 Α15=10 Α17=10 8.08.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220228Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220229Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α10=10 Α12=10 Α16=10 9.79.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220230Α1=9 Α2=9 Α3=10 Α4=9 Α5=9 Α7=9 Α8=10 Α9=10 Α12=6 9.06.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8220231Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230001Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=6 Α16=10 9.18.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230002Α1=9 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 9.98.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230003Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α13=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230005Α1=10 Α2=9 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.99.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230006Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230007Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230008Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 Α17=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230010Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230011Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230012Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230013Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230014Α1=10 Α2=9 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α10=10 Α12=10 Α16=10 9.98.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230016Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230017Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230018Α1=10 Α2=10 Α4=2 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.27.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230019Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=6 Α16=10 9.38.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    823002Α4=10 10.00.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230021Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230022Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=6 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230023Α1=10 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.89.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230024Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230025Α1=9 Α2=5 Α3=10 Α4=10 Α5=6 Α6=8 Α7=9 Α8=10 Α9=10 Α10=10 Α12=9 Α16=9 8.88.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230027Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.89.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230028Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230029Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230030Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230031Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α8=10 Α9=10 Α10=10 Α12=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230033Α1=10 Α2=9 Α3=10 Α4=8 Α5=10 Α6=10 Α8=6 Α9=10 Α10=8 Α12=10 Α16=10 9.28.4 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230034Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230035Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230036Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230037Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230038Α1=10 Α2=2 Α3=0 Α4=10 Α5=10 Α6=8 Α7=10 Α8=7 Α9=0 Α12=10 6.75.6 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230039Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230040Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230042Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230043Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α15=10 Α16=10 9.79.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230044Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230045Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230047Α1=10 Α2=10 Α3=10 Α4=10 Α5=8 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230050Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230052Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230053Α1=9 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=9 9.88.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230055Α1=10 10.00.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230056Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230057Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230058Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230059Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230060Α1=10 Α2=10 10.01.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230061Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230063Α1=10 Α2=10 Α3=10 Α4=7 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=6 Α12=10 Α16=10 9.49.4 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230064Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230065Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230066Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230067Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230068Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230069Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=5 Α8=9 Α9=10 Α12=10 9.47.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230070Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230071Α1=9 Α2=9 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.89.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230072Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230073Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230074Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=2 Α12=10 Α16=10 9.38.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230075Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230076Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=6 Α8=6 Α9=10 Α12=10 Α16=10 9.38.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230077Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230078Α1=6 Α2=9 Α3=9 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=6 Α16=10 8.78.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230079Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230083Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230085Α1=9 Α2=9 Α3=9 Α4=10 Α5=7 Α6=9 Α7=10 Α8=10 Α9=8 Α12=9 Α16=10 9.18.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230086Α1=7 Α2=6 6.51.1 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230088Α1=10 Α2=10 Α7=10 Α8=10 Α9=10 Α10=10 10.05.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230089Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α10=10 Α12=10 Α16=10 9.79.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230091Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230092Α1=10 Α2=10 Α3=0 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 9.07.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230093Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230094Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230097Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230098Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230099Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230100Α1=10 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α8=10 Α9=10 Α12=10 Α16=10 9.88.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230101Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230102Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 9.68.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230103Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230104Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230105Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230106Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230107Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230109Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230111Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230113Α1=9 Α2=8 Α3=9 Α4=10 Α5=9 Α6=8 Α7=8 Α8=6 Α9=10 Α12=6 Α16=8 8.37.6 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230114Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230115Α1=10 Α2=10 Α3=10 Α16=10 10.03.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230116Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230117Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230120Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230122Α1=8 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230123Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230124Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230125Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230126Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α8=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230127Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230129Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230131Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230132Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230134Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α10=10 Α12=10 Α16=10 9.79.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230135Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230136Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230138Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230139Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230142Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230143Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=8 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 9.89.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230144Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230145Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230147Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230148Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230150Α1=8 Α2=10 Α3=10 Α4=8 Α6=10 Α7=10 Α9=10 Α16=10 9.56.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230151Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230152Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230153Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230154Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α15=10 Α16=10 Α17=10 Α18=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230155Α1=10 Α2=9 Α3=10 Α4=8 Α5=10 Α6=10 Α7=8 Α8=10 Α12=10 Α16=10 9.57.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230156Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230157Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230159Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α11=10 Α12=10 Α13=10 Α14=10 Α16=10 Α17=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230160Α1=9 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=9 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230161Α1=10 Α2=10 Α3=10 Α4=10 Α5=7 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 9.78.1 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230163Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α13=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230164Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230165Α1=10 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α7=10 Α12=10 9.86.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230167Α1=10 Α2=10 Α3=0 Α4=8 Α5=10 Α6=10 8.04.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230168Α1=8 Α2=10 Α3=10 Α4=2 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 9.07.5 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230170Α1=10 Α2=8 Α3=10 Α4=10 Α5=10 Α6=10 Α16=10 9.75.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230217Α1=10 Α2=10 Α3=10 Α4=8 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 9.89.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230218Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230220Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230221Α1=8 Α2=9 Α3=9 Α4=10 Α5=8 Α9=10 Α12=10 9.15.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230224Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230226Α1=9 Α2=6 Α6=10 Α16=10 8.82.9 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230227Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α9=10 Α12=10 Α16=10 10.08.3 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230231Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230244Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α12=10 Α16=10 10.09.2 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230245Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=6 Α9=10 Α12=10 Α16=10 9.68.8 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230246Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    8230247Α1=10 Α2=10 Α3=10 Α4=10 Α5=10 Α6=10 Α7=10 Α8=10 Α9=10 Α10=10 Α12=10 Α15=10 Α16=10 10.010.0 Ομ.1=0 Ομ.2=0 Αρχηγός=0
    823143Α1=10 Α2=10 10.01.7 Ομ.1=0 Ομ.2=0 Αρχηγός=0

    Φοιτητές που παραδίδουν ασκήσεις: 225
    Μέσος όρος ατομικής άσκησης για φοιτητές που παραδίδουν ασκήσεις: 9.7
    Ατομικές ασκήσεις με προθεσμία παράδοσης: 12
    Μέσος όρος 12 ατομικών ασκήσεων για φοιτητές που παραδίδουν ασκήσεις: 8.5

    Λάθη στον έλεγχο του βαθμού

    Χρονοσφραγίδα ΑΜ Άσκηση Βαθμός Διεύθυνση IP Αναγνωριστικό
    2024-11-12T22:44:04 8190332 4 10 [...].6.72.[...] 19DB5467C4DE492BB7CEBEDF29AB05F8
    2024-11-12T21:58:00 8190332 1 10 [...].6.72.[...] 1C7BAED2EA364657A163F36694DD9761
    2024-10-09T21:46:46 8220058 12 10 [...].71.169.[...] 3673C15682FA4310B4B3D19E6779209B
    2024-10-07T20:00:29 8220156 1 10 [...].131.12.[...] 434517AEB91C4A6AACB05288C4AD5702
    2024-10-09T17:24:50 8220071 1 10 [...].74.158.[...] 4C73B84870874D36B01312EEC432816E
    2024-11-12T22:35:30 8190332 2 10 [...].6.72.[...] 549D83DA23AF464C86C95B38A2D8E43C
    2024-11-15T03:39:44 8190332 1 10 [...].6.72.[...] 6B101823BC1C4A93AF68100FC63668B7
    2024-11-15T03:43:53 8190332 7 10 [...].6.72.[...] 70922F2FD25E4D68AB7E24042C5486EC
    2024-10-09T23:19:12 8220058 14 10 [...].71.169.[...] 943EBC2470CF448D80C1B49A37DC2803
    2024-11-12T22:39:37 8190332 3 10 [...].6.72.[...] 9C7A85BA40FC4B26BF3426ED4F0EA46C
    2024-11-12T23:25:19 8190332 6 10 [...].6.72.[...] A3FCCF2EB64745DAA7EED62702B7DDCD
    2024-10-07T19:46:25 8220105 1 10 [...].1.100.[...] B3D04887F18547948F4831353181C625
    2024-11-12T23:04:48 8190332 5 10 [...].6.72.[...] B53D1FB68E394E79851603719CBE8F7D
    2024-10-07T19:29:50 8220156 1 10 [...].131.12.[...] FDFCE69787AD482B9A9D34A4D6EBC3FE

    Ενδιαφέρουσα βιβλιογραφία

    Θέματα εξετάσεων

    Πιλοτικά θέματα εξετάσεων

    Τα πιλοτικά θέματα σε μορφή PDF (έκδοση 1.1 - 2004.02.13).

    Για να βρείτε τις σωστές απαντήσεις αρκεί να μεταγλωττίσετε το πρόγραμμα με μερικές εντολές println στο τέλος.

    Εξεταστική περίοδος Φεβρουαρίου 2004

    Μια διατύπωση των θεμάτων σε μορφή PDF.

    Για να βρείτε τις σωστές απαντήσεις αρκεί να μεταγλωττίσετε το πρόγραμμα με μερικές εντολές println στο τέλος.

    Παράδειγμα προγράμματος

    class Exam {
        public static void main(String args[]) {
            int gargoyle = 5;
            int i = 2;
            int dobby = 5;
            while (i < 11) {
                i = i + 4;
                gargoyle = gargoyle + 2;
            }
            for (i = 2; i < 11; i = i + 4)
                dobby = dobby + 2;
            int dockhead = 6;
            try {
                dockhead = 11;
                if (dockhead == 11)
                    throw new Exception();
                dockhead = 21;
            } catch (Exception e) {
                dockhead = 16;
            }
            Ingluvial y = new Ingluvial(2);
            Ingluvial z = new Ingluvial();
            Ingluvial w = y;
            Aneurism x = new Aneurism();
            Ingluvial u = y; Aneurism v = x;
            int toeplate = 11;
            int tubeful = z.m() + 2 * x.m() + 3 * x.t();
            int fenrir = y.naumk;
            toeplate = 20;
            if (w.naumk != y.naumk)
                toeplate += 1;
            else
                toeplate += 10;
            String s = "footful" + "hexameron";
            int unparty = s.substring(1, 13).length();
            int umbelwort = Aneurism.count;
            int arusa = 23;
            Ingluvial r = new Aneurism();
            arusa = r.m();
            int smethe = 25;
            boolean array[] = new boolean[16];
            try {
                if (array[24])
                    smethe = 54;
                else
                    smethe = 44;
            } catch (ArrayIndexOutOfBoundsException e) {
                smethe = 31;
            }
        }
    }
    class Ingluvial {
        public int naumk;
        private char kahan;
        Ingluvial() {naumk = 11; }
        Ingluvial(int v0) { naumk = v0; }
        public int t() { return 1; }
        public int m() { return 37; }
    }
    class Aneurism extends Ingluvial {
        public static int count = 6;
        Aneurism() { count += 6; }
        public int n() { return naumk; }
        public int m() { return 15; }
    }
    

    Μεταβλητές

    Προσοχή

    Τα παραπάνω θέματα μοιάζουν αρκετά με τα πιλοτικά θέματα. Αυτό είναι απίθανο να συμβεί σε επόμενες εξεταστικές περιόδους.

    Εξεταστική περίοδος Σεπτεμβρίου 2005

    Μια διατύπωση των θεμάτων σε μορφή PDF.

    Για να βρείτε τις σωστές απαντήσεις αρκεί να μεταγλωττίσετε το πρόγραμμα με μερικές εντολές println στο τέλος.

    Παράδειγμα προγράμματος

    class Exam {
        static boolean ba[] = new boolean[6];
        public static void main(String args[]) {
            int lunula = 12;
            for (int i = 3; i < 11; i += 1)
                if (i % 3 == 1)
                    lunula = lunula + 2;
            int upglean = upslant(4, 9);
            String s = "alfet";
            s += "ceras" + "alfet";
            int chinaware = (s.substring(1, 8) + s).length();
            int bedstock = 6;
            try {
                bedstock = 10;
                if (bedstock == 10)
                    throw new Exception();
                bedstock = 20;
            } catch (Exception e) {
                bedstock = 15;
            }
            Bitted y = new Bitted(2);
            Bitted z = new Bitted();
            Bitted w = y;
            Samantha x = new Samantha();
            Bitted u = y; Samantha v = x;
            int megachile = 11;
            int powerless = z.m(16) - 2 * x.m(18) - 3 * x.t();
            int peccable = y.kangaroo;
            megachile = 23;
            if (w.kangaroo != y.kangaroo)
                megachile += 2;
            else
                megachile += 12;
            int archwise = Samantha.count;
            int drumming = 26;
            int ai = 0;
            ba[ai++] = false; ba[ai++] = true; ba[ai++] = true;
            ba[ai++] = true; ba[ai++] = true; ba[ai++] = true;
            for (int i = 0; i < ba.length - 1; i++) {
                if (!ba[i]) drumming += 11;
                if (ba[i] || ba[i + 1]) drumming += 9;
                if (ba[i] && ba[i + 1]) drumming -= 3;
            }
            int unhumble = 25;
            Bitted r = new Samantha();
            unhumble = r.m(17);
        }
        private static int upslant(int a, int b) {
            int loc1 = a;
            int loc2 = b;
            return (3 * loc1 + 2 * loc2 * loc2);
        }
    }
    class Bitted {
        public int kangaroo;
        Bitted() {kangaroo = 11; }
        Bitted(int v0) { kangaroo = v0 + 1; }
        public int t() { return 2 * 2; }
        public int m(int v) { return 31 - v; }
    }
    class Samantha extends Bitted {
        public static int count = 5;
        Samantha() { count += 7; }
        public int m(int v) { return v - 13 * 2; }
    }
    

    Μεταβλητές

    Περιεχόμενα