# Test data for unit conversions
#  Copyright © 1991-2021 Unicode, Inc.
#  For terms of use, see http://www.unicode.org/copyright.html
#  Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
#  CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
#
# Format:
#	Quantity	;	x	;	y	;	conversion to y (rational)	;	test: 1000 x ⟹ y
#
# Use: convert 1000 x units to the y unit; the result should match the final column,
#   at the given precision. For example, when the last column is 159.1549,
#   round to 4 decimal digits before comparing.
# Note that certain conversions are approximate, such as degrees to radians
#
# Generation: Set GENERATE_TESTS in TestUnits.java, and look at TestParseUnit results.

acceleration	;	meter-per-square-second	;	meter-per-square-second	;	1 * x	;	1,000.00
acceleration	;	g-force	;	meter-per-square-second	;	9.80665 * x	;	9806.65
angle	;	arc-second	;	revolution	;	0.0000625/81 * x	;	7.716049E-4
angle	;	arc-minute	;	revolution	;	0.00125/27 * x	;	0.0462963
angle	;	degree	;	revolution	;	0.025/9 * x	;	2.777778
angle	;	radian	;	revolution	;	65,501,488/411,557,987 * x	;	159.1549
angle	;	revolution	;	revolution	;	1 * x	;	1,000.00
area	;	square-centimeter	;	square-meter	;	0.0001 * x	;	0.1
area	;	square-inch	;	square-meter	;	0.00064516 * x	;	0.64516
area	;	square-foot	;	square-meter	;	0.09290304 * x	;	92.90304
area	;	square-yard	;	square-meter	;	0.83612736 * x	;	836.1274
area	;	square-meter	;	square-meter	;	1 * x	;	1,000.00
area	;	dunam	;	square-meter	;	1,000 * x	;	1000000.0
area	;	acre	;	square-meter	;	4,046.8564224 * x	;	4046856.0
area	;	hectare	;	square-meter	;	10,000 * x	;	1.0E7
area	;	square-kilometer	;	square-meter	;	1,000,000 * x	;	1.0E9
area	;	square-mile	;	square-meter	;	2,589,988.110336 * x	;	2.589988E9
concentration	;	milligram-ofglucose-per-deciliter	;	kilogram-item-per-kilogram-cubic-meter	;	60,221,407,600,000,000,000,000,000,000/1,801,557 * x	;	3.342742E25
concentration	;	millimole-per-liter	;	item-per-cubic-meter	;	602,214,076,000,000,000,000,000 * x	;	6.022141E26
concentration-mass	;	ofglucose	;	item-per-kilogram	;	6,022,140,760,000,000,000,000,000,000,000/1,801,557 * x	;	3.342742E27
consumption	;	liter-per-100-kilometer	;	cubic-meter-per-meter	;	0.00000001 * x	;	1.0E-5
consumption	;	liter-per-kilometer	;	cubic-meter-per-meter	;	0.000001 * x	;	0.001
consumption-inverse	;	mile-per-gallon-imperial	;	meter-per-cubic-meter	;	160,934,400,000/454,609 * x	;	3.540062E8
consumption-inverse	;	mile-per-gallon	;	meter-per-cubic-meter	;	48,000,000,000/112,903 * x	;	4.251437E8
digital	;	bit	;	bit	;	1 * x	;	1,000.00
digital	;	byte	;	bit	;	8 * x	;	8000.0
digital	;	kilobit	;	bit	;	1,000 * x	;	1000000.0
digital	;	kilobyte	;	bit	;	8,000 * x	;	8000000.0
digital	;	megabit	;	bit	;	1,000,000 * x	;	1.0E9
digital	;	megabyte	;	bit	;	8,000,000 * x	;	8.0E9
digital	;	gigabit	;	bit	;	1,000,000,000 * x	;	1.0E12
digital	;	gigabyte	;	bit	;	8,000,000,000 * x	;	8.0E12
digital	;	terabit	;	bit	;	1,000,000,000,000 * x	;	1.0E15
digital	;	terabyte	;	bit	;	8,000,000,000,000 * x	;	8.0E15
digital	;	petabyte	;	bit	;	8,000,000,000,000,000 * x	;	8.0E18
duration	;	nanosecond	;	second	;	0.000000001 * x	;	1.0E-6
duration	;	microsecond	;	second	;	0.000001 * x	;	0.001
duration	;	millisecond	;	second	;	0.001 * x	;	1.0
duration	;	second	;	second	;	1 * x	;	1,000.00
duration	;	minute	;	second	;	60 * x	;	60000.0
duration	;	hour	;	second	;	3,600 * x	;	3600000.0
duration	;	day	;	second	;	86,400 * x	;	8.64E7
duration	;	day-person	;	second	;	86,400 * x	;	8.64E7
duration	;	week	;	second	;	604,800 * x	;	6.048E8
duration	;	week-person	;	second	;	604,800 * x	;	6.048E8
electric-current	;	milliampere	;	ampere	;	0.001 * x	;	1.0
electric-current	;	ampere	;	ampere	;	1 * x	;	1,000.00
electric-resistance	;	ohm	;	kilogram-square-meter-per-cubic-second-square-ampere	;	1 * x	;	1000.0
energy	;	electronvolt	;	kilogram-square-meter-per-square-second	;	0.0000000000000000001602177 * x	;	1.602177E-16
energy	;	dalton	;	kilogram-square-meter-per-square-second	;	0.00000000014924180856 * x	;	1.492418E-7
energy	;	joule	;	kilogram-square-meter-per-square-second	;	1 * x	;	1000.0
energy	;	newton-meter	;	kilogram-square-meter-per-square-second	;	1 * x	;	1000.0
energy	;	pound-force-foot	;	kilogram-square-meter-per-square-second	;	1.3558179483314004 * x	;	1355.818
energy	;	calorie	;	kilogram-square-meter-per-square-second	;	4.184 * x	;	4184.0
energy	;	kilojoule	;	kilogram-square-meter-per-square-second	;	1,000 * x	;	1000000.0
energy	;	british-thermal-unit	;	kilogram-square-meter-per-square-second	;	9,489.1523804/9 * x	;	1054350.0
energy	;	foodcalorie	;	kilogram-square-meter-per-square-second	;	4,184 * x	;	4184000.0
energy	;	kilocalorie	;	kilogram-square-meter-per-square-second	;	4,184 * x	;	4184000.0
energy	;	kilowatt-hour	;	kilogram-square-meter-second-per-cubic-second	;	3,600,000 * x	;	3.6E9
energy	;	therm-us	;	kilogram-square-meter-per-square-second	;	105,480,400 * x	;	1.054804E11
force	;	newton	;	kilogram-meter-per-square-second	;	1 * x	;	1000.0
force	;	pound-force	;	kilogram-meter-per-square-second	;	4.4482216152605 * x	;	4448.222
frequency	;	hertz	;	revolution-per-second	;	1 * x	;	1000.0
frequency	;	kilohertz	;	revolution-per-second	;	1,000 * x	;	1000000.0
frequency	;	megahertz	;	revolution-per-second	;	1,000,000 * x	;	1.0E9
frequency	;	gigahertz	;	revolution-per-second	;	1,000,000,000 * x	;	1.0E12
graphics	;	dot	;	pixel	;	1 * x	;	1000.0
graphics	;	pixel	;	pixel	;	1 * x	;	1,000.00
graphics	;	megapixel	;	pixel	;	1,000,000 * x	;	1.0E9
illuminance	;	lux	;	candela-per-square-meter	;	1 * x	;	1000.0
length	;	picometer	;	meter	;	0.000000000001 * x	;	1.0E-9
length	;	nanometer	;	meter	;	0.000000001 * x	;	1.0E-6
length	;	micrometer	;	meter	;	0.000001 * x	;	0.001
length	;	point	;	meter	;	0.003175/9 * x	;	0.3527778
length	;	millimeter	;	meter	;	0.001 * x	;	1.0
length	;	centimeter	;	meter	;	0.01 * x	;	10.0
length	;	inch	;	meter	;	0.0254 * x	;	25.4
length	;	decimeter	;	meter	;	0.1 * x	;	100.0
length	;	foot	;	meter	;	0.3048 * x	;	304.8
length	;	yard	;	meter	;	0.9144 * x	;	914.4
length	;	meter	;	meter	;	1 * x	;	1,000.00
length	;	fathom	;	meter	;	1.8288 * x	;	1828.8
length	;	furlong	;	meter	;	201.168 * x	;	201168.0
length	;	kilometer	;	meter	;	1,000 * x	;	1000000.0
length	;	mile	;	meter	;	1,609.344 * x	;	1609344.0
length	;	nautical-mile	;	meter	;	1,852 * x	;	1852000.0
length	;	mile-scandinavian	;	meter	;	10,000 * x	;	1.0E7
length	;	100-kilometer	;	meter	;	100,000 * x	;	1.0E8
length	;	earth-radius	;	meter	;	6,378,100 * x	;	6.3781E9
length	;	solar-radius	;	meter	;	695,700,000 * x	;	6.957E11
length	;	astronomical-unit	;	meter	;	149,597,900,000 * x	;	1.495979E14
length	;	light-year	;	meter	;	9,460,730,000,000,000 * x	;	9.46073E18
length	;	parsec	;	meter	;	30,856,780,000,000,000 * x	;	3.085678E19
luminous-flux	;	lumen	;	candela-square-meter-per-square-meter	;	1 * x	;	1000.0
luminous-intensity	;	candela	;	candela	;	1 * x	;	1,000.00
mass	;	microgram	;	kilogram	;	0.000000001 * x	;	1.0E-6
mass	;	milligram	;	kilogram	;	0.000001 * x	;	0.001
mass	;	grain	;	kilogram	;	0.00006479891 * x	;	0.06479891
mass	;	carat	;	kilogram	;	0.0002 * x	;	0.2
mass	;	gram	;	kilogram	;	0.001 * x	;	1.0
mass	;	ounce	;	kilogram	;	0.028349523125 * x	;	28.34952
mass	;	ounce-troy	;	kilogram	;	0.03110348 * x	;	31.10348
mass	;	pound	;	kilogram	;	0.45359237 * x	;	453.5924
mass	;	kilogram	;	kilogram	;	1 * x	;	1,000.00
mass	;	stone	;	kilogram	;	6.35029318 * x	;	6350.293
mass	;	ton	;	kilogram	;	907.18474 * x	;	907184.7
mass	;	metric-ton	;	kilogram	;	1,000 * x	;	1000000.0
mass	;	earth-mass	;	kilogram	;	5,972,200,000,000,000,000,000,000 * x	;	5.9722E27
mass	;	solar-mass	;	kilogram	;	1,988,470,000,000,000,000,000,000,000,000 * x	;	1.98847E33
portion	;	permillion	;	portion	;	0.000001 * x	;	0.001
portion	;	permyriad	;	portion	;	0.0001 * x	;	0.1
portion	;	permille	;	portion	;	0.001 * x	;	1.0
portion	;	percent	;	portion	;	0.01 * x	;	10.0
portion	;	karat	;	portion	;	0.125/3 * x	;	41.66667
portion	;	portion	;	portion	;	1 * x	;	1,000.00
power	;	milliwatt	;	kilogram-square-meter-per-cubic-second	;	0.001 * x	;	1.0
power	;	watt	;	kilogram-square-meter-per-cubic-second	;	1 * x	;	1000.0
power	;	horsepower	;	kilogram-square-meter-per-cubic-second	;	745.69987158227022 * x	;	745699.9
power	;	kilowatt	;	kilogram-square-meter-per-cubic-second	;	1,000 * x	;	1000000.0
power	;	megawatt	;	kilogram-square-meter-per-cubic-second	;	1,000,000 * x	;	1.0E9
power	;	gigawatt	;	kilogram-square-meter-per-cubic-second	;	1,000,000,000 * x	;	1.0E12
power	;	solar-luminosity	;	kilogram-square-meter-per-cubic-second	;	382,800,000,000,000,000,000,000,000 * x	;	3.828E29
pressure	;	pascal	;	kilogram-per-meter-square-second	;	1 * x	;	1000.0
pressure	;	hectopascal	;	kilogram-per-meter-square-second	;	100 * x	;	100000.0
pressure	;	millibar	;	kilogram-per-meter-square-second	;	100 * x	;	100000.0
pressure	;	millimeter-ofhg	;	kilogram-meter-per-square-meter-square-second	;	133.322387415 * x	;	133322.4
pressure	;	kilopascal	;	kilogram-per-meter-square-second	;	1,000 * x	;	1000000.0
pressure	;	inch-ofhg	;	kilogram-meter-per-square-meter-square-second	;	3,386.388640341 * x	;	3386389.0
pressure	;	pound-force-per-square-inch	;	kilogram-meter-per-square-meter-square-second	;	111,205,540.3815125/16,129 * x	;	6894757.0
pressure	;	bar	;	kilogram-per-meter-square-second	;	100,000 * x	;	1.0E8
pressure	;	atmosphere	;	kilogram-per-meter-square-second	;	101,325 * x	;	1.01325E8
pressure	;	megapascal	;	kilogram-per-meter-square-second	;	1,000,000 * x	;	1.0E9
pressure-per-length	;	ofhg	;	kilogram-per-square-meter-square-second	;	133,322.387415 * x	;	1.333224E8
resolution	;	dot-per-inch	;	pixel-per-meter	;	5,000/127 * x	;	39370.08
resolution	;	pixel-per-inch	;	pixel-per-meter	;	5,000/127 * x	;	39370.08
resolution	;	dot-per-centimeter	;	pixel-per-meter	;	100 * x	;	100000.0
resolution	;	pixel-per-centimeter	;	pixel-per-meter	;	100 * x	;	100000.0
speed	;	kilometer-per-hour	;	meter-per-second	;	2.5/9 * x	;	277.7778
speed	;	mile-per-hour	;	meter-per-second	;	0.44704 * x	;	447.04
speed	;	knot	;	meter-per-second	;	4.63/9 * x	;	514.4444
speed	;	meter-per-second	;	meter-per-second	;	1 * x	;	1,000.00
substance-amount	;	item	;	item	;	1 * x	;	1,000.00
substance-amount	;	mole	;	item	;	602,214,076,000,000,000,000,000 * x	;	6.022141E26
temperature	;	fahrenheit	;	kelvin	;	5/9 * x - 2,298.35/9	;	810.9278
temperature	;	kelvin	;	kelvin	;	1 * x	;	1,000.00
temperature	;	celsius	;	kelvin	;	1 * x - 273.15	;	1273.15
typewidth	;	em	;	em	;	1 * x	;	1,000.00
voltage	;	volt	;	kilogram-square-meter-per-cubic-second-ampere	;	1 * x	;	1000.0
volume	;	drop	;	cubic-meter	;	0.0000001540287998046875/3 * x	;	5.134293E-5
volume	;	pinch	;	cubic-meter	;	0.00000023104319970703125 * x	;	2.310432E-4
volume	;	cubic-centimeter	;	cubic-meter	;	0.000001 * x	;	0.001
volume	;	milliliter	;	cubic-meter	;	0.000001 * x	;	0.001
volume	;	dessert-spoon	;	cubic-meter	;	0.00000184834559765625 * x	;	0.001848346
volume	;	dessert-spoon-imperial	;	cubic-meter	;	0.0000022197705078125 * x	;	0.002219771
volume	;	dram	;	cubic-meter	;	0.0000036966911953125 * x	;	0.003696691
volume	;	teaspoon	;	cubic-meter	;	0.00000492892159375 * x	;	0.004928922
volume	;	centiliter	;	cubic-meter	;	0.00001 * x	;	0.01
volume	;	tablespoon	;	cubic-meter	;	0.00001478676478125 * x	;	0.01478676
volume	;	cubic-inch	;	cubic-meter	;	0.000016387064 * x	;	0.01638706
volume	;	fluid-ounce-imperial	;	cubic-meter	;	0.0000284130625 * x	;	0.02841306
volume	;	fluid-ounce	;	cubic-meter	;	0.0000295735295625 * x	;	0.02957353
volume	;	jigger	;	cubic-meter	;	0.00004436029434375 * x	;	0.04436029
volume	;	deciliter	;	cubic-meter	;	0.0001 * x	;	0.1
volume	;	cup	;	cubic-meter	;	0.0002365882365 * x	;	0.2365882
volume	;	cup-metric	;	cubic-meter	;	0.00025 * x	;	0.25
volume	;	pint	;	cubic-meter	;	0.000473176473 * x	;	0.4731765
volume	;	pint-metric	;	cubic-meter	;	0.0005 * x	;	0.5
volume	;	quart	;	cubic-meter	;	0.000946352946 * x	;	0.9463529
volume	;	liter	;	cubic-meter	;	0.001 * x	;	1.0
volume	;	quart-imperial	;	cubic-meter	;	0.0011365225 * x	;	1.136522
volume	;	gallon	;	cubic-meter	;	0.003785411784 * x	;	3.785412
volume	;	gallon-imperial	;	cubic-meter	;	0.00454609 * x	;	4.54609
volume	;	cubic-foot	;	cubic-meter	;	0.028316846592 * x	;	28.31685
volume	;	bushel	;	cubic-meter	;	0.03523907016688 * x	;	35.23907
volume	;	hectoliter	;	cubic-meter	;	0.1 * x	;	100.0
volume	;	barrel	;	cubic-meter	;	0.158987294928 * x	;	158.9873
volume	;	cubic-yard	;	cubic-meter	;	0.764554857984 * x	;	764.5549
volume	;	cubic-meter	;	cubic-meter	;	1 * x	;	1,000.00
volume	;	megaliter	;	cubic-meter	;	1,000 * x	;	1000000.0
volume	;	acre-foot	;	cubic-meter	;	1,233.48183754752 * x	;	1233482.0
volume	;	cubic-kilometer	;	cubic-meter	;	1,000,000,000 * x	;	1.0E12
volume	;	cubic-mile	;	cubic-meter	;	4,168,181,825.440579584 * x	;	4.168182E12
year-duration	;	month	;	year	;	0.25/3 * x	;	83.33333
year-duration	;	month-person	;	year	;	0.25/3 * x	;	83.33333
year-duration	;	year	;	year	;	1 * x	;	1,000.00
year-duration	;	year-person	;	year	;	1 * x	;	1000.0
year-duration	;	decade	;	year	;	10 * x	;	10000.0
year-duration	;	century	;	year	;	100 * x	;	100000.0