101026
to
1.0.10.26
1.0.102.6
10.1.0.26
10.10.2.6
101.0.2.6
#encoding=utf8
ipstr = raw_input()
l = len(ipstr)
def r(ipstr,rd=1):
ll = min(3,len(ipstr))
if rd == 4:
if len(ipstr)>3:
return False,None
if int(ipstr) >255 or int(ipstr)<0:
return False,None
if len(ipstr) >1 and ipstr[0] == '0':
return False,None
return True,[ipstr,]
d = []
while ll!=-1:
if ipstr[:ll] == '':
ll-=1
continue
s1 = ipstr[:ll]
if int(ipstr[:ll]) > 255 or int(ipstr[:ll])<0:
ll -= 1
continue
if len(ipstr[:ll]) > 1 and ipstr[0] == '0':
ll-=1
continue
sl = ipstr[ll:]
if len(sl) == 0:
ll -=1
continue
ret,sr = r(sl,rd+1)
if ret:
for m in sr:
d.append(s1+'.'+m)
# if rd==1:
# data.extend(d)
ll-=1
else:
if d:
return True,d
return False,None
ret,data = r(ipstr)
if ret:
data = list(set(data))
data.sort()
for i in data:
print i