// Для каждой страны предусмотрено масив праздников. 
// Заполнение масива праздников:
// По порядку: сначала дата в двойных кавычках и через запятую название праздника в двойных кавычках.
// Дата в формате день.месяц без нулей! Например 07.05 (седьмое мая) нужно записать 7.5   



usa = new Array(
"1.1"     ,   "New Year's Day", 
"18.1"   ,   "Martin Luther King Day",
"15.2"   ,   "President's Day", 
"2.4"   ,    "Good Friday",
"3.4"   ,    "Easter",
"31.5"   ,   "Memorial Day",
"4.7"     ,   "Independence Day",
"5.7"     ,   "Independence Day",
"6.9"     ,   "Labour Day",
"11.10"  ,   "Columbus Day",
"2.11"   ,   "Election Day",
"11.11"  ,   "Veterans' Day",
"26.11"  ,   "Thanksgiving Day",
"25.12"  ,   "Christmas Day Holiday",
"31.12"  ,   "Eve of New year"
);



ger = new Array(
"1.1"    ,   "New Year's Day", 
"6.1"    ,   "Baptism", 
"2.4"   ,    "Good Friday",
"3.4"   ,    "Easter",
"5.4"   ,    "Easter Monday",
"1.5"     ,   "Labour Day",
"13.5"   ,   "Ascension Day",
"23.5"   ,   "Pentecost",
"24.5"   ,   "Monday after Pentecost",
"3.6"   ,     "Holiday of the body of Christ",
"3.10"   ,   "Day of association of Germany",
"31.10"  ,   "Reformation Day",
"1.11"    ,   "Saints Day",
"17.11"  ,   "Day of a repentance and prayer",
"24.12"  ,   "Christmas Eve",
"25.12"  ,   "Christmas Day Holiday",
"31.12"  ,   "Eve of New year"
);


gb = new Array(
"1.1"    ,   "New Year's Day",
"2.4"   ,   "Good Friday", 
"3.4"   ,   "Easter",
"3.5"     ,   "May Bank Holiday", 
"31.5"   ,   "Spring Bank Holiday",
"30.8"   ,   "Summer Bank Holiday",
"25.12"  ,   "Christmas Day Holiday",
"27.12"  ,   "Boxing Day"
);


fr = new Array(
"1.1"    ,   "New Year's Day",  
"2.4"   ,    "Good Friday",
"3.4"   ,    "Easter",
"5.4"   ,    "Easter Monday",
"1.5"     ,   "Labour Day",
"8.5"     ,   "Victory Day",
"13.5"   ,   "Ascension Day",
"23.5"   ,   "Pentecost",
"24.5"   ,   "Monday after Pentecost",
"14.7"   ,   "Day of a capture of the Bastile",
"15.8"   ,   "Assumption of the Virgin of Maiden Maria",
"1.11"   ,   "Saints Day",
"11.11"  ,   "Memorial Day in the dead of World War",
"25.12"  ,   "Christmas Day Holiday",
"27.12"  ,   "Boxing Day"
);


jp = new Array(
"1.1"    ,   "New Year's Day",
"2.1"    ,   "Day after New Year", 
"11.1"   ,   "Coming of Age Day",
"11.2"   ,   "National Foundation Day",
"22.3"   ,   "Spring Equinox Day",
"29.4"   ,   "Day Shova",
"3.5"    ,   "Constitution Day",
"4.5"    ,   "Greenery Day",
"5.5"    ,   "Children's Day",
"17.7"   ,   "Marine Day",
"20.9"   ,   "Day of Senior Citizens",
"23.9"   ,   "Autumn Equinox Day",
"11.10"  ,   "Health-Sports Day",
"3.11"   ,   "National Culture Day",
"23.11"  ,   "Labour Day",
"23.12"  ,   "Emperor's Birthday",
"31.12"  ,   "Eve of New year"
 );


ca = new Array(
"1.1"     ,   "New Year's Day",
"15.2"   ,   "Family Day",
"2.4"   ,      "Good Friday",
"3.4"   ,     "Easter",
"13.4"   ,   "Easter Monday",
"24.5"   ,   "Victoria Day",
"1.7"     ,   "National Day",
"2.8"   ,     "Public holiday",
"6.9"     ,   "Labour Day",
"11.10"  ,   "Thanksgiving Day",
"11.11"  ,   "Veterans' Day",
"25.12"  ,   "Christmas Day Holiday",
"27.12"  ,   "Boxing Day"
);


nz = new Array(
"1.1"    ,   "New Year's Day",
"2.1"    ,   "Day after New Year", 
"2.4"    ,   "Good Friday",
"5.4"    ,   "Easter Monday",
"14.6"     ,   "Queen's Birthday",
"25.10"  ,   "Labour Day",
"25.12"  ,   "Christmas Day Holiday"
);


au = new Array(
"26.1"   ,   "National Day", 
"2.4"   ,     "Good Friday",
"3.4"   ,     "Easter",
"5.4"   ,    "Easter Monday", 
"6.4"   ,    "Easter Tuesday", 
"26.4"   ,   "ANZAC Day",
"14.6"   ,   "Queen's Birthday",
"2.8"     ,     "Banking Weekend",
"25.12"   ,   "Christmas Day Holiday",
"27.12"   ,   "Boxing Day"
);


var hol = 0;
var flag = 0;
var nabor = new Array();
var s = "";

now = new Date; 
month = now.getUTCMonth()+1;
day =  now.getUTCDate();
hour = now.getUTCHours();




d = day+"."+month;


//  USA
 for (i=0; i<40; i++)
  {
   if (d == usa[i]) 
    { 
      hol = 1;
      document.write(usa[i+1]," "); nabor.push(usa[i+1]);
      document.write("<image src = 'us.png' alt = 'USD - United States'>"," "); 
    }
  }   
    
// Germany
 for (i=0; i<40; i++)
  {
   if (d == ger[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (ger[i+1] == nabor[j]) {flag = 1;}  }
      if (flag == 0) {s+=ger[i+1]+" "+"<image src = 'de.png' alt = 'EUR - Germany'>"+" "; nabor.push(ger[i+1]);}
      if (flag == 1) {document.write("<image src = 'de.png' alt = 'EUR - Germany'>"," ");} 
    }
  }   

// GB
 for (i=0; i<40; i++)
  {
   if (d == gb[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (gb[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=gb[i+1]+" "+"<image src = 'gb.png' alt = 'GBP - United Kingdom'>"+" "; nabor.push(gb[i+1]);}
      if (flag == 1) {document.write("<image src = 'gb.png' alt = 'GBP - United Kingdom'>"," ");} 
    }
  }  

// France
 for (i=0; i<40; i++)
  {
   if (d == fr[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (fr[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=fr[i+1]+" "+"<image src = 'fr.png' alt = 'EUR - France'>"+" "; nabor.push(fr[i+1]);}
      if (flag == 1) {document.write("<image src = 'fr.png' alt = 'EUR - France'>"," "); } 
    }
  }  

// Japane
 for (i=0; i<40; i++)
  {
   if (d == jp[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (jp[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=jp[i+1]+" "+"<image src = 'jp.png' alt = 'JPY - Japan'>"+" "; nabor.push(jp[i+1]);}
      if (flag == 1) {document.write("<image src = 'jp.png' alt = 'JPY - Japan'>"," ");} 
    }
  }  

// Canada
 for (i=0; i<40; i++)
  {
   if (d == ca[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (ca[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=ca[i+1]+" "+"<image src = 'ca.png' alt = 'CAD - Canada'>"+" "; nabor.push(ca[i+1]);}
      if (flag == 1) {document.write("<image src = 'ca.png' alt = 'CAD - Canada'>"," ");} 
    }
  } 

// New Zeland
 for (i=0; i<40; i++)
  {
   if (d == nz[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (nz[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=nz[i+1]+" "+"<img src = 'nz.png' alt = 'NZD - New Zealand'>"+" "; nabor.push(nz[i+1]);}
      if (flag == 1) {document.write("<img src = 'nz.png' alt = 'NZD - New Zealand'>"," ");} 
    }
  } 

// Australia
 for (i=0; i<40; i++)
  {
   if (d == au[i]) 
    { 
      hol = 1;
      for (j=0; j<30; j++) {if (au[i+1] == nabor[j]) {flag = 1;} }
      if (flag == 0) {s+=au[i+1]+" "+"<image src = 'au.png' alt = 'AUD - Australia'>"+" "; nabor.push(au[i+1]);}
      if (flag == 1) {document.write("<image src = 'au.png' alt = 'AUD - Australia'>"," ");} 
    }
  } 

document.write(s);


if (d == "1.1") { 
hol = 1;
document.write("Bank holiday","<image src = 'nz.png' alt = 'NZD - New Zealand'>"," ","<image src = 'jp.png' alt = 'JPY - Japan'>"," ");
} 


if (hol == 0) {document.write("There are no holidays");}


