Thema geschlossen
Seite 1 von 3 1 2 3 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: (Erledigt) Treiber für DGE-530T

  1. #1
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard (Erledigt) Treiber für DGE-530T

    erst mal hallo an alle

    bin seit einiger Zeit dabei mich in Linux einzutüfteln und hatte mit der Zeit nen funktionstüchtigen Server mit Samba und Remotefreigabe etc.
    ,von daher bin ich noch absoluter Linux DAU !

    OK... ich bin dabei ne D-link DGE-530T in Suse 10.1 einzubinden

    installiert sind...

    - kernel-source paket
    - cpp pakete
    - make

    desweiteren sind Kernel und kernel source versions identisch

    den Treiber habe ich in /etc/usr/kernel..blablubb(version)
    kopiert und wie in der Anleitung mit "./install.sh" ausgeführt.

    Ich bekomme aber jedesmal nen Compiler Error, zum Glück wird ne umfangreiche Fehler Log-Datei erstellt

    hier der Log...

    +++ Install mode: User
    +++ Driver version: 8.23.1.3 (Jun-20-2005)
    +++ Kernel version 2.6.16.13-4-default
    +++ smp_count=0
    +++ cpu_number=1
    +++ kernel_machine=i686
    +++ Architecture: i386
    +++ Unpack the sources
    +++ ====================================
    +++ tar xfv sk98lin.tar
    2.4/
    2.4/h/
    2.4/h/skdrv1st.h
    2.4/h/skdrv2nd.h
    2.4/Makefile
    2.4/skdim.c
    2.4/skproc.c
    2.4/skge.c
    2.4/sky2.c
    2.4/skethtool.c
    2.6/
    2.6/h/
    2.6/h/skdrv1st.h
    2.6/h/skdrv2nd.h
    2.6/Makefile
    2.6/skdim.c
    2.6/skproc.c
    2.6/skge.c
    2.6/sky2.c
    2.6/skethtool.c
    common/
    common/h/
    common/h/skgesirq.h
    common/h/skgetwsi.h
    common/h/xmac_ii.h
    common/h/sktypes.h
    common/h/skvpd.h
    common/h/skaddr.h
    common/h/skcsum.h
    common/h/skgehw.h
    common/h/skdebug.h
    common/h/lm80.h
    common/h/skrlmt.h
    common/h/sky2le.h
    common/h/sktwsi.h
    common/h/skqueue.h
    common/h/skversion.h
    common/h/skerror.h
    common/h/skgeinit.h
    common/h/sktimer.h
    common/h/skgedrv.h
    common/h/skgepnm2.h
    common/h/skgepnmi.h
    common/h/skgehwt.h
    common/skgesirq.c
    common/skvpd.c
    common/skaddr.c
    common/skcsum.c
    common/sklm80.c
    common/skxmac2.c
    common/sk98lin.htm
    common/sk98lin.txt
    common/skrlmt.c
    common/sky2le.c
    common/sktwsi.c
    common/skqueue.c
    common/sk98lin.4
    common/skgeinit.c
    common/sktimer.c
    common/skgepnmi.c
    common/skgehwt.c
    common/skgemib.c
    misc/
    misc/Kconfig
    misc/Configure.help

    +++ Compile the driver
    +++ ====================================
    make: Entering directory `/usr/src/linux-2.6.16.13-4'

    WARNING: Symbol version dump /usr/src/linux-2.6.16.13-4/Module.symvers
    is missing; modules will have no dependencies and modversions.

    CC [M] /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/skge.o
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/skge.c:294: warning: initialization from incompatible pointer type
    CC [M] /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.o
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.c:351:5: warning: "USE_SYNC_TX_QUEUE" is not defined
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.c:924:5: warning: "USE_SYNC_TX_QUEUE" is not defined
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.c: In function ‘GiveTxBufferToHw’:
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.c:1018: error: dereferencing pointer to incomplete type
    /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.c:2334:5: warning: "USE_SYNC_TX_QUEUE" is not defined
    make[1]: *** [/tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/sky2.o] Fehler 1
    make: *** [_module_/tmp/Sk98IGjQafEQcnDWJFcBAmheR/all] Fehler 2
    make: Leaving directory `/usr/src/linux-2.6.16.13-4'
    +++ Compiler error
    weis nicht mehr weiter... wäre klasse wenn mir wer helfen könnte

    danke

  2. #2
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,459

    Standard AW: Treiber für DGE-530T

    Hallo,

    Diese Karte sollte nativ unterstützt werden. Schonmal probiert die Karte einzurichten und eine Verbindung aufzubauen?

    (Nur um auf Nummer sicher zu gehen, es geht um eine "normale" Netzwerkkarte, oder? keine WLAN? Kann ja sein, daß Du bei der Bezeichnung einen Buchstabendreher oder einen anderen Fehler gemacht hast).

    Wo genau liegen denn Deine Probleme?

    (Bitte kein "geht nicht")

    Greetz,

    RM

    Nachtrag:

    *Ehm* Könnte es sein, daß Du noch ein wenig "Windows-geschädigt" bist?

    (Nach dem Motto "für jede Hardware muss ich doch einen Treiber installieren")

    Wie man beim Start des Kompiliervorgangs sehen kann:

    Code:
    CC [M] /tmp/Sk98IGjQafEQcnDWJFcBAmheR/all/skge.o
    sollte da ein Kernelmodul Namens "skge" gebaut werden.

    Kernelmodule (also das "Produkt" eines erfolgreichen Kompiliervorganges) haben die Dateiendung ".ko", das steht für "Kernel-Object".

    Also müsste der "Treiber" (oder besser das Kernelmodul) für Deine Karte skge.ko heissen, richtig?

    Kernelmodule befinden sich unter Linux gewöhnlich im Ordner /lib/modules/Kernelversion/, aktuell ist das bei SuSE 10.1 die Version 2.6.16-3.4, wobei der Ordner noch einen Zusatz im Namen hat, in meinem Falle "-default"

    Wenn ich diesen Ordner nach skge.ko durchsuche, dann *Überraschung*:

    Code:
    cd /lib/modules/2.6.16.13-4-default/
    
    ls -R | grep -r skge
    skge.ko
    Da haben wir es ja. Könnte es sein, daß Du ein "Problem" lösen willst, daß Du gar nicht hast?

    Die Karte sollte "einfach so" laufen OHNE extra "Treiberinstallation", da sie im Kernel drin ist.

    Was ergibt denn folgender Befehl im laufenden Betrieb?

    Code:
    su
    
    (Passwort)
    
    lsmod | grep -r skge.ko
    Bei mir wird als "Antwort" skge.ko ausgegeben.

    Wenn das bei Dir NICHT der Fall ist, was passiert nach einem (ebenfalls als root) ausgeführten

    Code:
    modprobe skge
    und anschliessender Wiederholung des obigen lsmod-Befehls?
    Geändert von Rain_Maker (01.07.2006 um 14:58 Uhr)
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.4 - 3.3.X-desktop - fluxbox 1.3.2

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

  3. #3
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard AW: Treiber für DGE-530T

    hallo und schon mal danke

    die genaue Bezeichnung ist => D-Link DGE 530T (es handelt sich um ne Gigabit NIC Karte)


    Diese Karte sollte nativ unterstützt werden. Schonmal probiert die Karte einzurichten und eine Verbindung aufzubauen?
    ja hab ich, die Karte wird aber nicht mit der exakten bezeichnung dargestellt, sondern als "D-Link Ethernet Controller" bzw. als Gerätename...
    "eth-bus-pci-0000:00:0c.0" ... was ja soviel heißt wie das der Treiber fehlt und er die Karte nicht richtig erkennt...wenn ich mich täusche, bitte korrigieren ! ... war jedenfalls meine Schlußfolgerung

    *Ehm* Könnte es sein, daß Du noch ein wenig "Windows"-geschädigt bist?

    Wie man beim Start des Kompiliervorgangs sehen kann:


    der start des Kompiliervorgangs findet automatisch statt, und der obere Befehl ist auch in der "install.sh" drin , hab da mal mit "kate" reingeschaut.
    Die LOG Datei die ich oben gepostet habe , wird dann automatisch erstellt


    So und nu das nächste Problem, würde gerne den Code den du gepostet hast ausprobieren...ABER !!! ist kein Witz !!! und ich bin nicht zu doof ne Tastatur zu bedienen !! das "|" funktioniert nicht ?! ... also normal ja "Alt-GR + (<>|) Taste" ... | | | .. funzt bei mir unter suse nicht ?!, grad eben festgestellt ...und ja es ist die deutsche Tastatur Belegung !
    Geändert von Cryo (01.07.2006 um 15:25 Uhr)

  4. #4
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,459

    Standard AW: Treiber für DGE-530T

    Zitat Zitat von Cryo
    hallo und schon mal danke :)

    die genaue Bezeichnung ist => D-Link DGE 530T (es handelt sich um ne Gigabit NIC Karte)




    ja hab ich, die Karte wird aber nicht mit der exakten bezeichnung dargestellt, sondern als "D-Link Ethernet Controller" bzw. als Gerätename...
    "eth-bus-pci-0000:00:0c.0" ... was ja soviel heißt wie das der Treiber fehlt und er die Karte nicht richtig erkennt...wenn ich mich täusche, bitte korrigieren ! ... war jedenfalls meine Schlußfolgerung
    Wahrscheinlich richtig geschlussfolgert, denn:

    http://www.linux-club.de/viewtopic.php?t=61823

    (Sollte die Lösung Deines wirklichen Problems sein *g*)


    :D ..ja das sowieso, als fachinformatiker für"Betriebssystem",-das-irgendwo-aus-Redmond,-Washington-kommt-und-hier-laut-Regeln-nicht-verunglimpft-werden-sollte kisten *gg*
    *Erm* Lese er die Regeln und ändere er seinen originalen Ausdruck bitte ;)

    .. nuja ich will ja meinen horizont erweitern und bin für alternativen immer offen :)
    Sehr gute Einstellung, manche andere Nutzer des "Betriebssystems",-das-irgendwo-aus-Redmond,-Washington-kommt-und-hier-laut-Regeln-nicht-verunglimpft-werden-sollte leben ja leider eher nach dem Motto:

    "Der Durchmesser des Horizonts ist zwar null, aber dann kann ich ihn "Standpunkt" nennen"

    ;)

    So und nu das nächste Problem, würde gerne den Code den du gepostet hast ausprobieren...ABER !!! ist kein Witz !!! und ich bin nicht zu doof ne Tastatur zu bedienen !! das "|" funktioniert nicht ?! ... also normal ja "Alt-GR + (<>|) Taste" ... | | | .. funzt bei mir unter suse nicht ?!, grad eben festgestellt ...und ja es ist die deutsche Tastatur Belegung !
    *Erm* habe ich schon auf die Regeln hingewiesen?

    Neues Problem --> Neuer Thread (oder in dem Falle auch mal die Suchfunktion benutzen, die Suchbegriffe Tastatur oder gar Tastaturtreiber sind da ein "heisser Tipp")

    Greetz,

    RM
    Geändert von Rain_Maker (01.07.2006 um 15:25 Uhr)
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.4 - 3.3.X-desktop - fluxbox 1.3.2

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

  5. #5
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard AW: Treiber für DGE-530T

    so... das Tastatur Problem, konnte ich selbst lösen ... der Logitech Treiber wirkt wunder

    su

    (Passwort)

    lsmod | grep -r skge.ko
    Ergebnis => neuer prompt ... passiert nix

    Wenn das bei Dir NICHT der Fall ist, was passiert nach einem (ebenfalls als root) ausgeführten

    Code:
    modprobe skge

    und anschliessender Wiederholung des obigen lsmod-Befehls?
    ebenfalls nix...neuer prompt, kein Fehler kein gar nix

  6. #6
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard AW: Treiber für DGE-530T

    Wahrscheinlich richtig geschlussfolgert, denn:

    http://www.linux-club.de/viewtopic.php?t=61823

    (Sollte die Lösung Deines wirklichen Problems sein *g*)
    auch probiert ... hat reibungslos geklappt, aber an meinem prob nix geändert

    hab desweiteren mal im yast geschaut unter "manuelle konf der netzwerkkarte" dort steht unter "Modulname" => sky2

  7. #7
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,459

    Standard AW: Treiber für DGE-530T

    Hallo,

    1. Schau zunächst nach, ob das Modul überhaupt existiert (da sein sollte es, es ist im SuSE-Kernel mit dabei). Öffne eine Konsole und dann kanns losgehen.

    Code:
    su
    
    (Passwort)
    
    cd /lib/modules/
    
    ls -R  | grep -r skge
    Es sollte "skge.ko" ausgegeben werden, sonst haben wir ein richtiges Problem.

    2. Nach

    Code:
    su
    
    (Passwort)
    
    modprobe skge
    und anschliessendem

    Code:
    su
    
    (Passwort)
    
    lsmod | grep -r skge
    wird wirklich NICHTS angezeigt?

    Wenn das stimmt, dann wird das Modul wohl nicht geladen, auch nicht von Hand. Komischerweise sieht man keine Fehlermeldung, zumindest in der shell, naja zunächst nicht so wichtig.


    2. Schau Dir den Link aus meinem letzten Posting an.

    Obwohl, vielleicht gibt es sogar eine "Windows-artige", weil graphische (*SCNR*) Lösung.

    Yast --> System --> Editor für /etc/sysconfig-Dateien --> System --> Kernel --> INITRD_MODULES

    Dort trägst Du dann in die Zeile zu den anderen Modulen zusätzlich skge ein und bestätigst die Änderung.

    Anschließend führst Du noch (wieder als root) folgenden Befehl aus.

    Code:
    su
    
    (Passwort)
    
    mkinitrd
    Und zu guter Letzt (auch Windows-like, *SCNR* die 2.) Neustart.

    (Im Prinzip ist das übrigens genau dasselbe, was auch in dem Thread aus linux-club.de vorgeschlagen wird, nur mit etwas anderen Mitteln. Linuxer sind nicht per se "shellsüchtig", aber wenn man eine Weile mit Linux gearbeitet hat, dann merkt man, daß es einfach oft schneller/effektiver geht.)

    Greetz,

    RM

    P.S. Hier gilt wirklich "It's not a Feature it's a Bug", vielleicht ist das mit der nächsten Kernelversion erledigt.

    P.P.S. Das ständige "su (Passwort)" schreibe ich nicht unbedingt für Dich, sondern für Querleser, die weniger Ahnung haben und das hier nacharbeiten müssen.
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.4 - 3.3.X-desktop - fluxbox 1.3.2

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

  8. #8
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard AW: Treiber für DGE-530T

    Zitat:Zitat von Cryo
    auch probiert ... hat reibungslos geklappt, aber an meinem prob nix geändert

    hab desweiteren mal im yast geschaut unter "manuelle konf der netzwerkkarte" dort steht unter "Modulname" => sky2


    OK, dann ändere das (falls möglich) in skge.

    Greetz,

    RM
    ok..an alle die mitlesen BITTE NICHT NACHMACHEN !!!

    also hatte yast2 gestartet (*räusper,räusper* like.. wir wissen schon was gemeint ist) und hab den Modulnamen geändert.
    Ergebnis => (*räusper,räusper* like.. wir wissen schon was gemeint ist) ist yast2 eingefroren und der nächste Start dauert 15min. und alles im Schneckentempo => hab es dann wieder rückgängig gemacht !!! jetzt läuft das System wieder *puhhh*

    ok..weiter gehts

    Code:
    su

    (Passwort)

    cd /lib/modules/

    ls -R | grep -r skge

    Es sollte "skge.ko" ausgegeben werden, sonst haben wir ein richtiges Problem.
    funktioniert ... *haken setz*

    2. Nach

    Code:
    su

    (Passwort)

    modprobe skge

    und anschliessendem

    Code:
    su

    (Passwort)

    lsmod | grep -r skge
    frag mich nicht wieso, aber jetzt funktioniert das !!

    Ausgabe lautet => "skge 33168 0"

    2. Schau Dir den Link aus meinem letzten Posting an.

    Obwohl, vielleicht gibt es sogar eine "Windows-artige", weil graphische (*SCNR*) Lösung.

    Yast --> System --> Editor für /etc/sysconfig-Dateien --> System --> Kernel --> INITRD_MODULES

    Dort trägst Du dann in die Zeile zu den anderen Modulen zusätzlich skge ein und bestätigst die Änderung.

    Anschließend führst Du noch (wieder als root) folgenden Befehl aus.

    Code:
    su

    (Passwort)

    mkinitrd

    Und zu guter Letzt (auch Windows-like, *SCNR* die 2.) Neustart.
    hatte ich schon mit "kate" gemacht find ich bequemer ... funktioniert ebenfalls
    "mkinitrd" ausgeführt => auch alles bestens


    Neustart => Karte funzt immer noch nicht !

    ... hatte gestern sogar, bei kernel.org nen neueren kernel runtergeladen und mit xconfig bearbeitet und dann kompiliert ...hatte geklappt, allerdings fuhr das system dann nicht mehr hoch, hatte aber zum Glück den neuen Kernel im Grub nen eigenen Eintrag gegeben. So konnte ich wenigstens mit dem alten kernel hochfahren.

    Hatte um sicher zu gehen, dann gestern suse 10.1 nochmal komplett neuinstalliert ...also ist wieder nen frisches system und alles nochmal neukonfiguriert ... aber irgendwie muß die karte doch zum laufen zu bewegen sein !!

  9. #9
    Administrator Avatar von Rain_Maker
    Registriert seit
    06.02.2006
    Beiträge
    5,459

    Standard AW: Treiber für DGE-530T

    *Autsch*

    Dann lösch ich das Posting mal besser, irgendwie hat der Yast in der 10.1 (zumindest vor den Online Updates, aber wie hättest du die auch machen sollen) doch noch mehr Macken als man so hört (lahmarschig, absturzgefährdet, weiteres Beispiel haben wir hier erlebt).

    OK weiter im Text.

    Das Modul für die Karte ist jetzt aber immer noch sky2 in der config von yast?

    Hardware:

    lspci (PCI-Geräte anzeigen)

    Netzwerkeinstellungen überprüfen:

    als root:

    ifconfig

    Ausserdem

    cat /etc/resolv.conf (Nameservereinstellungen)

    cat /etc/sysconfig/network/ifcfg-ethXXXXXXXX

    (ab hier solltest Du wissen wie die Karte heisst, wahrscheinlich eth-id-MAX-Adresse)

    Datei vorhanden, wenn ja Name OK?

    cat /etc/sysconfig/network/routes (Gateway-Adresse)

    Das mal zum Anfang, um eine "Fehlkonfiguration" (was ich ja kaum glaube, aber sicher ist sicher) auszuschliessen.

    Greetz,

    RM

    P.S. Kannst Du die Netzwerkkarte löschen und neu anlegen? Wird sie vielleicht jetzt erkannt, da das Kernelmodul nun geladen sein sollte.

    Nachtrag, WICHTIG: Versuche die Karte UNBEDINGT nicht nur über die "default"-Methode mit dem Networkmanager sondern auch mal über die "klassische Methode mit ifup" einzurichten!

    Du hast ja bei Dir 10.1, bei der 10.0 gab es nur die klassische Methode, allerdings ist diese neue Networkmanager-Methode noch ziemlich anfällig, auch wenn ich bisher nur von Problemen mit WLAN-Karten gelesen habe.
    Geändert von Rain_Maker (01.07.2006 um 18:30 Uhr)
    "Programming today is a race between software engineers striving to build better & bigger idiot-proof programs and the Universe trying to produce bigger & better idiots. So far, the Universe is winning." (Rick Cook)

    Dies ist ein _öffentliches_ Supportforum, keinerlei Support per PN, EMail oder Instant Messenger.

    openSUSE 11.4 - 3.3.X-desktop - fluxbox 1.3.2

    For Windows-Problems - Reboot / For Linux-Problems - BE ROOT!
    (==> Und hier das wirkliche "Geheimnis meines Erfolges")

  10. #10
    Newbie
    Registriert seit
    01.07.2006
    Beiträge
    19

    Standard AW: Treiber für DGE-530T

    ja immer noch sky2 , bzw. mal wieder musste ich ja rückgängig machen

    leider komme ich nur bis "ifconfig"

    da wird mir nur "eth0" angezeigt, daß ist meine alte 100 Mbit Karte

    von der DGE-530T , fehlt hier jede Spur !!

    allerdings im yast2 unter netzwerk, werden beide!!! angezeigt die alte (mit der richtigen Bezeichnung) die auch unter ifconfig aufgeführt ist und auch die neue als "D-LINK Ethernet" allerdings wie oben schon gesagt mit der Gerätebezeichnung ""eth-bus-pci-0000:00:0c.0"

    also muß vermtl. doch irgendwie dieser Treiber installiert werden, der heißt übrigens "sk98lin" ... aber wie beim allerersten Post von mir gibt es nen Compiler Error !! obwohl ich die Befehle nicht selbst eingebe , sondern es durch die "install.sh" selbständig ausgeführt wird

    cpp pakete und kernel-source sind ebenfalls installiert


    Nachtrag: achso..neu angelegt habe ich sie gerade eben noch 2x mal ... aber ändern tut sich nix *argh*
    Geändert von Cryo (01.07.2006 um 18:32 Uhr)

Thema geschlossen
Seite 1 von 3 1 2 3 LetzteLetzte

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. (Erledigt) HP scanjet 4890 Treiber
    Von zeno1 im Forum SuSE Treiber
    Antworten: 4
    Letzter Beitrag: 17.07.2006, 13:43

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87