There is data that records the altitude of mountains that have been climbed so far. Create a program that reads this data and outputs the elevation difference between the highest and lowest mountains.



Input

The input is given in the following format:


Mountain height
...
...


The height of the mountain is given over multiple lines. All values ​​entered are real numbers greater than or equal to 0 and less than or equal to 1,000,000. The number of mountain heights entered is 50 or less.

Output

The elevation difference between the highest mountain and the lowest mountain is output as a real number. The output may contain an error of 0.01 or less.

Example

Input

3776.0
1819.0
645.2
2004.1
1208.6


Output

3130.8

Source: aizu | Difficulty: UNKNOWN_DIFFICULTY


Solutions:
minv = 10000000
maxv = 0
while 1:
	try:
		n = float(input())
		if minv > n:
			minv = n
		if maxv < n:
			maxv = n
	except:
		break
print(maxv - minv)


data = []
while True:
	try:
		data.append(float(input()))
	except:
		break
print(max(data) - min(data))


import sys

def main():
	m = []
	for line in sys.stdin:
		m.append(float(line))
	m.sort()
	ans = m[-1] - m[0]
	print(ans)
main()


import sys
a = tuple(map(float, sys.stdin.readlines()))
print(max(a) - min(a))


mountain = []
while True:
	try:
		n = float(input())
	except:
		print(max(mountain) - min(mountain))
		break
	mountain.append(n)


def multi_input():
	while True:
		try:
			yield float(input())
		except EOFError:
			break
a = list(multi_input())
print(max(a) - min(a))


import sys
list = [float(i) for i in sys.stdin]
print(max(list) - min(list))


L = []
while True:
	try:
		f = float(input())
		L.append(f)
	except EOFError:
		break
print(max(L) - min(L))


d = []
while True:
	try:
		d.append(float(input()))
	except EOFError:
		break
print(max(d) - min(d))


ma = 0
mi = 1000000
while True:
	try:
		h = float(input())
		if ma < h:
			ma = h
		if mi > h:
			mi = h
	except EOFError:
		print(ma - mi)
		break


import sys
import math
import string
import collections
import fractions
import random
from operator import itemgetter
import itertools
from collections import deque
import copy
import heapq
import bisect
MOD = 10 ** 9 + 7
INF = float('inf')
input = lambda : sys.stdin.readline().strip()
sys.setrecursionlimit(10 ** 8)
height = list(map(float, open(0).read().split()))
print(max(height) - min(height))


h0 = float(input())
min = h0
max = h0
while True:
	try:
		h = float(input())
	except:
		break
	if h < min:
		min = h
	if max < h:
		max = h
print(f'{max - min:.2f}')


def main():
	m_MAX = 0.0
	m_MIN = 0.0
	count = 0
	while True:
		try:
			m = float(input())
			if count == 0:
				m_MAX = m_MIN = m
			if m > m_MAX:
				m_MAX = m
			elif m < m_MIN:
				m_MIN = m
			count += 1
		except EOFError:
			break
	print(abs(m_MAX - m_MIN))
main()


import sys
import math

class mymath:
	pi = 3.141592653589793

	def pnum_eratosthenes(self, n):
		ptable = [0 for i in range(n + 1)]
		plist = []
		for i in range(2, n + 1):
			if ptable[i] == 0:
				plist.append(i)
				for j in range(i + i, n + 1, i):
					ptable[j] = 1
		return plist

	def gcd(self, a, b):
		if b == 0:
			return a
		return self.gcd(b, a % b)

	def lcm(self, a, b):
		return a * b // self.gcd(a, b)

	def mul(self, A, B):
		ans = []
		for a in A:
			c = 0
			for (j, row) in enumerate(a):
				c += row * B[j]
			ans.append(c)
		return ans
mymath = mymath()

class output:

	def list(self, l):
		l = list(l)
		for (i, num) in enumerate(l):
			print(num, end='')
			if i != len(l) - 1:
				print(' ', end='')
		print()
output = output()

def get_input():
	N = []
	while True:
		try:
			N.append(float(input()))
		except EOFError:
			break
	return N
N = get_input()
print(max(N) - min(N))


import sys
result = []
for line in sys.stdin:
	result.append(float(line))
a = max(result) - min(result)
print(a)


data = []
while True:
	try:
		data.append(float(input()))
	except EOFError:
		break
print(max(data) - min(data))


A = []
while True:
	try:
		A.append(float(input()))
	except EOFError:
		break
sa = max(A) - min(A)
print(f'{sa:.1f}')


list = []
while True:
	try:
		mt = float(input())
	except:
		small = min(list)
		big = max(list)
		print(big - small)
		break
	list.append(mt)


height_lst = []
while True:
	try:
		height = float(input())
		height_lst.append(height)
	except EOFError:
		break
height_lst.sort()
print(height_lst[-1] - height_lst[0])


max_high = 0
min_high = 10 ** 6
while True:
	try:
		n = float(input())
		if max_high < n:
			max_high = n
		if min_high > n:
			min_high = n
	except EOFError:
		break
print(max_high - min_high)


import sys
readlines = sys.stdin.readlines
write = sys.stdout.write

def solve():
	D = [float(line) for line in readlines()]
	write('%.16f\n' % (max(D) - min(D)))
solve()


a = []
while True:
	try:
		n = float(input())
		a.append(n)
	except:
		break
a.sort()
print(a[len(a) - 1] - a[0])


high_max = 0
high_low = 1000000
while True:
	try:
		N = float(input())
		if N > high_max:
			high_max = N
		elif N < high_low:
			high_low = N
	except:
		ans = high_max - high_low
		print('{:.1f}'.format(ans))
		break


import sys
a = [float(e) for e in sys.stdin]
print(max(a) - min(a))


s = l = float(input())
while 1:
	try:
		t = float(input())
		s = min(s, t)
		l = max(l, t)
	except:
		break
print(l - s)


m = []
while True:
	try:
		m.append(float(input()))
	except:
		print(max(m) - min(m))
		break


import sys
high = 0
low = 10 ** 6
for line in sys.stdin:
	if line == '\n':
		break
	height = float(line)
	if height > high:
		high = height
	if height < low:
		low = height
print(high - low)


d = []
while True:
	try:
		d.append(float(input()))
	except:
		break
print(max(d) - min(d))


import sys
data = []
for line in sys.stdin:
	try:
		data.append(float(line))
	except:
		break
print(max(data) - min(data))


def main():
	m_MAX = 0.0
	m_MIN = 9999999999999.0
	while True:
		try:
			m = float(input())
			if m > m_MAX:
				m_MAX = m
			elif m < m_MIN:
				m_MIN = m
		except EOFError:
			break
	print(m_MAX - m_MIN)
main()


import sys
f = sys.stdin
mountains = [float(line) for line in f]
print(max(mountains) - min(mountains))


x = []
while 1:
	try:
		h = float(input())
		x.append(h)
	except EOFError:
		break
print(max(x) - min(x))


i = []
while True:
	try:
		i.append(float(input()))
	except EOFError:
		break
i.sort()
print(i[-1] - i[0])


def get_input():
	while True:
		try:
			yield input()
		except EOFError:
			break
inputs = [float(i) for i in get_input()]
print(max(inputs) - min(inputs))


max = -10 ** 20
min = 10 ** 20
while 1:
	try:
		a = float(input())
		if a > max:
			max = a
		if a < min:
			min = a
	except EOFError:
		print('{:.1f}'.format(max - min))
		break


def get_input():
	while True:
		try:
			yield ''.join(input())
		except EOFError:
			break
N = list(get_input())
m = []
for l in range(len(N)):
	m.append(float(N[l]))
m.sort()
print(m[len(m) - 1] - m[0])


try:
	lst = []
	while True:
		a = float(input())
		lst.append(a)
except:
	print(max(lst) - min(lst))


(maxv, minv) = (0, 10 ** 6)
while True:
	try:
		height = float(input())
	except:
		break
	maxv = height if maxv < height else maxv
	minv = height if minv > height else minv
print(maxv - minv)


min = 10 ** 12
max = 0
while True:
	try:
		n = float(input())
		if min > n:
			min = n
		if max < n:
			max = n
	except:
		print(max - min)
		break


a = []
while True:
	try:
		a.append(float(input()))
	except:
		break
a.sort(reverse=True)
print(a[0] - a[-1])


import sys
a = [float(i) for i in sys.stdin]
print(max(a) - min(a))


ans = []
while True:
	try:
		ans.append(float(input()))
	except EOFError:
		break
print(max(ans) - min(ans))


heightlist = []
while 1:
	try:
		height = float(input())
		heightlist.append(height)
	except:
		break
diff = max(heightlist) - min(heightlist)
print(diff)


import sys
l = []
for line in sys.stdin.readlines():
	l.append(float(line.replace('\n', '')))
print(max(l) - min(l))


Mon_lis = []
while True:
	try:
		Mon_lis.append(float(input()))
	except EOFError:
		print(max(Mon_lis) - min(Mon_lis))
		break


import sys

def main(args):
	mountains = []
	for line in sys.stdin:
		mountains.append(float(line.strip()))
	max_height = max(mountains)
	min_height = min(mountains)
	print(max_height - min_height)
main(sys.argv[1:])


(a, b) = (float(input()), float(input()))
(Max, Min) = (max(a, b), min(a, b))
while True:
	try:
		c = float(input())
		if Min < c < Max:
			pass
		elif Max < c:
			Max = c
		elif c < Min:
			Min = c
	except:
		break
print(Max - Min)


t = []
while 1:
	try:
		t.append(float(input()))
	except:
		break
t = sorted(t)
print(t[len(t) - 1] - t[0])


import sys
arr = []
for f in sys.stdin:
	arr.append(float(f))
print(max(arr) - min(arr))


A = []
while True:
	try:
		A.append(float(input()))
	except EOFError:
		break
print(max(A) - min(A))


import sys
ms = []
for v in sys.stdin:
	ms.append(float(v))
print(max(ms) - min(ms))


a = []
while True:
	try:
		n = float(input())
		a.append(n)
	except:
		break
a.sort()
print(max(a) - min(a))


import sys, math, os
PYDEV = os.environ.get('PYDEV')
if PYDEV == 'True':
	sys.stdin = open('sample-input.txt', 'rt')
heights = [float(line) for line in sys.stdin]
diff = max(heights) - min(heights)
print(diff)


max = -10000000000.0
min = 10000000000.0
while True:
	try:
		n = float(input())
	except:
		break
	if max < n:
		max = n
	elif min > n:
		min = n
print(max - min)


import sys
import math
maxv = 0
minv = math.inf
for i in map(float, sys.stdin):
	maxv = max([i, maxv])
	minv = min([i, minv])
print(maxv - minv)


try:
	ls = []
	while True:
		ls.append(float(input()))
except:
	print(max(ls) - min(ls))


a = []
while 1:
	try:
		a.append(float(input()))
	except:
		break
print(max(a) - min(a))


f = []
while True:
	try:
		f.append(float(input().strip()))
	except EOFError:
		break
print(max(f) - min(f))


mt = []
try:
	while True:
		mt.append(float(input()))
except EOFError:
	mt.sort()
	print(mt[-1] - mt[0])


li = []
while 1:
	try:
		li.append(float(input()))
	except:
		break
print(max(li) - min(li))


import sys
mi = 10 ** 7
ma = -1
for l in sys.stdin:
	mi = min(mi, float(l))
	ma = max(ma, float(l))
print(ma - mi)


a = []
while True:
	try:
		n = float(input())
		a.append(n)
	except:
		break
print(max(a) - min(a))


import sys
import os
import math
import itertools
heights = []
for s in sys.stdin:
	heights.append(float(s))
print(max(heights) - min(heights))


a = []
while True:
	try:
		a.append(float(input()))
	except:
		break
print(max(a) - min(a))


A = []
while True:
	try:
		height = float(input())
		A.append(height)
	except EOFError:
		break
A.sort(reverse=True)
print(A[0] - A[-1])


l = []
while True:
	try:
		l.append(float(input()))
	except:
		break
_max = max(l)
_min = min(l)
print(_max - _min)


data = []
while True:
	try:
		a = float(input())
	except EOFError:
		break
	data.append(a)
print(max(data) - min(data))


from decimal import Decimal, ROUND_HALF_UP
n = []
while 1:
	try:
		n.append(float(input()))
	except:
		break
print(Decimal(str(max(n) - min(n))).quantize(Decimal('0.01'), rounding=ROUND_HALF_UP))


mi = 2000000
ma = 0
while True:
	try:
		a = float(input())
		mi = min(a, mi)
		ma = max(a, ma)
	except:
		print(ma - mi)
		break