#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> P;

string N[9][7]={{"#######",
                 "#.....#",
                 "#...|.#",
                 "#.....#",
                 "#...|.#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#...|.#",
                 "#..-..#",
                 "#.|...#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#...|.#",
                 "#..-..#",
                 "#...|.#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#.....#",
                 "#.|.|.#",
                 "#..-..#",
                 "#...|.#",
                 "#.....#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#.|...#",
                 "#..-..#",
                 "#...|.#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#.|...#",
                 "#..-..#",
                 "#.|.|.#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#...|.#",
                 "#.....#",
                 "#...|.#",
                 "#.....#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#.|.|.#",
                 "#..-..#",
                 "#.|.|.#",
                 "#..-..#",
                 "#######"},
                {"#######",
                 "#..-..#",
                 "#.|.|.#",
                 "#..-..#",
                 "#...|.#",
                 "#..-..#",
                 "#######"}};

vector<string> rotate(vector<string> t) {
  vector<string> s(7);
  for(int j=0; j<7; j++) {
    for(int i=6; i>=0; i--) s[j]+=t[i][j];
  }
  for(int i=0; i<7; i++) {
    for(int j=0; j<7; j++) {
      if(s[i][j]=='|') s[i][j]='-';
      else if(s[i][j]=='-') s[i][j]='|';
    }
  }
  return s;
}

int main() {
  P r[6]={P(0,7),P(7,0),P(7,7),P(7,14),P(7,21),P(14,7)};
  string s[21];
  while(cin >> s[0] && s[0]!="0") {
    for(int i=1; i<21; i++) cin >> s[i];
    vector<int> a[2];
    for(int h=0; h<2; h++) {
      for(int k=0; k<6; k++) {
        vector<string> t(7);
        for(int i=0; i<7; i++) {
          t[i]=s[i+r[k].first].substr(r[k].second+h*29,7);
          if(k!=5) reverse(t[i].begin(),t[i].end());
        }
        if(k==1) {
          for(int i=0; i<3; i++) t=rotate(t);
        } else if(k==3) {
          t=rotate(t);
        } else if(k==5) {
          for(int j=0; j<7; j++) {
            for(int i=0; i<3; i++) swap(t[i][j],t[6-i][j]);
          }
          for(int i=0; i<7; i++) reverse(t[i].begin(),t[i].end());
        }
        for(int i=0; i<9; i++) {
          bool f=1;
          for(int j=0; j<7; j++) {
            if(N[i][j]!=t[j]) f=0;
          }
          if(f) {
            a[h].push_back(i+1);
            break;
          }
        }
      }
    }
    int high=0,low=0;
    for(int i=0; i<6; i++) {
      for(int j=0; j<6; j++) {
        if(a[0][i]>a[1][j]) high++;
        else if(a[0][i]<a[1][j]) low++;
      }
    }
    if(high>=low) cout << "HIGH" << endl;
    else cout << "LOW" << endl;
  }
  return 0;
}


Measured memory_bytes: 1224