#include <iostream>
#include <iomanip>
#include <cstdio>
#include <string>
#include <cstring>
#include <deque>
#include <list>
#include <queue>
#include <stack>
#include <vector>
#include <utility>
#include <algorithm>
#include <map>
#include <set>
#include <complex>
#include <cmath>
#include <limits>
#include <cfloat>
#include <climits>
#include <ctime>
#include <cassert>
#include <numeric>
#include <fstream>
#include <functional>
#include <bitset>
#define chmin(a, b) ((a)=min((a), (b)))
#define chmax(a, b) ((a)=max((a), (b)))
#define fs first
#define sc second
#define eb emplace_back
using namespace std;

typedef long long ll;
typedef pair<int, int> P;
typedef tuple<int, int, int> T;

const ll MOD=1e9+7;
const ll INF=1e18;
const double pi=acos(-1);
const double eps=1e-10;

int dx[]={1, 0, -1, 0};
int dy[]={0, -1, 0, 1};

int main(){
    while(1){
        string s1; cin>>s1;
        if(s1 == ".") return 0;
        string s2; cin>>s2;

        if(s1 == s2){
            cout << "IDENTICAL" << endl;
            continue;
        }
        
        int cnt = 1;
        vector<string> ans1, ans2;
        vector<string> ans3, ans4;
        int h = 0;
        for(int i=0; i<s1.size(); i++){
            if(cnt % 2 == 1 && s1[i] == '\"'){
                string s3 = s1.substr(h, i - h + 1);
                ans3.eb(s3);
                h = i;
                cnt++;
            }
            else if(cnt % 2 == 0 && s1[i] == '\"'){
                string s3 = s1.substr(h, i - h + 1);
                cnt++;
                if(s3 == "") ans1.eb("?");
                else ans1.eb(s3);
                h = i;
            }

            if(i == s1.size() - 1){
                if(cnt % 2){
                    string s3 = s1.substr(h, i - h + 1);
                    ans3.eb(s3);
                }
                else{
                    string s3 = s1.substr(h, i - h + 1);
                    ans1.eb(s3);
                }
            }
        }

        cnt = 1;
        h = 0;
        for(int i=0; i<s2.size(); i++){
            if(cnt % 2 && s2[i] == '\"'){
                string s3 = s2.substr(h, i - h + 1);
                ans4.eb(s3);
                h = i;
                cnt++;
            }
            else if(cnt % 2 == 0 && s2[i] == '\"'){
                cnt++;
                string s3 = s2.substr(h, i - h + 1);
                h = i;
                if(s3 == "") ans2.eb("?");
                else ans2.eb(s3);
            }

            if(i == s2.size() - 1){
                if(cnt % 2){
                    string s3 = s2.substr(h, i - h + 1);
                    ans4.eb(s3);
                }
                else{
                    string s3 = s2.substr(h, i - h + 1);
                    ans2.eb(s3);
                }
            }
        }

        bool valid = true;
        for(int i=0; i<ans3.size() && i<ans4.size(); i++){
            if(ans3[i] != ans4[i] && valid){
                //cout << ans3[i] << " " << ans4[i] << endl;
                cout << "DIFFERENT" << endl;
                valid = false;
            }
        }

        int dif = 0;
        for(int i=0; i<ans1.size() && i<ans2.size(); i++){
            if(ans1[i] != ans2[i]) dif++;
        }

        if(valid){
            if(dif == 1) cout << "CLOSE" << endl;
            else cout << "DIFFERENT" << endl;
        }
    }
}


Measured memory_bytes: 3172