Користувач:Дядько Ігор/Скрипти/Олімпійці

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Скрипт читає із файлу "olymp_list.txt" ім'я спортсмена і посилання на сторінку на sports.reference у вигляді

Андрея Грігоре = http://www.sports-reference.com/olympics/athletes/gr/andreea-grigore-1.html

Код обробки сторінки. Скрипт не обробляє міста й села народження і не вставляє дефолтсорт - це вже самому.

#!/usr/bin/perl 

use strict;
my ($spec1, $p);
my (@Ukraine, @France, @Germany, @Italy, @Romania, @China, @Japan, @Spain, @USA, @Poland, @Russia, 
    @Hungary, @Korea, @GBR, @Canada, @Norway, @NZL, @Estonia, @Australia, @Chehia, @Finland, @BLR, @Denmark, @Holland,
    @Bulgaria, @Croatia, @Uzbekistan, @NKorea, @Jamaica, @Nigeria, @Kenya, @Cuba, @Ephiopia, @Brasil, @Slovenia, @Portugal, @Lithuania, @TT,
    @Morocco, @Belgium, @Cameroon, @Latvia, @Bahamas, @Panama, @SA, @Sudan, @Tunisia, @Switzerland, @Sveden, @Argentina, @Austria, @Algeria,
    @Georgia, @Azerbaijan, @Kazakhstan, @Mongolia, @Tajikistan, @Egypt, @India, @Armenia, @Indonesia, @Vietnam, @Columbia, @Taipei,
    @Mexico, @Kyrgyzstan, @Turkey, @Iran, @Slovakia, @Israel, @Greece, @Singapore, @Afghanistan, @DomRep, @Thailand, @Venezuela, 
    @Serbia, @URS, @DDR, @Tanzania, @Ireland);
my (@Gymnastics, @Fencing, @Archery, @Rowing, @Athletics, @Swimming, @Cycling, @Judo, @Modern_Pentathlon, @Shooting, @Weightlifting,
    @Diving, @Wrestling, @Canoeing, @Sailing, @Equestrianism, @Triathlon, @Softball, @Badminton, @TableTennis, @RhGym, @BeachVolley,
    @Trampolining, @SynchSwim, @Taekwondo, @Volleyball, @Handball, @waterpolo, @Basketball, @Boxing, @Hockey, @Alpski, @Skijump, @Nordcom,
    @Luge, @Bobsleigh, @FigureScating);
my @months;

@Afghanistan  = qw{[[Афганістан]] [[Афганістан|афганський]] [[Афганістан|афганська]] афганські ps [[афганці|афганець]] [[афганці|афганка]]};
@Algeria = qw{[[Алжир]] [[Алжир|алжирський]] [[Алжир|алжирська]] алжирські ar [[алжирці|алжирець]] [[алжирці|алжирка]]};
@Armenia = qw{[[Вірменія]] [[Вірменія|вірменський]] [[Вірменія|вірменська]] вірменські hy [[вірмени|вірменин]] [[вірмени|вірменка]]};
@Argentina = qw{[[Аргентина]] [[Аргентина|аргентинський]] [[Аргентина|аргентинська]] аргентинські es [[аргентинці|аргентинець]] [[аргентинці|аргентинка]]};
@Australia = qw{[[Австралія]] [[Австралія|австралійський]] [[Австралія|австралійська]] австралійські en [[австралійці|австралієць]] [[австралійці|австралійка]]};
@Azerbaijan = qw{[[Азербайджан]] [[Азербайджан|азербайджанський]] [[Азербайджан|азербайджанська]] азербайджанські az [[азербайджанці|азербайджанець]] [[азербайджанці|азербайджанка]]};
@Austria = qw{[[Австрія]] [[Австрія|австрійський]] [[Австрія|австрійська]] австрійські de [[австрійці|австрієць]] [[австрійці|австрійка]]};
@Bahamas = qw([[Багами]] [[Багами|багамський]] [[Багами|багамська]] багамські en [[багамці|багамець]] [[багамці|багамка]]);
@BLR = qw{[[Білорусь]] [[Білорусь|білоруський]] [[Білорусь|білоруська]] білоруські be [[білоруси|білорус]] [[білоруси|білоруска]]};
@Belgium = qw{[[Бельгія]] [[Бельгія|бельгійський]] [[Бельгія|бельгійська]] бельгійські fr [[бельгійці|бельгієць]] [[бельгійці|бельгійка]]};
@Brasil = qw{[[Бразилія]] [[Бразилія|бразильський]] [[Бразилія|бразильська]] бразильські pt [[бразильці|бразилець]] [[базильці|бразилійка]]};
@Bulgaria = qw{[[Болгарія]] [[Болгарія|болгарський]] [[Болгарія|болгарська]] болгарські bg [[болгари|болгарин]] [[болгари|болгарка]]};
@Cameroon = qw{[[Камерун]] [[Камерун|камерунський]] [[Камерун|камерунська]] камерунські fr [[камерунці|камерунець]] [[камерунці|камерунка]]};
@Canada = qw{[[Канада]] [[Канада|канадський]] [[Канада|канадська]] канадські en [[канадці|канадець]] [[канадці|канадка]]}; 
@Chehia = qw{[[Чехія]] [[Чехія|чеський]] [[Чехія|чеська]] чеські cz [[чехи|чех]] [[чехи|чешка]]};
@China = qw{[[КНР]] [[КНР|китайський]] [[КНР|китайська]] китайські cn [[китайці|китаєць]] [[китайці|китаянка]]};
@Columbia = qw{[[Колумбія]] [[Колумбія|колумбійський]] [[Колумбія|колумбійська]] колумбійські es [[колумбійці|колумбієць]] [[колумбійці|колумбійка]]};
@Croatia = qw{[[Хорватія]] [[Хорватія|хорватський]] [[Хорватія|хорватська]] хорватські hr [[хорвати|хорват]] [[Хорвати|хорватка]]};
@Cuba = qw{[[Куба]] [[Куба|кубинський]] [[Куба|кубинська]] кубинські es [[кубинці|кубинець]] [[кубинці|кубинка]]};
@DDR = qw{[[НДР]] [[Німеччина|німецький]] [[Німеччина|німецька]] німецькі de [[німці|німець]] [[німці|німкеня]]};
@Denmark = qw{[[Данія]] [[Данія|данський]] [[Данія|данська]] данські da [[данці|данець]] [[данці|данка]]};
@DomRep = qw{[[Домініканська_республіка]] [[Домініканська_республіка|домініканський]] [[Домініканська_республіка|домініканська]] домініканські es [[домініканці_(народ)|домініканець]] [[домініканці_(народ)|домініканка]]};
@Egypt = qw{[[Єгипет]] [[Єгипет|єгипетський]] [[Єгипет|єгипетська]] єгипетські ar [[єгиптяни|єгиптянин]] [[єгиптяни|єгиптянка]]};
@Ephiopia = qw{[[Ефіопія]] [[Ефіопія|ефіопський]] [[Ефіопія|ефіопська]] ефіопські en [[ефіопці|ефіоп]] [[ефіопці|ефіопка]]};
@Estonia = qw{[[Естонія]] [[Естонія|естонський]] [[Естонія|естонська]] естонські et [[естонці|естонець]] [[естонці|естонка]]};
@Finland = qw{[[Фінляндія]] [[Фінляндія|фінський]] [[Фінляндія|фінська]] фінські fi [[фіни|фін]] [[фіни|фінка]]};
@France = qw{[[Франція]] [[Франція|французький]] [[Франція|французька]] французькі fr [[французи|француз]] [[французи|французка]]};
@Georgia = qw{[[Грузія]] [[Грузія|грузинський]] [[Грузія|грузинська]] грузинські ka [[грузини|грузин]] [[грузини|грузинка]]};
@Germany = qw{[[Німеччина]] [[Німеччина|німецький]] [[Німеччина|німецька]] німецькі de [[німці|німець]] [[німці|німкеня]]};
@GBR = qw{[[Велика_Британія]] [[Велика_Британія|британський]] [[Велика_Британія|британська]] британські en [[британці|британець]] [[Британці|британка]]};
@Greece = qw{[[Греція]] [[Греція|грецький]] [[Греція|грецька]] грецькі el [[греки|грек]] [[греки|грекиня]]};
@Holland = qw{[[Нідерланди]] [[Нідерланди|нідерландський]] [[Нідерланди|нідерландська]] нідерландські nl [[нідерландці|нідерландець]] [[нідерландці|нідерландка]]}; 
@Hungary = qw{[[Угорщина]] [[Угорщина|угорський]] [[Угорщина|угорська]] угорські hu [[угорці|угорець]] [[угорці|угорка]]};
@India = qw{[[Індія]] [[Індія|індійський]] [[Індія|індійська]] індійські en [[індійці|індійєць]] [[індійці|індійка]]};
@Indonesia = qw{[[Індонезія]] [[Індонезія|індонезійський]] [[Індонезія|індонезійська]] індонезійські id [[індонезійці|індонезієць]] [[індонезійські|індонезійка]]};
@Ireland = qw{[[Ірландія]] [[Ірландія|ірландський]] [[Ірландія|ірландська]] ірландські en [[ірландці|ірландець]] [[ірладці|ірландка]]};
@Iran = qw{[[Іран]] [[Іран|іранський]] [[Іран|іранська]] іранські fa [[іранці|іранець]] [[іранці|іранка]]};
@Israel = qw{[[Ізраїль]] [[Ізраїль|ізраїльський]] [[Ізраїль|ізраїльська]] ізраїльські he [[ізраїльтяни|ізряїльтянин]] [[ізраїльтяни|ізраїльтянка]]};
@Italy = qw{[[Італія]] [[Італія|італійський]] [[Італія|італійська]] італійські it [[італійці|італієць]] [[італійці|італійка]]};
@Jamaica = qw{[[Ямайка]] [[Ямайка|ямайський]] [[Ямайка|ямайська]] ямайські en [[ямайці|ямаєць]] [[ямайці|ямайка]]};
@Japan = qw{[[Японія]] [[Японія|японський]] [[Японія|японська]] японські ja [[японці|японець]] [[японці|японка]]};
@Kazakhstan = qw{[[Казахстан]] [[Казахстан|казахський]] [[Казахстан|кахахська]] казахські kk [[казахи|казах]] [[казахи|казашка]]};
@Kenya = qw{[[Кенія]] [[Кенія|кенійський]] [[Кенія|кенійська]] кенійські en [[кенійці|кенієць]] [[кенійці|кенійка]]};
@Korea = qw{[[Південна_Корея]] [[Південна_Корея|корейський]] [[Південна_Корея|корейська]] корейські ko [[корейці|кореєць]] [[корейці|кореянка]]};
@Kyrgyzstan = qw{[[Киргизстан]] [[Киргизстан|киргизький]] [[Киргизстан|киргизька]] киргизькі ky [[киргизи|киргиз]] [[киргизи|киргизка]]};
@Latvia = qw{[[Латвія]] [[Латвія|латвійський]] [[Латвія|латвійська]] латвійські lv [[латвійці|латвієць]] [[латвійці|латвійка]]};
@Lithuania = qw{[[Литва]] [[Литва|литовський]] [[Литва|литовська]] литовські lt [[литовці|литовець]] [[литовці|литовка]]};
@Mexico = qw{[[Мексика]] [[Мексика|мексиканський]] [[Мексика|мексиканська]] мексиканські es [[мексиканці|мексиканець]] [[мексиканці|мексиканка]]};
@Mongolia = qw{[[Монголія]] [[Монголія|монгольський]] [[Монголія|монгольська]] монгольські mn [[монголи|монгол]] [[монголи|монголка]]};
@Morocco = qw{[[Марокко]] [[Марокко|марокканський]] [[Марокко|марокканська]] марокканські ar [[марокканці|марокканець]] [[марокканці|марокканка]]};
@NZL = qw{[[Нова_Зеландія]] [[Нова_Зеландія|новозеландський]] [[Нова_Зеландія|новозеландська]] новозеландські en [[новозеландці|новозеландець]] [[новозеландці|новозеландка]]};
@Nigeria = qw{[[Нігерія]] [[Нігерія|нігерійський]] [[Нігерія|нігерійська]] нігерійські en [[нігерійці|нігерієць]] [[нігерійці|нігерійка]]};
@NKorea = qw{[[Північна_Корея]] [[Північна_Корея|корейський]] [[Північна_Корея|корейська]] північнокорейські ko [[корейці|кореєць]] [[корейці|кореєць]]};
@Norway = qw{[[Норвегія]] [[Норвегія|норвезький]] [[Норвегія|норвезька]] норвезькі no [[норвежці|норвежець]] [[норвежці|норвежка]]};
@Panama = qw{[[Панама]] [[Панама|панамський]] [[Панама|панамська]] панамські es [[панамці|панамець]] [[панамці|панамка]]};
@Poland = qw{[[Польща]] [[Польща|польський]] [[Польща|польська]] польські pl [[поляки|поляк]] [[поляки|полька]]};
@Portugal = qw{[[Португалія]] [[Португалія|португальський]] [[Португалія|португальська]] португальські pt [[португальці|португалець]] [[португальці|португалка]]};
@Romania = qw{[[Румунія]] [[Румунія|румунський]] [[Румунія|румунська]] румунські ro [[румуни|румун]] [[румуни|румунка]]};
@Russia = qw{[[Росія]] [[Росія|російський]] [[Росія|російська]] російські ru [[росіяни|росіянин]] [[росіяни|росіянка]]};
@Serbia = qw{[[Сербія]] [[Сербія|сербський]] [[Сербія|сербська]] сербські sr [[серби|серб]] [[серби|сербка]]};
@Singapore = qw{[[Сінгапур]] [[сінгапур]]ський [[сінгапур]]ська сінгапурські en [[сінгапурці|сінгапурець]] [[сінгапурці|сінгапурка]]};
@Slovakia = qw{[[Словаччина]] [[словаччина|словацький]] [[Словаччина|словацька]] словацькі sk [[словаки|словак]] [[словаки|словачка]]};
@Slovenia = qw{[[Словенія]] [[Словенія|словенський]] [[Словенія|словенська]] словенські sl [[словенці|словенець]] [[словенці|словенка]]};
@SA = qw{[[Південна_Африка]] [[Південна_Африка|південноафриканський]] [[Південна_Африка|південноафриканська]] південноафриканські en [[південноафриканці|південноафриканець]] [[південноафриканці|південноафриканка]]};
@Spain = qw{[[Іспанія]] [[Іспанія|іспанський]] [[Іспанія|іспанська]] іспанські es [[іспанці|іспанець]] [[іспанці|іспанка]]};
@Sudan = qw{[[Судан]] [[Судан|суданський]] [[Судан|суданська]] суданські ar [[суданці|суданець]] [[суданці|суданка]]};
@Sveden = qw([[Швеція]] [[Швеція|шведський]] [[Швеція|шведська]] шведські sv [[шведи|швед]] [[шведи|шведка]]);
@Switzerland = qw{[[Швейцарія]] [[Швейцарія|швейцарський]] [[Швейцарія|швейцарська]] швейцарські de [[Швейцарці|швейцарець]] [[швейцарці|швейцарка]]};
@Taipei = qw{[[Республіка_Китай|Тайвань]] [[Республіка_Китай|тайваньський]] [[Республіка_Китай|тайваньська]] тайванські cn [[тайванці|тайванець]] [[тайванці|тайванка]]};
@Tajikistan = qw{[[Таджикистан]] [[Таджикистан|таджицький]] [[Таджикистан|таджицька]] таджицькі tg [[таджики|таджик]] [[таджики|таджичка]]};
@Thailand = qw{[[Таїланд]] [[таїланд]]ський [[таїланд]]ська таїландські th [[таїландці|таїландець]] [[таїландці|таїландка]]};
@TT = qw{[[Тринідад_і_Тобаго]] [[Тринідад_і_Тобаго|тринідадський]] [[Тринідад_і_Тобаго|тринідадська]] тринідадські en [[тринідадці|тринідадець]] [[тринідадці|тринідадка]] };
@Tanzania = qw{[[Танзанія]] [[Танзанія|танзанійський]] [[Танзанія|танзанійська]] танзанійський en [[танзанійці|танзанієць]] [[танзанійці|танзанійка]]};
@Tunisia = qw{[[Туніс]] [[Туніс|туніський]] [[Туніс|туніська]] туніські ar [[тунісці|тунісець]] [[тунісці|туніска]]};
@Turkey = qw{[[Туреччина]] [[Туреччина|турецький]] [[Туреччина|турецька]] турецькі tr [[турки|турок]] [[турки|туркеня]]};
@Ukraine = qw{[[Україна]] [[Україна|український]] [[Україна|українська]] українські uk [[українці|українець]] [[українці|українка]]};
@Venezuela = qw{[[Венесуела]] [[Венесуела|венесуельський]] [[Венесуела|венесуелська]] венесуельські es [[венесуельці|венесуелець]] [[венесуельці|венесуелка]]};
@Vietnam = qw{[[В'єтнам]] [[В'єтнам|в'єтнамський]] [[В'єтнам|в'єтнамська]] в'єтнамські vi [[в'єтнамці|в'єтнамець]] [[в'єтнамці|в'єтнамка]]};
@URS = qw{[[СРСР]] [[СРСР|радянський]] [[СРСР|радянська]] радянські ru [[росіяни|росіянин]] [[росіяни|росіянка]]};
@USA = qw{[[США]] [[США|американський]] [[США|американська]] американські en [[США]] [[США]]};
@Uzbekistan = qw{[[Узбекистан]] [[Узбекистан|узбецький]] [[Узбекистан|узбецька]] узбецькі uz [[узбеки|узбек]] [[узбеки|узбечка]]};

@Gymnastics = qw{[[Спортивна_гімнастика|гімнастика]] [[Спортивна_гімнастика|гімнаст]] [[Спортивна_гімнастика|гімнастка]] гімнасти};
@Fencing = qw{[[фехтування]] [[фехтування|фехтувальник]] [[фехтування|фехтувальниця]] фехтувальники};
@Archery = qw{[[стрільба_з_лука]] [[стрільба_з_лука|лучник]] [[стрільба_з_лука|лучниця]] лучники};
@Rowing = qw{[[академічне_веслування]] [[академічне_веслування|веслувальник]] [[академічне_веслування|веслувальниця]] академічні_веслувальники};
@Athletics = qw{[[легка_атлетика]] [[легка_атлетика|легкоатлет]] [[легка_атлетика|легкоатлетка]] легкоатлети};
@Swimming = qw{[[Спортивне_плавання|Плавання]] [[Спортивне_плавання|плавець]] [[Спортивне_плавання|плавчиня]] плавці};
@Cycling = qw{[[Велоспорт]] [[велоспорт|велогонщик]] [[велоспорт|велогонщиця]] велогонщики};
@Judo = qw{[[дзюдо]] [[дзюдо|дзюдоїст]] [[дзюдо|дзюдоїстка]] дзюдоїсти};
@Modern_Pentathlon = qw{[[сучасне_п'ятиборство]] [[сучасне_п'ятиборство|сучасний_п'ятиборець]] [[сучасне_п'ятиборство|сучасна_п'ятиборка]] п'ятиборці};
@Shooting = qw{[[стрілецький_спорт]] [[стрілецький_спорт|стрілець]] [[стрілецький_спорт|стрілець]] стрільці};
@Weightlifting = qw{[[важка_атлетика]] [[важка_атлетика|важкоатлет]] [[важка_атлетика|важкоатлетка]] важкоатлети};
@Diving = qw{[[Стрибки_у_воду]] [[Стрибки_у_воду|стрибун_у_воду]] [[Стрибки_у_воду|стрибунка_у_воду]] стрибуни_у_воду};
@Wrestling = qw{[[Боротьба_(спорт)|боротьба]] [[Боротьба_(спорт)|борець]] [[Боротьба_(спорт)|борчиня]] борці};
@Canoeing = qw{[[Веслування_на_байдарках_і_каное]] веслувальник веслувальниця веслувальники_на_байдарках_і_каное};
@Sailing = qw{[[вітрильний_спорт]] [[вітрильний_спорт|яхтсмен]] [[вітрильний_спорт|яхтсменка]] яхтсмени};
@Equestrianism = qw{[[кінний_спорт]] [[кінний_спорт|вершник]] [[кінний_спорт|вершниця]] вершники};
@Triathlon = qw{[[тріатлон]] [[тріатлон]]іст [[тріатлон]]істка тріатлоністи};
@Softball = qw{[[софтбол]] [[софтбол]]іст [[софтбол]]істка софтболісти};
@Badminton = qw{[[бадмінтон]] [[бадмінтон]]іст [[бадмінтон]]істка бадмінтоністи};
@TableTennis = qw{[[настільний_теніс]] [[настільний_теніс|настільний_тенісист]] [[настільний_теніс|настільна_тенісистка]] настільні_тенісисти};
@RhGym = qw{[[художня_гімнастика]] [[Художня_гімнастика|гімнаст]] [[Художня_гімнастика|гімнастка]] гімнасти};
@BeachVolley = qw{[[пляжний_волейбол]] [[пляжний_волейбол|пляжний_волейболіст]] [[пляжний_волейбол|пляжна_волейболістка]] пляжні_волейболісти};
@Trampolining = qw{[[стрибки_на_батуті]] [[стрибки_на_батуті|стрибун_на_батуті]] [[стрибки_на_батуті|стрибунка_на_батуті]] стрибуни_на_батуті};
@SynchSwim = qw{[[синхронне_плавання]] [[синхронне_плавання|спортсмен]] [[синхронне_плавання|спортсменка,_спеціалістка_з_синхронного_плавання]] синхронні_плавці};
@Taekwondo = qw{[[тхеквондо]] [[тхеквондо|тхеквондист]] [[тхеквондо|тхеквондистка]] тхеквондисти};
@Volleyball = qw{[[волейбол]] [[волейбол]]іст [[волейбол]]істка волейболісти};
@Handball = qw{[[гандбол]] [[гандбол]]іст [[гандболіст]]ка гандболісти};
@waterpolo = qw{[[водне_поло]] [[водне_поло|ватерполіст]] [[водне_поло|ватерполістка]] ватерполісти};
@Basketball = qw{[[баскетбол]] [[баскетбол]]іст [[баскетбол]]істка баскетболісти};
@Boxing = qw{[[бокс]] [[бокс]]ер [[бокс]]ерка боксери};
@Hockey = qw{[[хокей_на_траві]] [[хокей_на_траві|хокеїст_на_траві]] [[хокей_на_траві|хокеїстка_на_траві]] хокеїсти_на_траві};
@Alpski = qw{[[гірськолижний_спорт]] [[гірськолижний_спорт|гірськолижник]] [[гірськолижний_спорт|гірськолижниця]] гірськолижники};
@Skijump = qw{[[стрибки_з_трампліна]] [[стрибки_з_трампліна|стрибун_з_трампліна]] [[стрибки_з_трампліна|стрибунка_з_трампліна]] стрибуни_з_трампліна};
@Nordcom = qw{[[лижне_двоборство]] [[лижне_двоборство|лижний_двоборець]] [[лижне_двоборство|лижна_двоборка]] лижні_двоборці};
@Luge = qw{[[санний_спорт]] [[санний_спорт|саночник]] [[санний_спорт|саночниця]] саночники};
@Bobsleigh = qw{[[бобслей]] [[бобслей|бобслеїст]] [[бобслей|бобслеїстка]] бобслеїсти};
@FigureScating = qw{[[фігурне_катання]] [[фігурне_катання|фігурист]] [[фігурне_катання|фігуристка]] фігуристи};

@months = qw{січня лютого березня квітня травня червня липня серпня вересня жовтня листопада грудня};

sub generate_page
{
our (@lines, @results, @medals);
my ($month, $year, $day, $born, $bplace, $birth_date);
my (@land, @Seport);
my ($sport, $country);
my ($spec, $i,  $i_block, $ir, $mn);
my ($ename, $uname, $orig_name, $full_name, $langname);
my ($height, $weight, $gender, $affiliations);
my ($spec, $page, $url, $source);
my ($category_champ, $place);
my ($achiv, $achiv0, $achivm, $achivc, $event);
my ($qual, $land_adj);
my ($PB, $highest_rating, $paralympic, $olympic, $national, $regional, $world, $coaches, $retired, $coach, $pro, $team, $national_team, $student_team,
  $nationality, $image, $sign, $nick, $dwelling, $death_date, $death_place, $web, $discipline);
our ($medalist, $champion, $im);
my ($category_nation, $nat);

$spec = $_[0];

sub process_block 
{
  my ($games, $disc, $n);
  $n = $_[0]; 

  $lines[$n+1] =~ m/">(.*)<\/a>/;
  $games = $1;
    $games =~ s/1896 Summer/[[Літні Олімпійські ігри 1896|Афіни 1896]]/;  
    $games =~ s/1900 Summer/[[Літні Олімпійські ігри 1900|Париж 1900]]/;  
    $games =~ s/1904 Summer/[[Літні Олімпійські ігри 1904|Сент-Луїс 1904]]/;  
    $games =~ s/1908 Summer/[[Літні Олімпійські ігри 1908|Лондон 1908]]/;  
    $games =~ s/1912 Summer/[[Літні Олімпійські ігри 1912|Стокгольм 1912]]/;  
    $games =~ s/1920 Summer/[[Літні Олімпійські ігри 1920|Антверпен 1920]]/;  
    $games =~ s/1924 Summer/[[Літні Олімпійські ігри 1924|Париж 1924]]/;  
    $games =~ s/1928 Summer/[[Літні Олімпійські ігри 1928|Амстердам 1928]]/;  
    $games =~ s/1932 Summer/[[Літні Олімпійські ігри 1932|Лос-Анджелес 1932]]/;  
    $games =~ s/1936 Summer/[[Літні Олімпійські ігри 1936|Берлін 1936]]/;  
    $games =~ s/1948 Summer/[[Літні Олімпійські ігри 1948|Лондон 1948]]/;  
    $games =~ s/1952 Summer/[[Літні Олімпійські ігри 1952|Гельсінкі 1952]]/;  
    $games =~ s/1956 Summer/[[Літні Олімпійські ігри 1956|Мельбурн 1956]]/;  
    $games =~ s/1960 Summer/[[Літні Олімпійські ігри 1960|Рим 1960]]/;  
    $games =~ s/1964 Summer/[[Літні Олімпійські ігри 1964|Токіо 1964]]/;  
    $games =~ s/1968 Summer/[[Літні Олімпійські ігри 1968|Мехіко 1968]]/;  
    $games =~ s/1972 Summer/[[Літні Олімпійські ігри 1972|Мюнхен 1972]]/;  
    $games =~ s/1976 Summer/[[Літні Олімпійські ігри 1976|Монреаль 1976]]/;  
    $games =~ s/1980 Summer/[[Літні Олімпійські ігри 1980|Москва 1980]]/;  
    $games =~ s/1984 Summer/[[Літні Олімпійські ігри 1984|Лос-Анджелес 1984]]/; 
    $games =~ s/1988 Summer/[[Літні Олімпійські ігри 1988|Сеул 1988]]/; 
    $games =~ s/1992 Summer/[[Літні Олімпійські ігри 1992|Барселона 1992]]/; 
    $games =~ s/1996 Summer/[[Літні Олімпійські ігри 1996|Атланта 1996]]/;
    $games =~ s/2000 Summer/[[Літні Олімпійські ігри 2000|Сідней 2000]]/;
    $games =~ s/2004 Summer/[[Літні Олімпійські ігри 2004|Афіни 2004]]/;
    $games =~ s/2008 Summer/[[Літні Олімпійські ігри 2008|Пекін 2008]]/;
    $games =~ s/2012 Summer/[[Літні Олімпійські ігри 2012|Лондон 2012]]/;
    
    $games =~ s/1948 Winter/[[Зимові Олімпійські ігри 1948|Санкт-Моріц 1948]]/;
    $games =~ s/1952 Winter/[[Зимові Олімпійські ігри 1952|Осло 1952]]/;
    $games =~ s/1956 Winter/[[Зимові Олімпійські ігри 1956|Кортіна д'Ампеццо 1956]]/;
    $games =~ s/1960 Winter/[[Зимові Олімпійські ігри 1960|Скво-Веллі 1960]]/;
    $games =~ s/1964 Winter/[[Зимові Олімпійські ігри 1964|Інсбрук 1964]]/;
    $games =~ s/1968 Winter/[[Зимові Олімпійські ігри 1968|Гренобль 1968]]/;
    $games =~ s/1972 Winter/[[Зимові Олімпійські ігри 1972|Саппоро 1972]]/;
    $games =~ s/1976 Winter/[[Зимові Олімпійські ігри 1976|Інсбрук 1976]]/;
    $games =~ s/1980 Winter/[[Зимові Олімпійські ігри 1980|Лейк-Плесід 1980]]/;
    $games =~ s/1984 Winter/[[Зимові Олімпійські ігри 1984|Сараєво 1984]]/;
    $games =~ s/1988 Winter/[[Зимові Олімпійські ігри 1988|Калгарі 1988]]/;
    $games =~ s/1992 Winter/[[Зимові Олімпійські ігри 1992|Альбервіль 1992]]/;
    $games =~ s/1994 Winter/[[Зимові Олімпійські ігри 1994|Ліллехаммер 1994]]/;
    $games =~ s/1998 Winter/[[Зимові Олімпійські ігри 1998|Нагано 1998]]/;
    $games =~ s/2002 Winter/[[Зимові Олімпійські ігри 2002|Солт-Лейк-Сіті 2002]]/;
    $games =~ s/2006 Winter/[[Зимові Олімпійські ігри 2006|Турин 2006]]/;
    $games =~ s/2010 Winter/[[Зимові Олімпійські ігри 2010|Ванкувер 2010]]/; 

  $lines[$n+5] =~ m/l">(.*)<\/a>/; 
  $disc = $1; 

    $disc =~ s/Men's Extra-Lightweight/надлегка категорія/;
    $disc =~ s/Women's Extra-Lightweight/надлегка категорія/;
    $disc =~ s/Men's Half-Lightweight/напівлегка категорія/;
    $disc =~ s/Women's Half-Lightweight/напівлегка категорія/;
    $disc =~ s/Men's Lightweight/легка категорія/;
    $disc =~ s/Women's Lightweight/легка категорія/;
    $disc =~ s/Men's Half-Middleweight/напівсередня категорія/;
    $disc =~ s/Women's Half-Middleweight/напівсередня категорія/;
    $disc =~ s/Men's Middleweight/середня категорія/;
    $disc =~ s/Women's Middleweight/середня категорія/;
    $disc =~ s/Men's Half-Heavyweight/напівважка категорія/;
    $disc =~ s/Women's Half-Heavyweight/напівважка категорія/;
    $disc =~ s/Men's Heavyweight/важка категорія/;
    $disc =~ s/Women's Heavyweight/важка категорія/;
    $disc =~ s/Men's Middle-Heavyweight/середня важка категорія/;
    $disc =~ s/Women's Middle-Heavyweight/середня важка категорія/;
    $disc =~ s/Men's Super-Heavyweight/надважка категорія/;
    $disc =~ s/Women's Super-Heavyweight/надважка категорія/;



    $disc =~ s/Men's Road Race, Individual/особиста шосейна гонка/;
    $disc =~ s/Women's Road Race, Individual/особиста шосейна гонка/;
    $disc =~ s/Men's Individual Time Trial/шосейна гонка з роздільним стартом/;
    $disc =~ s/Women's Individual Time Trial/шосейна гонка з роздільним стартом/;
    $disc =~ s/Men's 1,000 metres Time Trial/гіт 1000 метрів/;
    $disc =~ s/Women's 500 metres Time Trial/гіт 500 метрів/;
    $disc =~ s/Men's Keirin/[[кейрін]]/;
    $disc =~ s/Women's Keirin/[[кейрін]]/;
    $disc =~ s/Men's Sprint/спринт/;
    $disc =~ s/Women's Sprint/спринт/;
    $disc =~ s/Men's Team Sprint/командний спринт/;
    $disc =~ s/Women's Team Sprint/командний спринт/;
    $disc =~ s/Men's Mountainbike, Cross-Country/[[гірський велоспорт|гірський велосипед]], крос/;
    $disc =~ s/Women's Mountainbike, Cross-Country/[[гірський велоспорт|гірський велосипед]], крос/;
    $disc =~ s/Men's BMX/[[BMX]]/;
    $disc =~ s/Women's BMX/[[BMX]]/;
    $disc =~ s/Men's Points Race/[[Очкова гонка]]/;
    $disc =~ s/Women's Points Race/[[Очкова гонка]]/;
    $disc =~ s/Men's Madison/[[медісон (велоспорт)|Медісон]]/;
    $disc =~ s/Women's Madison/[[медісон (велоспорт)|Медісон]]/;
    $disc =~ s/Men's Individual Pursuit, 4,000 metres/[[Індивідуальна гонка переслідування, 4000 метрів]]/;
    $disc =~ s/Men's Team Pursuit, 4,000 metres/[[Командна гонка переслідування, 4000 метрів]]/;
    $disc =~ s/Women's Individual Pursuit, 3,000 metres/[[Індивідуальна гонка переслідування, 3000 метрів]]/;
    $disc =~ s/Women's Team Pursuit, 3,000 metres/[[Командна гонка переслідування, 3000 метрів]]/;


    $disc =~ s/Men\'s 4 × 100 metres Freestyle Relay/[[естафета 4 × 100 вільним стилем]]/;
    $disc =~ s/Women\'s 4 × 100 metres Freestyle Relay/[[естафета 4 × 100 вільним стилем]]/;
    $disc =~ s/Men\'s 4 × 100 metres Medley Relay/[[комплексна естафета 4 × 100]]/;
    $disc =~ s/Women\'s 4 × 100 metres Medley Relay/[[комплексна естафета 4 × 100]]/;
    $disc =~ s/Men\'s 4 × 200 metres Freestyle Relay/[[естафета 4 × 200 вільним стилем]]/;
    $disc =~ s/Women\'s 4 × 200 metres Freestyle Relay/[[естафета 4 × 200 вільним стилем]]/;
    $disc =~ s/Men\'s 50 metres Freestyle/[[плавання на 50 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 50 metres Freestyle/[[плавання на 50 метрів вільним стилем]]/;
    $disc =~ s/Men\'s 100 metres Freestyle/[[плавання на 100 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 100 metres Freestyle/[[плавання на 100 метрів вільним стилем]]/;
    $disc =~ s/Men\'s 200 metres Freestyle/[[плавання на 200 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 200 metres Freestyle/[[плавання на 200 метрів вільним стилем]]/;
    $disc =~ s/Men\'s 400 metres Freestyle/[[плавання на 400 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 400 metres Freestyle/[[плавання на 400 метрів вільним стилем]]/;
    $disc =~ s/Men\'s 800 metres Freestyle/[[плавання на 800 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 800 metres Freestyle/[[плавання на 800 метрів вільним стилем]]/;
    $disc =~ s/Men\'s 1,500 metres Freestyle/[[плавання на 1500 метрів вільним стилем]]/;
    $disc =~ s/Women\'s 1,500 metres Freestyle/[[плавання на 1500 метрів вільним стилем]]/;


    $disc =~ s/Men\'s 100 metres Butterfly/[[плавання на 100 метрів, батерфляй]]/;
    $disc =~ s/Women\'s 100 metres Butterfly/[[плавання на 100 метрів, батерфляй]]/;
    $disc =~ s/Men\'s 200 metres Butterfly/[[плавання на 200 метрів, батерфляй]]/;
    $disc =~ s/Women\'s 200 metres Butterfly/[[плавання на 200 метрів, батерфляй]]/;

    $disc =~ s/Men\'s 100 metres Breaststroke/[[плавання на 100 метрів брасом]]/;
    $disc =~ s/Women\'s 100 metres Breaststroke/[[плавання на 100 метрів брасом]]/;
    $disc =~ s/Men\'s 200 metres Breaststroke/[[плавання на 200 метрів брасом]]/;
    $disc =~ s/Women\'s 200 metres Breaststroke/[[плавання на 200 метрів брасом]]/;

    $disc =~ s/Men\'s 100 metres Backstroke/[[плавання на 100 метрів на спині]]/;
    $disc =~ s/Women\'s 100 metres Backstroke/[[плавання на 100 метрів на спині]]/;
    $disc =~ s/Men\'s 200 metres Backstroke/[[плавання на 200 метрів на спині]]/;
    $disc =~ s/Women\'s 200 metres Backstroke/[[плавання на 200 метрів на спині]]/;

    $disc =~ s/Men\'s 400 metres Individual Medley/[[400 метрів, комплексне плавання]]/;
    $disc =~ s/Women\'s 400 metres Individual Medley/[[400 метрів, комплексне плавання]]/;
    $disc =~ s/Men\'s 200 metres Individual Medley/[[200 метрів, комплексне плавання]]/;
    $disc =~ s/Women\'s 200 metres Individual Medley/[[200 метрів, комплексне плавання]]/;


    $disc =~ s/Men\'s Individual All-Around/абсолютний залік/;
    $disc =~ s/Men\'s Team All-Around/командний залік/;
    $disc =~ s/Men\'s Floor Exercise/вільні вправи/;
    $disc =~ s/Men\'s Horse Vault/опорний стрибок/;
    $disc =~ s/Men\'s Parallel Bars/паралельні бруси/;
    $disc =~ s/Men\'s Horizontal Bar/перекладина/;
    $disc =~ s/Men\'s Rings/кільця/;
    $disc =~ s/Men\'s Pommelled Horse/кінь/; 
    $disc =~ s/Women's Floor Exercise/вільні врави/;
    $disc =~ s/Women's Horse Vault/опорний стрибок/;
    $disc =~ s/Women's Uneven Bars/різновисокі бруси/;
    $disc =~ s/Women's Balance Beam/колода/;
    $disc =~ s/Women's Individual All-Around/абсолютний залік/;
    $disc =~ s/Women's Team All-Around/командний залік/;
    $disc =~ s/Men\'s Épée\, Team/[[шпага]], командні/;
    $disc =~ s/Men\'s Épée\, Individual/[[шпага]], особисті/;
    $disc =~ s/Men\'s Foil\, Team/[[рапіра]], командні/;
    $disc =~ s/Men\'s Foil\, Individual/[[рапіра]], особисті/;
    $disc =~ s/Men\'s Sabre\, Team/[[шабля]], командні/;
    $disc =~ s/Men\'s Sabre\, Individual/шабля, особисті/;
    $disc =~ s/Women\'s Épée\, Team/[[шпага]], командні/;
    $disc =~ s/Women\'s Épée\, Individual/[[шпага]], особисті/;
    $disc =~ s/Women\'s Foil\, Team/[[рапіра]], командні/;
    $disc =~ s/Women\'s Foil\, Individual/[[рапіра]], особисті/;
    $disc =~ s/Women\'s Sabre\, Team/[[шабля]], командні/;
    $disc =~ s/Women\'s Sabre\, Individual/шабля, особисті/;

    $disc =~ s/Men\'s Coxed Fours/четвірка розстібна зі стерновим/;
    $disc =~ s/Men\'s Coxless Fours/четвірка розстібна без стернового/;
    $disc =~ s/Men\'s Coxless Pairs/двійка розстібна без стернового/;
    $disc =~ s/Men\'s Coxed Pairs/двійка розстібна зі стерновим/;
    $disc =~ s/Men\'s Coxed Eights/вісімка розстібна зі стерновим/;
    $disc =~ s/Men\'s Coxless Eights/вісімка розстібна без стернового/;

    $disc =~ s/Men\'s Single Sculls/одиночка/;  
    $disc =~ s/Men\'s Quadruple Sculls/четвірка парна/;
    $disc =~ s/Men\'s Double Sculls/двійка парна/;
    $disc =~ s/Men\'s Lightweight Coxless Fours/легка четвірка розстібна без стернового/;
    $disc =~ s/Men\'s Lightweight Double Sculls/легка двійка парна/;

    $disc =~ s/Women\'s Coxed Fours/четвірка розстібна зі стерновим/;
    $disc =~ s/Women\'s Coxless Fours/четвірка розстібна без стернового/;
    $disc =~ s/Women\'s Coxless Pairs/двійка розстібна без стернового/;
    $disc =~ s/Women\'s Coxed Pairs/двійка розстібна зі стерновим/;
    $disc =~ s/Women\'s Coxed Eights/вісімка розстібна зі стерновим/;
    $disc =~ s/Women\'s Coxless Eights/вісімка розстібна без стернового/;
   
    $disc =~ s/Women\'s Single Sculls/одиночка/;  
    $disc =~ s/Women\'s Quadruple Sculls/четвірка парна/;
    $disc =~ s/Women\'s Double Sculls/двійка парна/;
    $disc =~ s/Women\'s Lightweight Coxless Fours/легка четвірка розстібна без стернового/;
    $disc =~ s/Women\'s Lightweight Double Sculls/легка двійка парна/;
    
    $disc =~ s/Women\'s Individual/особисті/;
    $disc =~ s/Men\'s Individual/особисті/;
    $disc =~ s/Women\'s Team/командні/;
    $disc =~ s/Men\'s Team/командні/;

    $disc =~ s/Men's 110 metres Hurdles/[[біг на 110 метрів з бар'єрами]]/; 
    $disc =~ s/Women's 110 metres Hurdles/[[біг на 110 метрів з бар'єрами]]/;
    $disc =~ s/Men's 400 metres Hurdles/[[біг на 400 метрів з бар'єрами]]/; 
    $disc =~ s/Women's 400 metres Hurdles/[[біг на 400 метрів з бар'єрами]]/;    
    $disc =~ s/Men's 100 metres/[[біг на 100 метрів]]/;
    $disc =~ s/Women's 100 metres/[[біг на 100 метрів]]/; 
    $disc =~ s/Men's 200 metres/[[біг на 200 метрів]]/;
    $disc =~ s/Women's 200 metres/[[біг на 200 метрів]]/;  
    $disc =~ s/Men's 400 metres/[[біг на 400 метрів]]/;
    $disc =~ s/Women's 400 metres/[[біг на 400 метрів]]/; 
    $disc =~ s/Men's 800 metres/[[біг на 800 метрів]]/;
    $disc =~ s/Women's 800 metres/[[біг на 800 метрів]]/; 
    $disc =~ s/Men's 1,500 metres/[[біг на 1500 метрів]]/;
    $disc =~ s/Women's 1,500 metres/[[біг на 1500 метрів]]/; 
    $disc =~ s/Men's 5,000 metres/[[біг на 5000 метрів]]/;
    $disc =~ s/Women's 5,000 metres/[[біг на 5000 метрів]]/;  
    $disc =~ s/Men's 10,000 metres/[[біг на 10 000 метрів]]/;
    $disc =~ s/Women's 10,000 metres/[[біг на 10 000 метрів]]/;   
    $disc =~ s/Men's 4 × 100 metres Relay/естафета 4 x 100 метрів/;
    $disc =~ s/Women's 4 × 100 metres Relay/естафета 4 x 100 метрів/;  
    $disc =~ s/Men's 4 × 400 metres Relay/естафета 4 x 400 метрів/;
    $disc =~ s/Women's 4 × 400 metres Relay/естафета 4 x 400 метрів/;
    $disc =~ s/Men's Shot Put/[[штовхання ядра]]/;
    $disc =~ s/Women's Shot Put/[[штовхання ядра]]/;
    $disc =~ s/Men's Decathlon/[[десятиборство]]/; 
    $disc =~ s/Women's Heptathlon/[[десятиборство]]/; 
    $disc =~ s/Women's Pole Vault/[[стрибки з жердиною]]/;
    $disc =~ s/Men's Pole Vault/[[стрибки з жердиною]]/; 
    $disc =~ s/Women's Discus Throw/[[метання диска]]/;
    $disc =~ s/Men's Discus Throw/[[метання диска]]/; 
    $disc =~ s/Women's Javelin Throw/[[метання списа]]/;
    $disc =~ s/Men's Javelin Throw/[[метання списа]]/; 
    $disc =~ s/Women's Hammer Throw/[[метання молота]]/;
    $disc =~ s/Men's Hammer Throw/[[метання молота]]/; 
    $disc =~ s/Women's High Jump/[[стрибки у висоту]]/;
    $disc =~ s/Men's High Jump/[[стрибки у висоту]]/; 
    $disc =~ s/Women's 20 kilometres Walk/[[ходьба на 20 км]]/;
    $disc =~ s/Men's 20 kilometres Walk/[[ходьба на 20 км]]/; 
    $disc =~ s/Women's 3,000 metres Steeplechase/[[стиплчез]]/;
    $disc =~ s/Men's 3,000 metres Steeplechase/[[стиплчез]]/; 
    $disc =~ s/Women's 50 kilometres Walk/[[ходьба на 50 км]]/;
    $disc =~ s/Men's 50 kilometres Walk/[[ходьба на 50 км]]/; 

    $disc =~ s/Women's Long Jump/[[стрибки у довжину]]/;
    $disc =~ s/Men's Long Jump/[[стрибки у довжину]]/;
    $disc =~ s/Women's Triple Jump/[[потрійний стрибок]]/;
    $disc =~ s/Men's Triple Jump/[[потрійний стрибок]]/; 
    $disc =~ s/Women's Marathon/[[марафонський біг]]/;
    $disc =~ s/Men's Marathon/[[марафонський біг]]/; 
  
    $disc =~ s/Men's Skeet/[[круглий стенд]]/;
    $disc =~ s/Women's Skeet/[[круглий стенд]]/;
    $disc =~ s/Men's Double Trap/[[дубль-трап]]/;
    $disc =~ s/Women's Double Trap/[[дубль-трап]]/;
    $disc =~ s/Men's Trap/[[траншейний стенд]]/;
    $disc =~ s/Women's Trap/[[траншейний стенд]]/;
    $disc =~ s/Men's Small-Bore Rifle, Prone, 50 metres/дрібнокаліберна гвинтівка, 50 м, лежачи/;
    $disc =~ s/Women's Small-Bore Rifle, Prone, 50 metres/дрібнокаліберна гвинтівка, 50 м, лежачи/;
    $disc =~ s/Men's Small-Bore Rifle, Three Positions, 50 metres/дрібнокаліберна гвинтівка, 50 м, три положення/;
    $disc =~ s/Women's Small-Bore Rifle, Three Positions, 50 metres/дрібнокаліберна гвинтівка, 50 м, три положення/;
    $disc =~ s/Men's Air Rifle, 10 metres/пневматична гвинтівка, 10 м/;
    $disc =~ s/Women's Air Rifle, 10 metres/пневматична гвинтівка, 10 м/;
    $disc =~ s/Men's Air Pistol, 10 metres/пневматичний пістолет, 10 м/;
    $disc =~ s/Women's Air Pistol, 10 metres/пневматичний пістолет, 10 м/;
    $disc =~ s/Men's Free Pistol, 50 metres/довільний пістолет, 50 м/;
    $disc =~ s/Women's Free Pistol, 50 metres/довільний пістолет, 50 м/;
    $disc =~ s/Women's Sporting Pistol, 25 metres/спортивний пістолет, 25 м/;
    $disc =~ s/Men's Free Pistol, 50 metres/довільний пістолет, 50 м/;
    $disc =~ s/Men's Rapid-Fire Pistol, 25 metres/швидкострільний пістолет, 25 м/;

    $disc =~ s/Men's Platform/вишка/;
    $disc =~ s/Women's Platform/вишка /;
    $disc =~ s/Men's Springboard/трамплін/;
    $disc =~ s/Women's Springboard/трамплін/;
    $disc =~ s/Men's Synchronized Platform/синхронні стрибки з вишки/;
    $disc =~ s/Women's Synchronized Platform/синхронні стрибки з вишки/;
    $disc =~ s/Men's Synchronized Springboard/синхронні стрибки з трамліна/;
    $disc =~ s/Women's Synchronized Springboard/синхронні стрибки з вишки з трамліна/;

    $disc =~ s/Men's Kayak Singles, 500 metres/байдарка, 500 метрів/;
    $disc =~ s/Women's Kayak Singles, 500 metres/байдарка, 500 метрів/;
    $disc =~ s/Men's Kayak Singles, 1,000 metres/байдарка, 1000 метрів/;
    $disc =~ s/Women's Kayak Singles, 1,000 metres/байдарка, 1000 метрів/;
    $disc =~ s/Men's Kayak Doubles, 500 metres/байдарка-двійка, 500 метрів/;
    $disc =~ s/Women's Kayak Doubles, 500 metres/байдарка-двійка, 500 метрів/;
    $disc =~ s/Men's Kayak Doubles, 1,000 metres/байдарка-двійка, 1000 метрів/;
    $disc =~ s/Women's Kayak Doubles, 1,000 metres/байдарка-двійка, 1000 метрів/;
    $disc =~ s/Men's Kayak Fours, 500 metres/байдарка-четвірка, 500 метрів/;
    $disc =~ s/Women's Kayak Fours, 500 metres/байдарка-четвірка, 500 метрів/;
    $disc =~ s/Men's Kayak Fours, 1,000 metres/байдарка-четвірка, 1000 метрів/;
    $disc =~ s/Women's Kayak Fours, 1,000 metres/байдарка-четвірка, 1000 метрів/;
    $disc =~ s/Men's Canadian Singles, 500 metres/каное-одиночка, 500 метрів/;
    $disc =~ s/Women's Canadian Singles, 500 metres/каное-одиночка, 500 метрів/;
    $disc =~ s/Men's Canadian Singles, 1,000 metres/каное-одиночка, 1000 метрів/;
    $disc =~ s/Women's Canadian Singles, 1,000 metres/каное-одиночка, 1000 метрів/;
    $disc =~ s/Men's Canadian Doubles, 500 metres/каное-двійка, 500 метрів/;
    $disc =~ s/Women's Canadian Doubles, 500 metres/каное-двійка, 500 метрів/;
    $disc =~ s/Men's Canadian Doubles, 1,000 metres/каное-двійка, 1000 метрів/;
    $disc =~ s/Women's Canadian Doubles, 1,000 metres/каное-двійка, 1000 метрів/;

    $disc =~ s/Men's Canadian Doubles, Slalom/каное-двійка, слалом/;
    $disc =~ s/Women's Canadian Doubles, Slalom/каное-двійка, слалом/;

    $disc =~ s/Men's Windsurfer/віндсерфинг/;
    $disc =~ s/Women's Windsurfer/віндсерфинг/;
    $disc =~ s/Men's One Person Dinghy/Лазер/;
    $disc =~ s/Women's One Person Dinghy/Лазер/;
    $disc =~ s/Mixed One Person Dinghy/Фін/;
    $disc =~ s/Mixed Multihull/Торнадо/;
    $disc =~ s/Men's Two Person Dinghy/Клас 470/;
    $disc =~ s/Women's Two Person Dinghy/Клас 470/;
    $disc =~ s/Women's Three Person Keelboat/Інглінг/;
    $disc =~ s/Men's Two Person Keelboat/Зоряний/;
    $disc =~ s/Mixed Skiff/Клас [[49er]]/;

    $disc =~ s/Mixed Dressage, Individual/виїздка, особисті/;
    $disc =~ s/Mixed Dressage, Team/виїздка, командні/;
    $disc =~ s/Mixed Three-Day Event, Individual/триборство, особисті/;
    $disc =~ s/Mixed Three-Day Event, Team/триборство, командні/;
    $disc =~ s/Mixed Jumping, Individual/конкур, особисті/;
    $disc =~ s/Mixed Jumping, Team/конкур, командні/;

    $disc =~ s/Men's Olympic Distance/олімпійська дистанція/;
    $disc =~ s/Women's Olympic Distance/олімпійська дистанція/;
    $disc =~ s/Women's Softball/софтбол/;

    $disc =~ s/Men's Singles/одиночний розряд/;
    $disc =~ s/Women's Singles/одиночний розряд/;
    $disc =~ s/Men's Doubles/парний розряд/;
    $disc =~ s/Women's Doubles/парний розряд/;
    $disc =~ s/Mixed Doubles/мікст/;

    $disc =~ s/Women's Group/групові/;

    $disc =~ s/Men's Beach Volleyball/пляжний волейбол/;
    $disc =~ s/Women's Beach Volleyball/пляжний волейбол/;
    $disc =~ s/Women's Duet/дует/;
    $disc =~ s/Men's Volleyball/волейбол/;
    $disc =~ s/Women's Volleyball/ волейбол/;
    $disc =~ s/Men's Handball/гандбол/;
    $disc =~ s/Women's Handball/ гандбол/;
    $disc =~ s/Men's Water Polo/водне поло/;
    $disc =~ s/Women's Water Polo/водне поло/;
    $disc =~ s/Men's Basketball/баскетбол/;
    $disc =~ s/Women's Basketball/баскетбол/;
 
    $disc =~ s/Men's Light-Flyweight/ до 48 кг/;
    $disc =~ s/Men's Flyweight/ до 51 кг/;
    $disc =~ s/Men's Bantamweight/ до 54 кг/;
    $disc =~ s/Men's Featherweight/ до 57 кг/;
    $disc =~ s/Men's Lightweight/ до 57 кг/;
    $disc =~ s/Men's Hockey/хокей на траві/;
    
    $disc =~ s/Men's Slalom/слалом/;
    $disc =~ s/Men's Giant Slalom/гігантський слалом/;
    $disc =~ s/Men's Downhill/швидкісний спуск/;
    $disc =~ s/Men's Super G/супергігантський слалом/;
    $disc =~ s/Men's Combined/гірськолижна комбінація/;


    $disc =~ s/Women's Slalom/слалом/;
    $disc =~ s/Women's Giant Slalom/гігантський слалом/;
    $disc =~ s/Women's Downhill/швидкісний спуск/;
    $disc =~ s/Women's Super G/супергігантський слалом/;
    $disc =~ s/Women's Combined/гірськолижна комбінація/;

    $disc =~ s/Men's Normal Hill, Individual/інд., норм. трамплін/;
    $disc =~ s/Men's Large Hill, Individual/інд., великий трамплін/;
    $disc =~ s/Men's Normal Hill, Team/ком., норм. трамплін/;
    $disc =~ s/Men's Large Hill, Team/ком., великий трамплін/;

    $disc =~ s/Men's Four/четвірка/;
    $disc =~ s/Men's Two/двійка/;

  $lines[$n+8] =~ m/">(.*)<\/td>/;
  $place = $1;
  $place =~ s/QR/(кваліфікація)/;
  $place =~ s/^\s+//;
  $place =~ s/\s+$//; 
  $medals[$im++] = "\n{{MedalBronze|$games| $disc}}" if (($place eq "3") || ($place eq "AC (3)") || ($place eq "3T"));
  $medalist = "yes" if (($place eq "3") || ($place eq "AC (3)") || ($place eq "3T"));;
  $medals[$im++] = "\n{{MedalSilver|$games| $disc}}" if ( ($place eq "2") || ($place eq "AC (2)") );
  $medalist = "yes" if ( ($place eq "2") || ($place eq "AC (2)") );
  $medals[$im++] = "\n{{MedalGold|$games| $disc}}" if ( ($place eq "1") || ($place eq "AC (1)"));
  $champion = "yes" if ( ($place eq "1") || ($place eq "AC (1)"));  

  return "|$games || $disc || $place \n|-\n"; 
}

$spec =~ s/\n//;

($uname, $url) = split(/=/, $spec); 
$url =~ s/^\s+//;

$source = `curl $url`;
#print "Got the page\n";
$orig_name = "";

undef(@lines);
@lines = split(/\n/, $source); 

for ($i = 0; $i < @lines; $i++) 
{
 if ($lines[$i] =~ m/content\=\"(.*) Biography and Olympic Results/) {$ename = $1;};
 if ($lines[$i] =~ m/<h1>(.*)<\/h1>/)
  {
   $ename = $1;
  }
 if ($lines[$i] =~ m/<strong>Full name:<\/strong>(.*)/) {$full_name = $1;};
 if ($lines[$i] =~ m/<strong>Original name:<\/strong>(.*)/) {$orig_name = $1;};
 if ($lines[$i] =~ m/<strong>Gender:<\/strong>(.*)/) {$gender = $1;};
 if ($lines[$i] =~ m/<strong>Height:<\/strong>(.*)/) {$height = $1;};
 if ($lines[$i] =~ m/<strong>Weight:<\/strong>(.*)/) {$weight = $1;};
 if ($lines[$i] =~ m/<strong>Born:<\/strong>(.*)/) {$born = $1;};
 if ($lines[$i] =~ m/<strong>Affiliations:<\/strong>(.*)/) {$affiliations = $1;};
 if ($lines[$i] =~ m/<strong>Country:<\/strong>(.*)/) {$country = $1;};
 if ($lines[$i] =~ m/<strong>Sport:<\/strong>(.*)/) {$sport = $1;};
 if ($lines[$i] =~ m/<h2 style="">Results<\/h2>/) {
   $i_block = $i +21;
  
  undef(@medals);
  @medals[0] = "{{MedalOlympic}}";
  $im = 1;
  $medalist = "no";
  $champion = "no";
  
  undef @results;
  do 
   {
#     print "$lines[$i_block]\n";
     my $s = process_block($i_block);
     push @results, $s;
     $i_block += 12;
   } until ( ($lines[$i_block] =~ m/<\/tbody>/) || $i_block > 3000);
   }
}


$born =~ m/day=(.*?)\"/;
$day = $1;

$born =~ m/month=(.*?)\&/;
$mn = $1 -1;
$month = $months[$mn];

$born =~ m/\, (.*?) in/;
$year = $1;
$year =~ s/\<\/span\>//;

$born =~ m/in(.*)>(.*)<\/a>/;
$bplace = $2; 

$birth_date ="[[$day $month]] [[$year]]";
#print "$uname\n";
#print "$url\n"; 
#print "Name = $ename\n";
#print "Full name = $full_name\n";
#print "Original name = $orig_name\n"; 
#print "Gender = $gender\n"; 
#print "Height = $height\n";
#print "Weight = $weight\n";
#print "Born = $birth_date, $bplace\n";
#print "Affiliations = $affiliations\n";
$country =~ m/\">(.*?)<\/a>/;
$country = $1; 
$country =~ m/\">(.*)/;
$country = $1;
  @land = @Ukraine if $country =~ m/Ukraine/; 
  @land = @France if $country =~ m/France/;
  @land = @Italy if $country =~ m/Italy/; 
  @land = @Romania if $country =~ m/Romania/;
  @land = @Japan if $country =~ m/Japan/; 
  @land = @Germany if $country =~ m/Germany/; 
  @land = @Spain if $country =~ m/Spain/; 
  @land = @USA if $country =~ m/United States/; 
  @land = @Poland if $country =~ m/Poland/; 
  @land = @Russia if $country =~ m/Russia/; 
  @land = @China if $country =~ m/China/;
  @land = @Hungary if $country =~ m/Hungary/; 
  @land = @Korea if $country =~ m/South Korea/; 
  @land = @NKorea if $country =~ m/North Korea/; 
  @land = @GBR if $country =~ m/Great Britain/;  
  @land = @Canada if $country =~ m/Canada/;
  @land = @Norway if $country =~ m/Norway/;
  @land = @NZL if $country =~ m/New Zealand/; 
  @land = @Estonia if $country =~ m/Estonia/;
  @land = @Australia if $country =~ m/Australia/; 
  @land = @Chehia if $country =~ m/Czech Republic/;
  @land = @Finland  if $country =~ m/Finland/;
  @land = @BLR  if $country =~ m/Belarus/;
  @land = @Denmark  if $country =~ m/Denmark/;   
  @land = @Holland  if $country =~ m/Netherlands/;  
  @land = @Bulgaria  if $country =~ m/Bulgaria/; 
  @land = @Croatia  if $country =~ m/Croatia/;   
  @land = @Uzbekistan  if $country =~ m/Uzbekistan/;          
  @land = @Jamaica  if $country =~ m/Jamaica/;      
  @land = @Nigeria  if $country =~ m/Nigeria/;  
  @land = @Kenya  if $country =~ m/Kenya/;  
  @land = @Cuba  if $country =~ m/Cuba/;  
  @land = @Ephiopia  if $country =~ m/Ethiopia/;  
  @land = @Brasil  if $country =~ m/Brazil/;  
  @land = @Slovenia  if $country =~ m/Slovenia/;
  @land = @Portugal  if $country =~ m/Portugal/;
  @land = @Lithuania  if $country =~ m/Lithuania/;
  @land = @TT  if $country =~ m/Trinidad and Tobago/;
  @land = @Morocco  if $country =~ m/Morocco/;
  @land = @Belgium  if $country =~ m/Belgium/;
  @land = @Cameroon  if $country =~ m/Cameroon/;
  @land = @Latvia  if $country =~ m/Latvia/;
  @land = @Bahamas  if $country =~ m/Bahamas/;
  @land = @Panama  if $country =~ m/Panama/;
  @land = @SA  if $country =~ m/South Africa/;
  @land = @Sudan  if $country =~ m/Sudan/;
  @land = @Tunisia  if $country =~ m/Tunisia/;
  @land = @Switzerland  if $country =~ m/Switzerland/;
  @land = @Sveden  if $country =~ m/Sweden/;
  @land = @Argentina  if $country =~ m/Argentina/;
  @land = @Austria  if $country =~ m/Austria/;
  @land = @Algeria  if $country =~ m/Algeria/;
  @land = @Georgia  if $country =~ m/Georgia/;
  @land = @Azerbaijan  if $country =~ m/Azerbaijan/;
  @land = @Kazakhstan  if $country =~ m/Kazakhstan/;
  @land = @Mongolia  if $country =~ m/Mongolia/; 
  @land = @Tajikistan  if $country =~ m/Tajikistan/; 
  @land = @Egypt  if $country =~ m/Egypt/; 
  @land = @India  if $country =~ m/India/;  
  @land = @Armenia  if $country =~ m/Armenia/;  
  @land = @Indonesia  if $country =~ m/Indonesia/;  
  @land = @Vietnam  if $country =~ m/Vietnam/;   
  @land = @Columbia  if $country =~ m/Colombia/;   
  @land = @Taipei  if $country =~ m/Chinese Taipei/;   
  @land = @Mexico  if $country =~ m/Mexico/; 
  @land = @Kyrgyzstan  if $country =~ m/Kyrgyzstan/; 
  @land = @Turkey  if $country =~ m/Turkey/;  
  @land = @Iran  if $country =~ m/Iran/;    
  @land = @Slovakia  if $country =~ m/Slovakia/;    
  @land = @Israel  if $country =~ m/Israel/;    
  @land = @Greece  if $country =~ m/Greece/;   
  @land = @Singapore  if $country =~ m/Singapore/; 
  @land = @Afghanistan  if $country =~ m/Afghanistan/;     
  @land = @DomRep  if $country =~ m/Dominican Republic/;      
  @land = @Thailand  if $country =~ m/Thailand/;      
  @land = @Venezuela  if $country =~ m/Venezuela/; 
  @land = @Serbia  if $country =~ m/Serbia/; 
  @land = @URS  if $country =~ m/Soviet Union/;     
  @land = @DDR  if $country =~ m/East Germany/;     
  @land = @Tanzania  if $country =~ m/Tanzania/;  
  @land = @Ireland  if $country =~ m/Ireland/;     

#print "Country = $country\n";
$sport =~ m/\">(.*)<\/a>/;
$sport = $1; 
  @Seport = @Basketball if $sport =~ m/Basketball/;
  @Seport = @Volleyball if $sport =~ m/Volleyball/;
  @Seport = @RhGym if $sport =~ m/Rhythmic Gymnastics/;
  @Seport = @Gymnastics if $sport =~ m/Gymnastics/;
  @Seport = @Fencing if $sport =~ m/Fencing/;
  @Seport = @Archery if $sport =~ m/Archery/;
  @Seport = @Rowing if $sport =~ m/Rowing/;
  @Seport = @Athletics if $sport =~ m/Athletics/;
  @Seport = @Swimming if $sport =~ m/Swimming/;
  @Seport = @Cycling if $sport =~ m/Cycling/;
  @Seport = @Judo if $sport =~ m/Judo/;
  @Seport = @Modern_Pentathlon if $sport =~ m/Modern Pentathlon/;
  @Seport = @Shooting if $sport =~ m/Shooting/;
  @Seport = @Weightlifting if $sport =~ m/Weightlifting/;
  @Seport = @Diving if $sport =~ m/Diving/;
  @Seport = @Wrestling if $sport =~ m/Wrestling/;
  @Seport = @Canoeing if $sport =~ m/Canoeing/;
  @Seport = @Sailing if $sport =~ m/Sailing/;
  @Seport = @Equestrianism if $sport =~ m/Equestrianism/;
  @Seport = @Triathlon if $sport =~ m/Triathlon/;
  @Seport = @Softball if $sport =~ m/Softball/;
  @Seport = @Badminton if $sport =~ m/Badminton/;
  @Seport = @TableTennis if $sport =~ m/Table Tennis/;
  @Seport = @BeachVolley if $sport =~ m/Beach Volleyball/;
  @Seport = @Trampolining if $sport =~ m/Trampolining/;
  @Seport = @SynchSwim if $sport =~ m/Synchronized Swimming/;
  @Seport = @Taekwondo if $sport =~ m/Taekwondo/;
  @Seport = @Handball if $sport =~ m/Handball/;
  @Seport = @waterpolo if $sport =~ m/Water Polo/;
  @Seport = @Boxing if $sport =~ m/Boxing/;
  @Seport = @Hockey if $sport =~ m/Hockey/;
  @Seport = @Alpski if $sport =~ m/Alpine Skiing/;
  @Seport = @Skijump if $sport =~ m/Ski Jumping/;
  @Seport = @Nordcom if $sport =~ m/Nordic Combined/;
  @Seport = @Luge if $sport =~ m/Luge/;
  @Seport = @Bobsleigh if $sport =~ m/Bobsleigh/;
  @Seport = @FigureScating if $sport =~ m/Figure Skating/;

  $event = "Дисципліна";
  $event = "Вагова категорія" if $sport =~ m/Taekwondo/; 

#print "Sport = $sport\n";

if ($gender =~ m/Female/)
{
  $nationality = @land[6];
  $land_adj = @land[2];
  $qual = @Seport[2]; 
  $achiv0 = "[[Олімпійські ігри|олімпійка]]";
  $achivm = "[[Олімпійські ігри|олімпійська]] медалістка";
  $achivc = "[[олімпійська чемпіонка]]";
}
else 
{
  $nationality = @land[5];
  $land_adj = @land[1];
  $qual = @Seport[1];
  $achiv0 = "[[Олімпійські ігри|олімпієць]]";
  $achivm = "[[Олімпійські ігри|олімпійський]] медаліст";
  $achivc = "[[олімпійський чемпіон]]";
};

$achiv = $achiv0; 
$achiv = $achivm if ($medalist eq "yes");
$achiv = $achivc if ($champion eq "yes");

$height =~ m/\((.*) cm/; 
$height = $1;

$weight = "$1 кг" if $weight =~ m/\((.*) kg/; 

$category_champ = "";
$category_champ = "[[Категорія:@land[3] олімпійські чемпіони]]" if ($champion eq "yes");
if ($category_champ =~ m/американські/)
{
 $category_champ = "[[Категорія:олімпійські чемпіони США]]";
}

$category_nation = "[[Категорія:@land[3] @Seport[3]]]";
if ($category_nation =~ m/американські (.*)\]\]/) 
{
  $nat = $1;
  $category_nation = "[[Категорія:$nat США]]";
}

$ename =~ s/^\s+//;
$ename =~ s/\s+$//;
$full_name =~ s/^\s+//;
$full_name =~ s/\s+$//;

$langname = $ename;
if ( ($country  =~ m/Japan/) || ($country =~ m/China/))
{
  $langname = $orig_name;
  $full_name = "";
}

$full_name = "" if ($ename eq $full_name);

while ($qual =~ s/\_/\ /g) {};
while ($Seport[0] =~ s/\_/\ /g) {};

$page =<<ECARD; 
START
{{Картка:Спортсмен
| ім'я = $langname
| повне_ім'я = $full_name
| зображення =  $image
| підпис = $sign
| прізвисько = $nick
| національність = $nationality
| місце_проживання = $dwelling
| дата_народження = [[$day $month]] [[$year]]
| місце_народження = $bplace
| дата_смерті =  $death_date
| місце_смерті = $death_place
| зріст = $height см
| вага = $weight 
| веб-сторінка = $web
| країна = @land[0]
| вид_спорту = $Seport[0]
| дисципліна = $discipline
| студентська_команда = $student_team
| клуб = $affiliations
| команда = $team
| нац._збірна = $national_team
| статус_професіонала = $pro
| тренери = $coach
| завершення_виступів = $retired
| тренує = $coaches
| світові = $world
| регіональні = $regional
| національні = $national
| олімпійські = $olympic
| параолімпійські = $paralympic
| найвищий_рейтинг =  $highest_rating
| особисті_рекорди = $PB
| медалі = @medals
| show-medals = yes
}}
'''$uname''' ({{lang-@land[4]|$langname}}, [[$day $month]] [[$year]])&nbsp; $land_adj $qual, $achiv.

== Виступи на Олімпіадах == 

{|class = "wikitable"
!Олімпіада!! $event!! Місце
|-
@results
|}

== Зовнішні посилання ==
*[$url Досьє на sport.references.com]

{{sportsman-stub}}

{{DEFAULTSORT:$uname}}

$category_nation
$category_champ
[[Категорія:Народились $year]]
[[Категорія:Народились $day $month]] 
[[en:$ename]]
END 
ECARD
;

return $page;
}

open(FF, "olymp_list.txt"); 
while ($spec1 = <FF>)
{
 $p = generate_page $spec1;
 print $p; 
}