Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
	"strings"
)

func main() {
	io := NewIo()
	defer io.Flush()
	for {
		s := io.NextLine()
		if s == "." {
			break
		}
		t := io.NextLine()
		if s == t {
			io.Println("IDENTICAL")
			continue
		}
		ss := strings.Split(s, "\"")
		tt := strings.Split(t, "\"")
		if len(ss) != len(tt) {
			io.Println("DIFFERENT")
			continue
		}
		cnt := 0
		for i := 0; i < len(ss); i++ {
			if i%2 == 0 {
				if ss[i] != tt[i] {
					cnt = -1
					break
				}
			} else {
				if ss[i] != tt[i] {
					cnt++
				}
			}
		}
		if cnt > 1 || cnt == -1 {
			io.Println("DIFFERENT")
		} else {
			io.Println("CLOSE")
		}
	}
}

// I/O template
type Io struct {
	reader    *bufio.Reader
	writer    *bufio.Writer
	tokens    []string
	nextToken int
}

func NewIo() *Io {
	return &Io{
		reader: bufio.NewReader(os.Stdin),
		writer: bufio.NewWriter(os.Stdout),
	}
}

func (io *Io) Flush() {
	err := io.writer.Flush()
	if err != nil {
		panic(err)
	}
}

func (io *Io) NextLine() string {
	var buff []byte
	for {
		line, isPrefix, err := io.reader.ReadLine()
		if err != nil {
			panic(err)
		}
		buff = append(buff, line...)
		if !isPrefix {
			break
		}
	}
	return string(buff)
}

func (io *Io) Next() string {
	for io.nextToken >= len(io.tokens) {
		line := io.NextLine()
		io.tokens = strings.Fields(line)
		io.nextToken = 0
	}
	s := io.tokens[io.nextToken]
	io.nextToken++
	return s
}

func (io *Io) NextInt() int {
	i, err := strconv.Atoi(io.Next())
	if err != nil {
		panic(err)
	}
	return i
}

func (io *Io) NextFloat() float64 {
	i, err := strconv.ParseFloat(io.Next(), 64)
	if err != nil {
		panic(err)
	}
	return i
}

func (io *Io) Println(a ...interface{}) {
	fmt.Fprintln(io.writer, a...)
}

func (io *Io) Printf(format string, a ...interface{}) {
	fmt.Fprintf(io.writer, format, a...)
}

func (io *Io) PrintIntSlice(a []int) {
	b := []interface{}{}
	for _, x := range a {
		b = append(b, x)
	}
	io.Println(b...)
}

func (io *Io) PrintStringSlice(a []string) {
	b := []interface{}{}
	for _, x := range a {
		b = append(b, x)
	}
	io.Println(b...)
}

func Log(name string, value interface{}) {
	fmt.Fprintf(os.Stderr, "%s=%+v\n", name, value)
}

func ExampleIo() {
	io := NewIo()
	defer io.Flush()
	a := make([]int, 0, 3)
	a[0], a[1], a[2] = io.NextInt(), io.NextInt(), io.NextInt()
	io.Println(a)
	io.PrintIntSlice(a)
	Log("io", a)
}

Python: def vals(arr):
    even = True
    res = [[], []]
    tmp = []
    for e in arr:
        if e == "\"":
            even = not even
            res[even].append(tmp)
            tmp = []
            continue
        tmp.append(e)
    even = not even
    res[even].append(tmp)
    return res


while True:
    str1 = input()
    if str1 == ".":
        break
    a = vals(str1)
    b = vals(input())
    res = 0
    if len(a[0]) != len(b[0]) or len(a[1]) != len(b[1]) :
        res = 2
    else:
        for (x, y) in zip(a[0], b[0]):
            if x != y:
                res = 2
                break
    if res == 0:
        for (a, b) in zip(a[1], b[1]):
            if a != b:
                res += 1
                if res == 2:
                    break
    if res == 0:
        print("IDENTICAL")
    elif res == 1:
        print("CLOSE")
    else:
        print("DIFFERENT")

Python: results=[]
while True:
    a=input().split("\"")
    if a[0]==".":
        break
    b=input().split("\"")
    count1=0
    count2=0
    if len(a) != len(b):
        results.append(2)
    else:
        for i in range(len(a)):
            if(i%2==1):
                for k,l in zip(a[i],b[i]):
                    if(k!=l):
                        count1+=1
            else:
                for k,l in zip(a[i],b[i]):
                    if(k!=l):
                        count2+=1
        if count1==0 and count2==0:
            results.append(0)
        elif count1==1 and count2==0:
            results.append(1)
        else:
            results.append(2)
for i in results:
    if i==0:
        print("IDENTICAL")
    if i==1:
        print("CLOSE")
    if i==2:
        print("DIFFERENT")

Python: while 1:
    list1=input().split('"')
    if list1[0]==".":
        break
    list2=input().split('"')
     
    c1=0
    c2=0
    flag=0
     
    if len(list1)!=len(list2):
        print("DIFFERENT")
    else:
        i=0
        while i<len(list1):
            if list1[i]==list2[i]:
                c1+=1
            elif i%2==0:
                print("DIFFERENT")
                flag=1
                break
            else:
                c2+=1
                if c2>1:
                    print("DIFFERENT")
                    break
            i+=1
                 
        if flag==0 and t2==1:
            print("CLOSE")
        if c1==len(list1):
            print("IDENTICAL")

Python: while True:
  s1 = input()
  if s1==".":
    break
  s2 = input()

  s1words = []
  s2words = []
  s1split = ""
  s2split = ""

  flag = False
  string = ""
  for e in s1:
    if not flag and e=='"':
      flag = True
      s1split += e
    elif flag and e=='"':
      flag = False
      s1split += e
      s1words.append(string)
      string = ""
    elif flag:
      string += e
    else:
      s1split += e

  flag = False
  string = ""
  for e in s2:
    if not flag and e=='"':
      flag = True
      s2split += e
    elif flag and e=='"':
      flag = False
      s2split += e
      s2words.append(string)
      string = ""
    elif flag:
      string += e
    else:
      s2split += e

  wrong = 0
  if len(s1words)!=len(s2words):
    print("DIFFERENT")
  else:
    for s, t in zip(s1words, s2words):
      if s!=t:
        wrong += 1
    if wrong==0 and s1split==s2split:
      print("IDENTICAL")
    elif wrong==1 and s1split==s2split:
      print("CLOSE")
    else:
      print("DIFFERENT")

Python: import sys
import re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians, log2,gcd
from itertools import permutations, combinations, product
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits


def input(): return sys.stdin.readline().strip()


def INT(): return int(input())


def MAP(): return map(int, input().split())


def LIST(): return list(map(int, input().split()))


sys.setrecursionlimit(10 ** 9)
INF = float('inf')
mod = 10 ** 9 + 7


def main():
    ans=[]
    while 1:
        s1 = input()
        if s1 == '.':
            break
        else:
            s2 = input().split('"')
            s1=s1.split('"')

            ct=0
            flag=0

            if len(s1)!=len(s2):
                flag=2
            else:
                for i in range(len(s1)):
                    if i%2==0 :
                        if s1[i]!=s2[i]:
                            flag=2
                            break
                    else:
                        if s1[i]!=s2[i]:
                            if ct==0:
                                flag=1
                                ct+=1
                            else:
                                flag=2


            if flag==0:
                ans.append('IDENTICAL')
            elif flag==1:
                ans.append('CLOSE')
            else:
                ans.append('DIFFERENT')

    for x in ans:
        print(x)
if __name__ == '__main__':
    main()