#! /usr/bin/env python
import re 
import sys 
import getopt
import socket

ipre=re.compile('(?:\d{1,3}\.){3}\d{1,3}')

# defaults
options = {'head'   : '0',
	    'dns'   : False}

optlist, args = getopt.getopt(sys.argv[1:], 'n:d', ['head=','dns'])
#parse options.
for o, a in optlist:
        if (o == '-d' or o == '--dns'):
            options['dns'] = True
	if (o=='-n' or 0=='--head'):
	   options['head']=a
	else: 
		for option in options.keys():
        		execcode = "if (o == '-%s' or o == '--%s'): options['%s'] = a" % (option[0], option, option)
	                exec execcode



		
line = sys.stdin.read()
ipsinline=ipre.findall(line)

outlines=0
for ip in ipsinline:
	#ip=re.sub('\.0{1,2}','.',ip) #un pad any padded zeros
	if options['dns']:
		hostname=socket.getfqdn(ip)
		print ip + " " + hostname
	else:
		print ip
	outlines+=1
	if int(options['head'])>0 :
		if outlines >= int(options['head']):
			sys.exit()
	

